commit 35b4ddde00ae76b26f7e732ade852fd1f9752890 Author: Klaus Molzberger Date: Sun Mar 29 01:37:57 2026 +0100 feat: molzi3d.de v1.0.0 — Komplettes Redesign mit Next.js 16 - WordPress durch Next.js 16 + Tailwind CSS v4 + Framer Motion ersetzt - 44 Guides + 15 Seiten aus WordPress migriert (HTML -> Markdown) - Emerald Design-System mit Light/Dark Mode Toggle - Sidebar-First Navigation (Dokumentations-Stil) - Difficulty-Badges, Lesezeit, verwandte Guides - Statischer Export fuer Plesk-Hosting - WordPress-DB Backup gesichert (6.2 MB) Co-Authored-By: Claude Opus 4.6 (1M context) diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a0d58bc --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +node_modules/ +.next/ +out/ +.DS_Store +*.log +.env +.env.local +backup/uploads.tar.gz diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..2099bcc --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,33 @@ +# Changelog + +Alle wesentlichen Aenderungen an molzi3d.de werden hier dokumentiert. + +## [1.0.0] - 2026-03-29 + +### Neu +- Komplettes Redesign: WordPress durch Next.js 16 + Tailwind CSS v4 ersetzt +- Statischer Export fuer schnelles Hosting ohne Node-Server +- Design-System mit Emerald-Akzentfarbe +- Light/Dark Mode Toggle mit localStorage-Persistenz +- Sidebar-Navigation (Dokumentations-Stil) mit 6 Kategorien +- 44 Guides aus WordPress migriert (HTML -> Markdown) +- 15 statische Seiten migriert +- Difficulty-Badges (Einsteiger/Fortgeschritten/Experte) pro Guide +- Lesezeit-Anzeige pro Guide +- Verwandte Guides am Seitenende +- Responsive Design (Mobile, Tablet, Desktop) +- SEO: Meta-Tags, strukturierte Titel, Descriptions +- Framer Motion fuer Sidebar-Animationen und Mobile-Menu + +### Migriert +- WordPress-DB Backup gesichert (6.2 MB) +- 64 Upload-Dateien (Bilder, Assets) exportiert +- Content-Konvertierung via Skript (scripts/convert-content.mjs) + +### Kategorien +- Materialien (PLA, PETG, TPU, ASA/ABS, Nylon, Carbon, Resin) +- Fehlerbehebung (Stringing, Warping, Unterextrusion, etc.) +- Kalibrierung (Retraction, Flow-Rate, Pressure Advance, etc.) +- Slicer (OrcaSlicer, Cura, Bambu Studio, PrusaSlicer) +- Fortgeschritten (Klipper, Adaptive Layer, Fuzzy Skin, etc.) +- Grundlagen (Erstes Modell, Support, Infill, etc.) diff --git a/app/.claude/launch.json b/app/.claude/launch.json new file mode 100644 index 0000000..09bb229 --- /dev/null +++ b/app/.claude/launch.json @@ -0,0 +1,11 @@ +{ + "version": "0.0.1", + "configurations": [ + { + "name": "molzi3d-dev", + "runtimeExecutable": "npm", + "runtimeArgs": ["run", "dev"], + "port": 3000 + } + ] +} diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..5ef6a52 --- /dev/null +++ b/app/.gitignore @@ -0,0 +1,41 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.* +.yarn/* +!.yarn/patches +!.yarn/plugins +!.yarn/releases +!.yarn/versions + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# env files (can opt-in for committing if needed) +.env* + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/app/AGENTS.md b/app/AGENTS.md new file mode 100644 index 0000000..8bd0e39 --- /dev/null +++ b/app/AGENTS.md @@ -0,0 +1,5 @@ + +# This is NOT the Next.js you know + +This version has breaking changes — APIs, conventions, and file structure may all differ from your training data. Read the relevant guide in `node_modules/next/dist/docs/` before writing any code. Heed deprecation notices. + diff --git a/app/CLAUDE.md b/app/CLAUDE.md new file mode 100644 index 0000000..43c994c --- /dev/null +++ b/app/CLAUDE.md @@ -0,0 +1 @@ +@AGENTS.md diff --git a/app/README.md b/app/README.md new file mode 100644 index 0000000..e215bc4 --- /dev/null +++ b/app/README.md @@ -0,0 +1,36 @@ +This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app). + +## Getting Started + +First, run the development server: + +```bash +npm run dev +# or +yarn dev +# or +pnpm dev +# or +bun dev +``` + +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. + +You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. + +This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. + +## Learn More + +To learn more about Next.js, take a look at the following resources: + +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. + +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! + +## Deploy on Vercel + +The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. + +Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. diff --git a/app/eslint.config.mjs b/app/eslint.config.mjs new file mode 100644 index 0000000..05e726d --- /dev/null +++ b/app/eslint.config.mjs @@ -0,0 +1,18 @@ +import { defineConfig, globalIgnores } from "eslint/config"; +import nextVitals from "eslint-config-next/core-web-vitals"; +import nextTs from "eslint-config-next/typescript"; + +const eslintConfig = defineConfig([ + ...nextVitals, + ...nextTs, + // Override default ignores of eslint-config-next. + globalIgnores([ + // Default ignores of eslint-config-next: + ".next/**", + "out/**", + "build/**", + "next-env.d.ts", + ]), +]); + +export default eslintConfig; diff --git a/app/next.config.ts b/app/next.config.ts new file mode 100644 index 0000000..d58102b --- /dev/null +++ b/app/next.config.ts @@ -0,0 +1,11 @@ +import type { NextConfig } from "next"; + +const nextConfig: NextConfig = { + output: "export", + trailingSlash: true, + images: { + unoptimized: true, + }, +}; + +export default nextConfig; diff --git a/app/package-lock.json b/app/package-lock.json new file mode 100644 index 0000000..5278880 --- /dev/null +++ b/app/package-lock.json @@ -0,0 +1,8012 @@ +{ + "name": "app", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "app", + "version": "0.1.0", + "dependencies": { + "framer-motion": "^12.38.0", + "gray-matter": "^4.0.3", + "next": "16.2.1", + "node-html-markdown": "^2.0.0", + "react": "19.2.4", + "react-dom": "19.2.4", + "reading-time": "^1.5.0", + "remark": "^15.0.1", + "remark-html": "^16.0.1" + }, + "devDependencies": { + "@tailwindcss/postcss": "^4", + "@types/node": "^20", + "@types/react": "^19", + "@types/react-dom": "^19", + "eslint": "^9", + "eslint-config-next": "16.2.1", + "tailwindcss": "^4", + "typescript": "^5" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", + "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", + "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emnapi/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.9.1.tgz", + "integrity": "sha512-mukuNALVsoix/w1BJwFzwXBN/dHeejQtuVzcDsfOEsdpCumXb/E9j8w11h5S54tT1xhifGfbbSm/ICrObRb3KA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.2.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.1.tgz", + "integrity": "sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.0.tgz", + "integrity": "sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", + "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.2", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.2.tgz", + "integrity": "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.5" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.5.tgz", + "integrity": "sha512-4IlJx0X0qftVsN5E+/vGujTRIFtwuLbNsVUe7TO6zYPDR1O6nFwvwhIKEKSrl6dZchmYBITazxKoUYOjdtjlRg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.14.0", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.1", + "minimatch": "^3.1.5", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "9.39.4", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.4.tgz", + "integrity": "sha512-nE7DEIchvtiFTwBw4Lfbu59PG+kCofhjsKaCWzxTpt4lfRjRMqG6uMBzKXuEcyXhOHoUp9riAm7/aWYGhXZ9cw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@img/colour": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz", + "integrity": "sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz", + "integrity": "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-darwin-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz", + "integrity": "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz", + "integrity": "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz", + "integrity": "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz", + "integrity": "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==", + "cpu": [ + "arm" + ], + "libc": [ + "glibc" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz", + "integrity": "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-ppc64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz", + "integrity": "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==", + "cpu": [ + "ppc64" + ], + "libc": [ + "glibc" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-riscv64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz", + "integrity": "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==", + "cpu": [ + "riscv64" + ], + "libc": [ + "glibc" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz", + "integrity": "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==", + "cpu": [ + "s390x" + ], + "libc": [ + "glibc" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz", + "integrity": "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz", + "integrity": "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz", + "integrity": "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz", + "integrity": "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==", + "cpu": [ + "arm" + ], + "libc": [ + "glibc" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz", + "integrity": "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-ppc64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz", + "integrity": "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==", + "cpu": [ + "ppc64" + ], + "libc": [ + "glibc" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-ppc64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-riscv64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz", + "integrity": "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==", + "cpu": [ + "riscv64" + ], + "libc": [ + "glibc" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-riscv64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz", + "integrity": "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==", + "cpu": [ + "s390x" + ], + "libc": [ + "glibc" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz", + "integrity": "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz", + "integrity": "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz", + "integrity": "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz", + "integrity": "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==", + "cpu": [ + "wasm32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.7.0" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz", + "integrity": "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz", + "integrity": "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==", + "cpu": [ + "ia32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz", + "integrity": "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", + "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.10.0" + } + }, + "node_modules/@next/env": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/env/-/env-16.2.1.tgz", + "integrity": "sha512-n8P/HCkIWW+gVal2Z8XqXJ6aB3J0tuM29OcHpCsobWlChH/SITBs1DFBk/HajgrwDkqqBXPbuUuzgDvUekREPg==", + "license": "MIT" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-16.2.1.tgz", + "integrity": "sha512-r0epZGo24eT4g08jJlg2OEryBphXqO8aL18oajoTKLzHJ6jVr6P6FI58DLMug04MwD3j8Fj0YK0slyzneKVyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-glob": "3.3.1" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-16.2.1.tgz", + "integrity": "sha512-BwZ8w8YTaSEr2HIuXLMLxIdElNMPvY9fLqb20LX9A9OMGtJilhHLbCL3ggyd0TwjmMcTxi0XXt+ur1vWUoxj2Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-16.2.1.tgz", + "integrity": "sha512-/vrcE6iQSJq3uL3VGVHiXeaKbn8Es10DGTGRJnRZlkNQQk3kaNtAJg8Y6xuAlrx/6INKVjkfi5rY0iEXorZ6uA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-16.2.1.tgz", + "integrity": "sha512-uLn+0BK+C31LTVbQ/QU+UaVrV0rRSJQ8RfniQAHPghDdgE+SlroYqcmFnO5iNjNfVWCyKZHYrs3Nl0mUzWxbBw==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-16.2.1.tgz", + "integrity": "sha512-ssKq6iMRnHdnycGp9hCuGnXJZ0YPr4/wNwrfE5DbmvEcgl9+yv97/Kq3TPVDfYome1SW5geciLB9aiEqKXQjlQ==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-16.2.1.tgz", + "integrity": "sha512-HQm7SrHRELJ30T1TSmT706IWovFFSRGxfgUkyWJZF/RKBMdbdRWJuFrcpDdE5vy9UXjFOx6L3mRdqH04Mmx0hg==", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-16.2.1.tgz", + "integrity": "sha512-aV2iUaC/5HGEpbBkE+4B8aHIudoOy5DYekAKOMSHoIYQ66y/wIVeaRx8MS2ZMdxe/HIXlMho4ubdZs/J8441Tg==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-16.2.1.tgz", + "integrity": "sha512-IXdNgiDHaSk0ZUJ+xp0OQTdTgnpx1RCfRTalhn3cjOP+IddTMINwA7DXZrwTmGDO8SUr5q2hdP/du4DcrB1GxA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-16.2.1.tgz", + "integrity": "sha512-qvU+3a39Hay+ieIztkGSbF7+mccbbg1Tk25hc4JDylf8IHjYmY/Zm64Qq1602yPyQqvie+vf5T/uPwNxDNIoeg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.4.0" + } + }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@swc/helpers": { + "version": "0.5.15", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", + "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@tailwindcss/node": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.2.2.tgz", + "integrity": "sha512-pXS+wJ2gZpVXqFaUEjojq7jzMpTGf8rU6ipJz5ovJV6PUGmlJ+jvIwGrzdHdQ80Sg+wmQxUFuoW1UAAwHNEdFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "enhanced-resolve": "^5.19.0", + "jiti": "^2.6.1", + "lightningcss": "1.32.0", + "magic-string": "^0.30.21", + "source-map-js": "^1.2.1", + "tailwindcss": "4.2.2" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.2.2.tgz", + "integrity": "sha512-qEUA07+E5kehxYp9BVMpq9E8vnJuBHfJEC0vPC5e7iL/hw7HR61aDKoVoKzrG+QKp56vhNZe4qwkRmMC0zDLvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 20" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.2.2", + "@tailwindcss/oxide-darwin-arm64": "4.2.2", + "@tailwindcss/oxide-darwin-x64": "4.2.2", + "@tailwindcss/oxide-freebsd-x64": "4.2.2", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.2.2", + "@tailwindcss/oxide-linux-arm64-gnu": "4.2.2", + "@tailwindcss/oxide-linux-arm64-musl": "4.2.2", + "@tailwindcss/oxide-linux-x64-gnu": "4.2.2", + "@tailwindcss/oxide-linux-x64-musl": "4.2.2", + "@tailwindcss/oxide-wasm32-wasi": "4.2.2", + "@tailwindcss/oxide-win32-arm64-msvc": "4.2.2", + "@tailwindcss/oxide-win32-x64-msvc": "4.2.2" + } + }, + "node_modules/@tailwindcss/oxide-android-arm64": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.2.2.tgz", + "integrity": "sha512-dXGR1n+P3B6748jZO/SvHZq7qBOqqzQ+yFrXpoOWWALWndF9MoSKAT3Q0fYgAzYzGhxNYOoysRvYlpixRBBoDg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-darwin-arm64": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.2.2.tgz", + "integrity": "sha512-iq9Qjr6knfMpZHj55/37ouZeykwbDqF21gPFtfnhCCKGDcPI/21FKC9XdMO/XyBM7qKORx6UIhGgg6jLl7BZlg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-darwin-x64": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.2.2.tgz", + "integrity": "sha512-BlR+2c3nzc8f2G639LpL89YY4bdcIdUmiOOkv2GQv4/4M0vJlpXEa0JXNHhCHU7VWOKWT/CjqHdTP8aUuDJkuw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-freebsd-x64": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.2.2.tgz", + "integrity": "sha512-YUqUgrGMSu2CDO82hzlQ5qSb5xmx3RUrke/QgnoEx7KvmRJHQuZHZmZTLSuuHwFf0DJPybFMXMYf+WJdxHy/nQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.2.2.tgz", + "integrity": "sha512-FPdhvsW6g06T9BWT0qTwiVZYE2WIFo2dY5aCSpjG/S/u1tby+wXoslXS0kl3/KXnULlLr1E3NPRRw0g7t2kgaQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.2.2.tgz", + "integrity": "sha512-4og1V+ftEPXGttOO7eCmW7VICmzzJWgMx+QXAJRAhjrSjumCwWqMfkDrNu1LXEQzNAwz28NCUpucgQPrR4S2yw==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.2.2.tgz", + "integrity": "sha512-oCfG/mS+/+XRlwNjnsNLVwnMWYH7tn/kYPsNPh+JSOMlnt93mYNCKHYzylRhI51X+TbR+ufNhhKKzm6QkqX8ag==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.2.2.tgz", + "integrity": "sha512-rTAGAkDgqbXHNp/xW0iugLVmX62wOp2PoE39BTCGKjv3Iocf6AFbRP/wZT/kuCxC9QBh9Pu8XPkv/zCZB2mcMg==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.2.2.tgz", + "integrity": "sha512-XW3t3qwbIwiSyRCggeO2zxe3KWaEbM0/kW9e8+0XpBgyKU4ATYzcVSMKteZJ1iukJ3HgHBjbg9P5YPRCVUxlnQ==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.2.2.tgz", + "integrity": "sha512-eKSztKsmEsn1O5lJ4ZAfyn41NfG7vzCg496YiGtMDV86jz1q/irhms5O0VrY6ZwTUkFy/EKG3RfWgxSI3VbZ8Q==", + "bundleDependencies": [ + "@napi-rs/wasm-runtime", + "@emnapi/core", + "@emnapi/runtime", + "@tybys/wasm-util", + "@emnapi/wasi-threads", + "tslib" + ], + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.8.1", + "@emnapi/runtime": "^1.8.1", + "@emnapi/wasi-threads": "^1.1.0", + "@napi-rs/wasm-runtime": "^1.1.1", + "@tybys/wasm-util": "^0.10.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.2.2.tgz", + "integrity": "sha512-qPmaQM4iKu5mxpsrWZMOZRgZv1tOZpUm+zdhhQP0VhJfyGGO3aUKdbh3gDZc/dPLQwW4eSqWGrrcWNBZWUWaXQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-win32-x64-msvc": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.2.2.tgz", + "integrity": "sha512-1T/37VvI7WyH66b+vqHj/cLwnCxt7Qt3WFu5Q8hk65aOvlwAhs7rAp1VkulBJw/N4tMirXjVnylTR72uI0HGcA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/postcss": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.2.2.tgz", + "integrity": "sha512-n4goKQbW8RVXIbNKRB/45LzyUqN451deQK0nzIeauVEqjlI49slUlgKYJM2QyUzap/PcpnS7kzSUmPb1sCRvYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "@tailwindcss/node": "4.2.2", + "@tailwindcss/oxide": "4.2.2", + "postcss": "^8.5.6", + "tailwindcss": "4.2.2" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.13.tgz", + "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.19.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.37.tgz", + "integrity": "sha512-8kzdPJ3FsNsVIurqBs7oodNnCEVbni9yUEkaHbgptDACOPW04jimGagZ51E6+lXUwJjgnBw+hyko/lkFWCldqw==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/react": { + "version": "19.2.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", + "integrity": "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.2.0" + } + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.57.2.tgz", + "integrity": "sha512-NZZgp0Fm2IkD+La5PR81sd+g+8oS6JwJje+aRWsDocxHkjyRw0J5L5ZTlN3LI1LlOcGL7ph3eaIUmTXMIjLk0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.57.2", + "@typescript-eslint/type-utils": "8.57.2", + "@typescript-eslint/utils": "8.57.2", + "@typescript-eslint/visitor-keys": "8.57.2", + "ignore": "^7.0.5", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.57.2", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.57.2.tgz", + "integrity": "sha512-30ScMRHIAD33JJQkgfGW1t8CURZtjc2JpTrq5n2HFhOefbAhb7ucc7xJwdWcrEtqUIYJ73Nybpsggii6GtAHjA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.57.2", + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/typescript-estree": "8.57.2", + "@typescript-eslint/visitor-keys": "8.57.2", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.57.2.tgz", + "integrity": "sha512-FuH0wipFywXRTHf+bTTjNyuNQQsQC3qh/dYzaM4I4W0jrCqjCVuUh99+xd9KamUfmCGPvbO8NDngo/vsnNVqgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.57.2", + "@typescript-eslint/types": "^8.57.2", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.57.2.tgz", + "integrity": "sha512-snZKH+W4WbWkrBqj4gUNRIGb/jipDW3qMqVJ4C9rzdFc+wLwruxk+2a5D+uoFcKPAqyqEnSb4l2ULuZf95eSkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/visitor-keys": "8.57.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.57.2.tgz", + "integrity": "sha512-3Lm5DSM+DCowsUOJC+YqHHnKEfFh5CoGkj5Z31NQSNF4l5wdOwqGn99wmwN/LImhfY3KJnmordBq/4+VDe2eKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.57.2.tgz", + "integrity": "sha512-Co6ZCShm6kIbAM/s+oYVpKFfW7LBc6FXoPXjTRQ449PPNBY8U0KZXuevz5IFuuUj2H9ss40atTaf9dlGLzbWZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/typescript-estree": "8.57.2", + "@typescript-eslint/utils": "8.57.2", + "debug": "^4.4.3", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.57.2.tgz", + "integrity": "sha512-/iZM6FnM4tnx9csuTxspMW4BOSegshwX5oBDznJ7S4WggL7Vczz5d2W11ecc4vRrQMQHXRSxzrCsyG5EsPPTbA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.57.2.tgz", + "integrity": "sha512-2MKM+I6g8tJxfSmFKOnHv2t8Sk3T6rF20A1Puk0svLK+uVapDZB/4pfAeB7nE83uAZrU6OxW+HmOd5wHVdXwXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.57.2", + "@typescript-eslint/tsconfig-utils": "8.57.2", + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/visitor-keys": "8.57.2", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.5.tgz", + "integrity": "sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "10.2.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.4.tgz", + "integrity": "sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "brace-expansion": "^5.0.2" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.57.2.tgz", + "integrity": "sha512-krRIbvPK1ju1WBKIefiX+bngPs+odIQUtR7kymzPfo1POVw3jlF+nLkmexdSSd4UCbDcQn+wMBATOOmpBbqgKg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.57.2", + "@typescript-eslint/types": "8.57.2", + "@typescript-eslint/typescript-estree": "8.57.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.57.2.tgz", + "integrity": "sha512-zhahknjobV2FiD6Ee9iLbS7OV9zi10rG26odsQdfBO/hjSzUQbkIYgda+iNKK1zNiW2ey+Lf8MU5btN17V3dUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.57.2", + "eslint-visitor-keys": "^5.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "license": "ISC" + }, + "node_modules/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", + "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", + "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", + "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", + "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-freebsd-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", + "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", + "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", + "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", + "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", + "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", + "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", + "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", + "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==", + "cpu": [ + "riscv64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", + "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==", + "cpu": [ + "s390x" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", + "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", + "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", + "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", + "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", + "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-x64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", + "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/acorn": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", + "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz", + "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.11.1.tgz", + "integrity": "sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==", + "dev": true, + "license": "MPL-2.0", + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/baseline-browser-mapping": { + "version": "2.10.12", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.12.tgz", + "integrity": "sha512-qyq26DxfY4awP2gIRXhhLWfwzwI+N5Nxk6iQi8EFizIaWIjqicQTE4sLnZZVdeKPRcVNoJOkkpfzoIYuvCKaIQ==", + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "license": "ISC" + }, + "node_modules/brace-expansion": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", + "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001781", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001781.tgz", + "integrity": "sha512-RdwNCyMsNBftLjW6w01z8bKEvT6e/5tpPVEgtn22TiLGlstHOVecsX2KHFkD5e/vRnIE4EGzpuIODb3mtswtkw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-select": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.2.2.tgz", + "integrity": "sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz", + "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-named-character-reference": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz", + "integrity": "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==", + "license": "MIT", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "devOptional": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "license": "MIT", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.328", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.328.tgz", + "integrity": "sha512-QNQ5l45DzYytThO21403XN3FvK0hOkWDG8viNf6jqS42msJ8I4tGDSpBCgvDRRPnkffafiwAym2X2eHeGD2V0w==", + "dev": true, + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/enhanced-resolve": { + "version": "5.20.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.20.1.tgz", + "integrity": "sha512-Qohcme7V1inbAfvjItgw0EaxVX5q2rdVEZHRBrEQdRZTssLDGsL8Lwrznl8oQ/6kuTJONLaDcGjkNP247XEhcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.3.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/es-abstract": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.1.tgz", + "integrity": "sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.3.1.tgz", + "integrity": "sha512-zWwRvqWiuBPr0muUG/78cW3aHROFCNIQ3zpmYDpwdbnt2m+xlNyRWpHBpa2lJjSBit7BQ+RXA1iwbSmu5yJ/EQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.1", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.1.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.3.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.5", + "math-intrinsics": "^1.1.0", + "safe-array-concat": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.39.4", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.4.tgz", + "integrity": "sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.2", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.5", + "@eslint/js": "9.39.4", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.14.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.5", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-config-next": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-16.2.1.tgz", + "integrity": "sha512-qhabwjQZ1Mk53XzXvmogf8KQ0tG0CQXF0CZ56+2/lVhmObgmaqj7x5A1DSrWdZd3kwI7GTPGUjFne+krRxYmFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@next/eslint-plugin-next": "16.2.1", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.32.0", + "eslint-plugin-jsx-a11y": "^6.10.0", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^7.0.0", + "globals": "16.4.0", + "typescript-eslint": "^8.46.0" + }, + "peerDependencies": { + "eslint": ">=9.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-config-next/node_modules/globals": { + "version": "16.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz", + "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz", + "integrity": "sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.4.0", + "get-tsconfig": "^4.10.0", + "is-bun-module": "^2.0.0", + "stable-hash": "^0.0.5", + "tinyglobby": "^0.2.13", + "unrs-resolver": "^1.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-import-resolver-typescript" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.9", + "array.prototype.findlastindex": "^1.2.6", + "array.prototype.flat": "^1.3.3", + "array.prototype.flatmap": "^1.3.3", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.1", + "hasown": "^2.0.2", + "is-core-module": "^2.16.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.1", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.9", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.9", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-7.0.1.tgz", + "integrity": "sha512-O0d0m04evaNzEPoSW+59Mezf8Qt0InfgGIBJnpC0h3NH/WjUAR7BIKUfysC6todmtiZ/A0oUVS8Gce0WhBrHsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.24.4", + "@babel/parser": "^7.24.4", + "hermes-parser": "^0.25.1", + "zod": "^3.25.0 || ^4.0.0", + "zod-validation-error": "^3.5.0 || ^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.6", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.6.tgz", + "integrity": "sha512-3JmVl5hMGtJ3kMmB3zi3DL25KfkCEyy3Tw7Gmw7z5w8M9WlwoPFnIvwChzu1+cF3iaK3sp18hhPz8ANeimdJfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "is-core-module": "^2.16.1", + "node-exports-info": "^1.6.0", + "object-keys": "^1.1.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", + "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz", + "integrity": "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==", + "dev": true, + "license": "ISC" + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/framer-motion": { + "version": "12.38.0", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.38.0.tgz", + "integrity": "sha512-rFYkY/pigbcswl1XQSb7q424kSTQ8q6eAC+YUsSKooHQYuLdzdHjrt6uxUC+PRAO++q5IS7+TamgIw1AphxR+g==", + "license": "MIT", + "dependencies": { + "motion-dom": "^12.38.0", + "motion-utils": "^12.36.0", + "tslib": "^2.4.0" + }, + "peerDependencies": { + "@emotion/is-prop-valid": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/is-prop-valid": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generator-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", + "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.13.7", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.7.tgz", + "integrity": "sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "license": "MIT", + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/gray-matter/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/gray-matter/node_modules/js-yaml": { + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", + "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hast-util-sanitize": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-5.0.2.tgz", + "integrity": "sha512-3yTWghByc50aGS7JlGhk61SPenfE/p1oaFeNwkOOyrscaOkMGrcW9+Cy/QAIOBpZxP1yqDIzFMR0+Np0i0+usg==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "unist-util-position": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-html": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz", + "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/hermes-estree": { + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz", + "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==", + "dev": true, + "license": "MIT" + }, + "node_modules/hermes-parser": { + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz", + "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "hermes-estree": "0.25.1" + } + }, + "node_modules/html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bun-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", + "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.7.1" + } + }, + "node_modules/is-bun-module/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", + "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.4", + "generator-function": "^2.0.0", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/iterator.prototype": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/jiti": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", + "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", + "dev": true, + "license": "MIT", + "dependencies": { + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lightningcss": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", + "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.32.0", + "lightningcss-darwin-arm64": "1.32.0", + "lightningcss-darwin-x64": "1.32.0", + "lightningcss-freebsd-x64": "1.32.0", + "lightningcss-linux-arm-gnueabihf": "1.32.0", + "lightningcss-linux-arm64-gnu": "1.32.0", + "lightningcss-linux-arm64-musl": "1.32.0", + "lightningcss-linux-x64-gnu": "1.32.0", + "lightningcss-linux-x64-musl": "1.32.0", + "lightningcss-win32-arm64-msvc": "1.32.0", + "lightningcss-win32-x64-msvc": "1.32.0" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", + "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", + "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", + "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", + "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", + "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", + "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", + "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", + "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", + "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", + "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", + "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz", + "integrity": "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", + "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz", + "integrity": "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromark": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", + "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", + "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", + "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", + "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-space": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", + "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", + "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", + "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-character": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", + "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", + "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", + "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", + "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", + "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", + "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", + "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", + "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", + "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", + "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-subtokenize": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", + "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", + "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", + "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/motion-dom": { + "version": "12.38.0", + "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.38.0.tgz", + "integrity": "sha512-pdkHLD8QYRp8VfiNLb8xIBJis1byQ9gPT3Jnh2jqfFtAsWUA3dEepDlsWe/xMpO8McV+VdpKVcp+E+TGJEtOoA==", + "license": "MIT", + "dependencies": { + "motion-utils": "^12.36.0" + } + }, + "node_modules/motion-utils": { + "version": "12.36.0", + "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.36.0.tgz", + "integrity": "sha512-eHWisygbiwVvf6PZ1vhaHCLamvkSbPIeAYxWUuL3a2PD/TROgE7FvfHWTIH4vMl798QLfMw15nRqIaRDXTlYRg==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/napi-postinstall": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", + "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", + "dev": true, + "license": "MIT", + "bin": { + "napi-postinstall": "lib/cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/next": { + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/next/-/next-16.2.1.tgz", + "integrity": "sha512-VaChzNL7o9rbfdt60HUj8tev4m6d7iC1igAy157526+cJlXOQu5LzsBXNT+xaJnTP/k+utSX5vMv7m0G+zKH+Q==", + "license": "MIT", + "dependencies": { + "@next/env": "16.2.1", + "@swc/helpers": "0.5.15", + "baseline-browser-mapping": "^2.9.19", + "caniuse-lite": "^1.0.30001579", + "postcss": "8.4.31", + "styled-jsx": "5.1.6" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=20.9.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "16.2.1", + "@next/swc-darwin-x64": "16.2.1", + "@next/swc-linux-arm64-gnu": "16.2.1", + "@next/swc-linux-arm64-musl": "16.2.1", + "@next/swc-linux-x64-gnu": "16.2.1", + "@next/swc-linux-x64-musl": "16.2.1", + "@next/swc-win32-arm64-msvc": "16.2.1", + "@next/swc-win32-x64-msvc": "16.2.1", + "sharp": "^0.34.5" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.51.1", + "babel-plugin-react-compiler": "*", + "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", + "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "@playwright/test": { + "optional": true + }, + "babel-plugin-react-compiler": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next/node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/node-exports-info": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/node-exports-info/-/node-exports-info-1.6.0.tgz", + "integrity": "sha512-pyFS63ptit/P5WqUkt+UUfe+4oevH+bFeIiPPdfb0pFeYEu/1ELnJu5l+5EcTKYL5M7zaAa7S8ddywgXypqKCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "array.prototype.flatmap": "^1.3.3", + "es-errors": "^1.3.0", + "object.entries": "^1.1.9", + "semver": "^6.3.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/node-html-markdown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-html-markdown/-/node-html-markdown-2.0.0.tgz", + "integrity": "sha512-DqUC3GGP7pwSYxS93SwHoP+qCw78xcMP6C6H2DuC8rPD2AweJRjBzQb5SdXpKtDlqAQ7hVotJcfhgU7hU5Gthw==", + "license": "MIT", + "dependencies": { + "node-html-parser": "^6.1.13" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/node-html-parser": { + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/node-html-parser/-/node-html-parser-6.1.13.tgz", + "integrity": "sha512-qIsTMOY4C/dAa5Q5vsobRpOOvPfC4pB61UVW2uSwZNUp0QU/jCekTal1vMmbO0DgdHeLUJpv/ARmDqErVxA3Sg==", + "license": "MIT", + "dependencies": { + "css-select": "^5.1.0", + "he": "1.2.0" + } + }, + "node_modules/node-releases": { + "version": "2.0.36", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.36.tgz", + "integrity": "sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==", + "dev": true, + "license": "MIT" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.5.8", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.8.tgz", + "integrity": "sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/property-information": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", + "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", + "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", + "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.4" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/reading-time": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==", + "license": "MIT" + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/remark": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/remark/-/remark-15.0.1.tgz", + "integrity": "sha512-Eht5w30ruCXgFmxVUSlNWQ9iiimq07URKeFS3hNc8cUWy1llX4KDWfyEDZRycMc+znsN9Ux5/tJ/BFdgdOwA3A==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "remark-parse": "^11.0.0", + "remark-stringify": "^11.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-html": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/remark-html/-/remark-html-16.0.1.tgz", + "integrity": "sha512-B9JqA5i0qZe0Nsf49q3OXyGvyXuZFDzAP2iOFLEumymuYJITVpiH1IgsTEwTpdptDmZlMDMWeDmSawdaJIGCXQ==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "hast-util-sanitize": "^5.0.0", + "hast-util-to-html": "^9.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", + "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", + "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-to-markdown": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "license": "MIT" + }, + "node_modules/section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/sharp": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz", + "integrity": "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==", + "hasInstallScript": true, + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@img/colour": "^1.0.0", + "detect-libc": "^2.1.2", + "semver": "^7.7.3" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-darwin-arm64": "0.34.5", + "@img/sharp-darwin-x64": "0.34.5", + "@img/sharp-libvips-darwin-arm64": "1.2.4", + "@img/sharp-libvips-darwin-x64": "1.2.4", + "@img/sharp-libvips-linux-arm": "1.2.4", + "@img/sharp-libvips-linux-arm64": "1.2.4", + "@img/sharp-libvips-linux-ppc64": "1.2.4", + "@img/sharp-libvips-linux-riscv64": "1.2.4", + "@img/sharp-libvips-linux-s390x": "1.2.4", + "@img/sharp-libvips-linux-x64": "1.2.4", + "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", + "@img/sharp-libvips-linuxmusl-x64": "1.2.4", + "@img/sharp-linux-arm": "0.34.5", + "@img/sharp-linux-arm64": "0.34.5", + "@img/sharp-linux-ppc64": "0.34.5", + "@img/sharp-linux-riscv64": "0.34.5", + "@img/sharp-linux-s390x": "0.34.5", + "@img/sharp-linux-x64": "0.34.5", + "@img/sharp-linuxmusl-arm64": "0.34.5", + "@img/sharp-linuxmusl-x64": "0.34.5", + "@img/sharp-wasm32": "0.34.5", + "@img/sharp-win32-arm64": "0.34.5", + "@img/sharp-win32-ia32": "0.34.5", + "@img/sharp-win32-x64": "0.34.5" + } + }, + "node_modules/sharp/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "license": "ISC", + "optional": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "license": "BSD-3-Clause" + }, + "node_modules/stable-hash": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", + "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", + "dev": true, + "license": "MIT" + }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.includes": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "license": "MIT", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz", + "integrity": "sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==", + "license": "MIT", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tailwindcss": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.2.2.tgz", + "integrity": "sha512-KWBIxs1Xb6NoLdMVqhbhgwZf2PGBpPEiwOqgI4pFIYbNTfBXiKYyWoTsXgBQ9WFg/OlhnvHaY+AEpW7wSmFo2Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/tapable": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.2.tgz", + "integrity": "sha512-1MOpMXuhGzGL5TTCZFItxCc0AARf1EZFQkGqMm7ERKj8+Hgr5oLvJOVFcC+lRmR8hCe2S3jC4T5D7Vg/d7/fhA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", + "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-api-utils": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-eslint": { + "version": "8.57.2", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.57.2.tgz", + "integrity": "sha512-VEPQ0iPgWO/sBaZOU1xo4nuNdODVOajPnTIbog2GKYr31nIlZ0fWPoCQgGfF3ETyBl1vn63F/p50Um9Z4J8O8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/eslint-plugin": "8.57.2", + "@typescript-eslint/parser": "8.57.2", + "@typescript-eslint/typescript-estree": "8.57.2", + "@typescript-eslint/utils": "8.57.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/unified": { + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.1.tgz", + "integrity": "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.1.0.tgz", + "integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz", + "integrity": "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unrs-resolver": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", + "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "napi-postinstall": "^0.3.0" + }, + "funding": { + "url": "https://opencollective.com/unrs-resolver" + }, + "optionalDependencies": { + "@unrs/resolver-binding-android-arm-eabi": "1.11.1", + "@unrs/resolver-binding-android-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-x64": "1.11.1", + "@unrs/resolver-binding-freebsd-x64": "1.11.1", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-arm64-musl": "1.11.1", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-musl": "1.11.1", + "@unrs/resolver-binding-linux-s390x-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-musl": "1.11.1", + "@unrs/resolver-binding-wasm32-wasi": "1.11.1", + "@unrs/resolver-binding-win32-arm64-msvc": "1.11.1", + "@unrs/resolver-binding-win32-ia32-msvc": "1.11.1", + "@unrs/resolver-binding-win32-x64-msvc": "1.11.1" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.3.tgz", + "integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.20", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.20.tgz", + "integrity": "sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.3.6.tgz", + "integrity": "sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zod-validation-error": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz", + "integrity": "sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "zod": "^3.25.0 || ^4.0.0" + } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/app/package.json b/app/package.json new file mode 100644 index 0000000..29291db --- /dev/null +++ b/app/package.json @@ -0,0 +1,32 @@ +{ + "name": "app", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start", + "lint": "eslint" + }, + "dependencies": { + "framer-motion": "^12.38.0", + "gray-matter": "^4.0.3", + "next": "16.2.1", + "node-html-markdown": "^2.0.0", + "react": "19.2.4", + "react-dom": "19.2.4", + "reading-time": "^1.5.0", + "remark": "^15.0.1", + "remark-html": "^16.0.1" + }, + "devDependencies": { + "@tailwindcss/postcss": "^4", + "@types/node": "^20", + "@types/react": "^19", + "@types/react-dom": "^19", + "eslint": "^9", + "eslint-config-next": "16.2.1", + "tailwindcss": "^4", + "typescript": "^5" + } +} diff --git a/app/postcss.config.mjs b/app/postcss.config.mjs new file mode 100644 index 0000000..61e3684 --- /dev/null +++ b/app/postcss.config.mjs @@ -0,0 +1,7 @@ +const config = { + plugins: { + "@tailwindcss/postcss": {}, + }, +}; + +export default config; diff --git a/app/public/file.svg b/app/public/file.svg new file mode 100644 index 0000000..004145c --- /dev/null +++ b/app/public/file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/public/globe.svg b/app/public/globe.svg new file mode 100644 index 0000000..567f17b --- /dev/null +++ b/app/public/globe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/public/next.svg b/app/public/next.svg new file mode 100644 index 0000000..5174b28 --- /dev/null +++ b/app/public/next.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/public/vercel.svg b/app/public/vercel.svg new file mode 100644 index 0000000..7705396 --- /dev/null +++ b/app/public/vercel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/public/window.svg b/app/public/window.svg new file mode 100644 index 0000000..b2b2a44 --- /dev/null +++ b/app/public/window.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/src/app/favicon.ico b/app/src/app/favicon.ico new file mode 100644 index 0000000..718d6fe Binary files /dev/null and b/app/src/app/favicon.ico differ diff --git a/app/src/app/globals.css b/app/src/app/globals.css new file mode 100644 index 0000000..b769402 --- /dev/null +++ b/app/src/app/globals.css @@ -0,0 +1,158 @@ +@import "tailwindcss"; + +/* ============================================ + molzi3d.de Design System — Emerald Tech + ============================================ */ + +@theme inline { + /* Emerald Accent */ + --color-emerald-50: #ecfdf5; + --color-emerald-100: #d1fae5; + --color-emerald-200: #a7f3d0; + --color-emerald-300: #6ee7b7; + --color-emerald-400: #34d399; + --color-emerald-500: #10b981; + --color-emerald-600: #059669; + --color-emerald-700: #047857; + --color-emerald-800: #065f46; + --color-emerald-900: #064e3b; + + /* Neutral */ + --color-slate-50: #f8fafc; + --color-slate-100: #f1f5f9; + --color-slate-200: #e2e8f0; + --color-slate-300: #cbd5e1; + --color-slate-400: #94a3b8; + --color-slate-500: #64748b; + --color-slate-600: #475569; + --color-slate-700: #334155; + --color-slate-800: #1e293b; + --color-slate-900: #0f172a; + --color-slate-950: #020617; + + /* Semantic */ + --color-background: var(--bg); + --color-foreground: var(--fg); + --color-muted: var(--muted); + --color-muted-foreground: var(--muted-fg); + --color-border: var(--border-color); + --color-accent: var(--accent); + --color-accent-foreground: #ffffff; + --color-surface: var(--surface); + --color-surface-hover: var(--surface-hover); + --color-sidebar-bg: var(--sidebar); + --color-card: var(--card-bg); + + /* Fonts */ + --font-sans: var(--font-geist-sans); + --font-mono: var(--font-geist-mono); +} + +/* Light Mode (Default) */ +:root { + --bg: #ffffff; + --fg: #0f172a; + --muted: #f1f5f9; + --muted-fg: #64748b; + --border-color: #e2e8f0; + --accent: #059669; + --surface: #f8fafc; + --surface-hover: #f1f5f9; + --sidebar: #f8fafc; + --card-bg: #ffffff; + color-scheme: light; +} + +/* Dark Mode */ +.dark { + --bg: #0f172a; + --fg: #f1f5f9; + --muted: #1e293b; + --muted-fg: #94a3b8; + --border-color: #334155; + --accent: #10b981; + --surface: #1e293b; + --surface-hover: #334155; + --sidebar: #0f172a; + --card-bg: #1e293b; + color-scheme: dark; +} + +body { + background: var(--bg); + color: var(--fg); + font-family: var(--font-sans, system-ui, sans-serif); +} + +/* Scrollbar */ +::-webkit-scrollbar { + width: 6px; +} +::-webkit-scrollbar-track { + background: var(--muted); +} +::-webkit-scrollbar-thumb { + background: var(--muted-fg); + border-radius: 3px; +} + +/* Prose (Guide-Content) */ +.prose { + --tw-prose-headings: var(--fg); + --tw-prose-body: var(--fg); + --tw-prose-links: var(--accent); + max-width: 72ch; + line-height: 1.75; +} +.prose h2 { + margin-top: 2em; + margin-bottom: 0.75em; + font-weight: 700; + font-size: 1.5rem; + border-bottom: 1px solid var(--border-color); + padding-bottom: 0.5rem; +} +.prose h3 { + margin-top: 1.5em; + margin-bottom: 0.5em; + font-weight: 600; + font-size: 1.25rem; +} +.prose p { + margin-bottom: 1.25em; +} +.prose a { + color: var(--accent); + text-decoration: underline; + text-underline-offset: 2px; +} +.prose code { + background: var(--muted); + padding: 0.125rem 0.375rem; + border-radius: 0.25rem; + font-size: 0.875em; +} +.prose pre { + background: var(--surface); + border: 1px solid var(--border-color); + border-radius: 0.5rem; + padding: 1rem; + overflow-x: auto; +} +.prose img { + border-radius: 0.5rem; + margin: 1.5rem 0; +} +.prose ul, .prose ol { + padding-left: 1.5em; + margin-bottom: 1.25em; +} +.prose li { + margin-bottom: 0.375em; +} +.prose blockquote { + border-left: 3px solid var(--accent); + padding-left: 1rem; + color: var(--muted-fg); + font-style: italic; +} diff --git a/app/src/app/guides/[slug]/page.tsx b/app/src/app/guides/[slug]/page.tsx new file mode 100644 index 0000000..ffd32bb --- /dev/null +++ b/app/src/app/guides/[slug]/page.tsx @@ -0,0 +1,85 @@ +import { notFound } from "next/navigation"; +import { getAllGuides, getGuideBySlug } from "@/lib/content"; +import { DifficultyBadge } from "@/components/ui/DifficultyBadge"; +import type { Metadata } from "next"; + +interface Props { + params: Promise<{ slug: string }>; +} + +export async function generateStaticParams() { + const guides = getAllGuides(); + return guides.map((guide) => ({ slug: guide.slug })); +} + +export async function generateMetadata({ params }: Props): Promise { + const { slug } = await params; + const guide = await getGuideBySlug(slug); + if (!guide) return { title: "Guide nicht gefunden" }; + + return { + title: guide.title, + description: guide.excerpt || `${guide.title} — 3D-Druck Guide auf molzi3d.de`, + }; +} + +export default async function GuidePage({ params }: Props) { + const { slug } = await params; + const guide = await getGuideBySlug(slug); + + if (!guide) notFound(); + + // Verwandte Guides (gleiche Kategorie, ohne aktuellen) + const allGuides = getAllGuides(); + const related = allGuides + .filter((g) => g.category === guide.category && g.slug !== guide.slug) + .slice(0, 3); + + return ( +
+ {/* Header */} +
+
+ + + {guide.readingTime} + + + {guide.category} + +
+

+ {guide.title} +

+ {guide.excerpt && ( +

{guide.excerpt}

+ )} +
+ + {/* Content */} +
+ + {/* Verwandte Guides */} + {related.length > 0 && ( +
+

Verwandte Guides

+
+ {related.map((r) => ( + + +

{r.title}

+
+ ))} +
+
+ )} +
+ ); +} diff --git a/app/src/app/guides/layout.tsx b/app/src/app/guides/layout.tsx new file mode 100644 index 0000000..7a1cd74 --- /dev/null +++ b/app/src/app/guides/layout.tsx @@ -0,0 +1,18 @@ +import { Header } from "@/components/layout/Header"; +import { Sidebar } from "@/components/layout/Sidebar"; + +export default function GuidesLayout({ + children, +}: { + children: React.ReactNode; +}) { + return ( + <> +
+
+ +
{children}
+
+ + ); +} diff --git a/app/src/app/guides/page.tsx b/app/src/app/guides/page.tsx new file mode 100644 index 0000000..5c12237 --- /dev/null +++ b/app/src/app/guides/page.tsx @@ -0,0 +1,59 @@ +import { getAllGuides, getGuideCategories } from "@/lib/content"; +import { GuideCard } from "@/components/guides/GuideCard"; +import type { Metadata } from "next"; + +export const metadata: Metadata = { + title: "Alle Guides", + description: "Alle 3D-Druck Guides auf einen Blick — sortiert nach Kategorie.", +}; + +export default function GuidesPage() { + const guides = getAllGuides(); + const categories = getGuideCategories(); + + if (guides.length === 0) { + return ( +
+

Noch keine Guides vorhanden.

+

+ Guides werden als Markdown-Dateien in{" "} + + src/content/guides/ + {" "} + abgelegt. +

+
+ ); + } + + return ( +
+

Guides

+

+ {guides.length} Guides in {categories.length} Kategorien +

+ + {categories.map((category) => { + const categoryGuides = guides.filter((g) => g.category === category); + if (categoryGuides.length === 0) return null; + + return ( +
+

+ + {category} + + ({categoryGuides.length}) + +

+
+ {categoryGuides.map((guide) => ( + + ))} +
+
+ ); + })} +
+ ); +} diff --git a/app/src/app/layout.tsx b/app/src/app/layout.tsx new file mode 100644 index 0000000..2079a03 --- /dev/null +++ b/app/src/app/layout.tsx @@ -0,0 +1,63 @@ +import type { Metadata } from "next"; +import { Geist, Geist_Mono } from "next/font/google"; +import "./globals.css"; + +const geistSans = Geist({ + variable: "--font-geist-sans", + subsets: ["latin"], +}); + +const geistMono = Geist_Mono({ + variable: "--font-geist-mono", + subsets: ["latin"], +}); + +export const metadata: Metadata = { + title: { + default: "molzi3d — 3D-Druck Guides & Wissen", + template: "%s | molzi3d", + }, + description: + "Praxisnahe 3D-Druck Guides fuer fortgeschrittene Hobbyisten. Kalibrierung, Materialien, Slicer-Tipps und Fehlerbehebung.", + keywords: [ + "3D-Druck", + "3D-Drucker", + "Filament", + "PLA", + "PETG", + "Cura", + "OrcaSlicer", + "Kalibrierung", + ], +}; + +export default function RootLayout({ + children, +}: Readonly<{ + children: React.ReactNode; +}>) { + return ( + + + {/* Theme-Script: Verhindert Flash of Unstyled Content */} + \n\n
\n SYS_STATUS: ONLINE
\n NODE: DE-01
\n BUILD: 2026.03\n
\n
\n
[SYS_KNOWLEDGE] // 3D-PRINT HUB // EST.2024
\n

PRINT.
SHARE.
INSPIRE.

\n
\n
\n

\n Guides, Modelle & Community — alles was du für\n bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.\n

\n \n
\n
\n\n\n\n\n\n\n
\n
\n 49+\n [GUIDES] // ALLE LEVELS\n
\n
\n DE.\n [OPEN] // COMMUNITY\n
\n
\n 4K+\n [DATA] // MODELLE\n
\n
\n 100%\n [ACCESS] // KOSTENLOS\n
\n
\n\n\n
\n
\n
\n 01_MODELLE\n

TRENDING_PRINTS

\n
\n ALLE MODELLE →\n
\n \n
\n
\n
Flexi Baby Snake
\n TRENDING // PRINT-IN-PLACE\n
Flexi Baby Snake
\n
Voll beweglich, keine Supports nötig. Perfekt für PLA-Einsteiger.
\n
PLA//KEINE SUPPORTS//EINSTEIGER
\n AUF PRINTABLES →\n
\n
\n
Parcel Opener
\n ALLTAGSHELFER\n
Parcel Opener
\n
Sicher öffnen ohne Klinge — PLA oder PETG.
\n
PLA / PETG//SUPPORTS: NEIN//EINSTEIGER
\n AUF PRINTABLES →\n
\n
\n
Filament Storage Box
\n ORGANISATION\n
Filament Storage Box
\n
Trocken lagern, ordentlich organisieren — mit Desiccant-Halter.
\n
PLA//4x SPOOL//ORGANISATION
\n AUF PRINTABLES →\n
\n
\n
Gridfinity Base
\n GRIDFINITY\n
Gridfinity Base 2×2
\n
Das modulare Ordnungssystem — kompatibel mit 1000+ Bins.
\n
PLA//GRIDFINITY//ORGANISATION
\n AUF PRINTABLES →\n
\n
\n
Low Poly Fox
\n DEKO // KLASSIKER\n
Low Poly Fox
\n
Zeitloser Klassiker — perfektes Erstprojekt für alle Einsteiger.
\n
PLA//KEINE SUPPORTS//EINSTEIGER
\n AUF PRINTABLES →\n
\n
\n
Cable Management Clip
\n KABELMANAGEMENT\n
Cable Clip Set
\n
Kabel ordentlich verlegen — parametrisch, druckbar in 10 Minuten.
\n
TPU / PLA//SUPPORTS: NEIN//EINSTEIGER
\n AUF PRINTABLES →\n
\n
\n
\n\n\n
\n
\n
\n 02_WISSEN\n

KNOWLEDGE_BASE

\n
\n ALLE GUIDES →\n
\n \n
\n\n\n
\n
\n
\n 03_COMMUNITY\n

NETWORK_HUB

\n
\n
\n
\n
\n
\n
DEINE
MAKER
COMMUNITY.
\n

Die aktivste deutsche 3D-Druck Community — kostenlos, direkt, immer.

\n
\n
\n WHATSAPP_BEITRETEN →\n
[KOSTENLOS // KEIN SPAM // EXIT JEDERZEIT]
\n
\n
\n
\n
\n 01\n
\n
Sofortige Hilfe bei Druckfehlern
\n
Frag die Community — meistens Antwort in Minuten.
\n
\n
\n
\n 02\n
\n
Wöchentliche Modell-Highlights
\n
Jeden Freitag die besten neuen Drucke aus der Community.
\n
\n
\n
\n 03\n
\n
Filament- & Drucker-Empfehlungen
\n
Echte Erfahrungen — von Makern für Maker.
\n
\n
\n
\n
\n
\n\n\n
\n
Bereit für bessere DRUCKE?
\n \n
\n\n\n\n\n\n diff --git a/backup/content/pages/impressum.html b/backup/content/pages/impressum.html new file mode 100644 index 0000000..fe25863 --- /dev/null +++ b/backup/content/pages/impressum.html @@ -0,0 +1,8 @@ +--- +title: "Impressum" +slug: "impressum" +type: page +excerpt: "" +--- + +\n
\n\n\n\n
Rechtliches

Impressum

Angaben gemäß § 5 TMG

\n
\n

Hinweis: Bitte ergänze hier deine vollständigen Pflichtangaben gemäß § 5 TMG: Name/Firma, vollständige Adresse, Kontaktdaten (E-Mail, ggf. Telefon) und — falls zutreffend — USt-ID und Verantwortlicher gem. § 55 Abs. 2 RStV. Bis zur Ergänzung ist das Impressum unvollständig.

\n
\n

Verantwortlich für den Inhalt

\n

[Dein Name]
[Straße Hausnummer]
[PLZ Ort]

\n

Kontakt

\n

E-Mail: [deine@email.de]

\n

Haftungsausschluss

\n

Die Inhalte dieser Website wurden mit größter Sorgfalt erstellt. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte übernehmen wir keine Gewähr. Als Diensteanbieter sind wir gemäß § 7 Abs. 1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich.

\n

Externe Links

\n

Diese Website enthält Links zu externen Webseiten Dritter, auf deren Inhalte wir keinen Einfluss haben. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter verantwortlich.

\n
\n
\n\n
diff --git a/backup/content/pages/model-archiv.html b/backup/content/pages/model-archiv.html new file mode 100644 index 0000000..ca706ca --- /dev/null +++ b/backup/content/pages/model-archiv.html @@ -0,0 +1,8 @@ +--- +title: "Model-Archiv" +slug: "model-archiv" +type: page +excerpt: "" +--- + +\n\n\n\n\n\n
\n
\n
\n MODEL_ARCHIVE\n

ARCHIV.

\n

Historie der wöchentlichen Top-Modelle.

\n
\n
\n\n
\n
2026-W13
Printables: Stargate with a working Iris
Printables: Folding Wall Hook
Printables: Full Desk Organizer & Monitor Stand + Stackable Drawers
\n
2026-W12
Printables: Wall Hook - Invisible Mounting
Printables: Folding Wall Hook
Printables: Dragon Egg Twist Fidget
\n
2026-W11
Printables: Wall Hook - Invisible Mounting
Printables: Folding Wall Hook
Printables: Parcel Opener – Safe, Durable & Blade-Free
\n
2026-W10
Printables: Flexi Baby Snake - Print in place - No Supports
Printables: Parcel Opener – Safe, Durable & Blade-Free
Printables: Filament Storage 2026
\n\n
\n\n\n diff --git a/backup/content/pages/models.html b/backup/content/pages/models.html new file mode 100644 index 0000000..d038356 --- /dev/null +++ b/backup/content/pages/models.html @@ -0,0 +1,8 @@ +--- +title: "Inspiration" +slug: "models" +type: page +excerpt: "" +--- + +\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n Stargate with a working Iris\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
716 Likes · 1282 Downloads
\n AUF PRINTABLES →\n
\n
\n Dupont connector bridge\n
\n P_02 // OTHER\n
Dupont connector bridge
\n
536 Likes · 677 Downloads
\n AUF PRINTABLES →\n
\n
\n Folding Wall Hook\n
\n P_03 // OTHER\n
Folding Wall Hook
\n
2906 Likes · 7652 Downloads
\n AUF PRINTABLES →\n
\n
\n Knurled knobs for M2.5 to M8 internal hex screw\n
\n P_04 // OTHER\n
Knurled knobs for M2.5 to M8 internal hex screw
\n
635 Likes · 754 Downloads
\n AUF PRINTABLES →\n
\n
\n Any Box Generator\n
\n P_05 // OTHER\n
Any Box Generator
\n
1212 Likes · 1773 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n 2024 Earring\n
\n MW_01 // MAKERWORLD\n
2024 Earring
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n Plato Award\n
\n MW_02 // MAKERWORLD\n
Plato Award
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n Arborcycle Calendar\n
\n MW_03 // MAKERWORLD\n
Arborcycle Calendar
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n Ballerina Silhouette Figure Decoration\n
\n MW_04 // MAKERWORLD\n
Ballerina Silhouette Figure Decoration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n Bento Smoke Stack Stage 2 Air Filtration\n
\n MW_05 // MAKERWORLD\n
Bento Smoke Stack Stage 2 Air Filtration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n diff --git a/backup/content/pages/naht-seam-verstecken.html b/backup/content/pages/naht-seam-verstecken.html new file mode 100644 index 0000000..f7ffb97 --- /dev/null +++ b/backup/content/pages/naht-seam-verstecken.html @@ -0,0 +1,8 @@ +--- +title: "Naht (Seam) verstecken" +slug: "naht-seam-verstecken" +type: page +excerpt: "" +--- + +\n\n\n\n\n\n\n
\n

Naht (Seam) verstecken

\n\n\n

Der Seam ist die sichtbare Naht an der Stelle, wo jeder Layer beginnt und endet. Mit den richtigen Slicer-Einstellungen kannst du sie vollständig verstecken — in Ecken, auf der Rückseite oder gleichmäßig über das Modell verteilt.

\n\n

Was verursacht den Seam?

\n

Bei jedem Layerwechsel muss der Drucker irgendwo anfangen. An diesem Punkt entsteht durch leichten Über- oder Unterdruck ein kleiner Buckel oder eine Kerbe. Je besser Retraction und Pressure Advance kalibriert sind, desto weniger fällt er auf.

\n
    \n
  • Seam-Position: Wo der Printer startet — steuerbar per Slicer
  • \n
  • Seam-Größe: Abhängig von Retraction, Pressure Advance, Flow und Druckgeschwindigkeit
  • \n
  • Seam-Sichtbarkeit: Helle Filamente, glänzende Oberflächen zeigen ihn mehr
  • \n
\n\n

Seam-Modi im Slicer

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ModusBeschreibungWann nutzen
Aligned / HintenAlle Layer starten an der gleichen Stelle (hinten am Modell)Wenn die Rückseite nicht sichtbar ist
Nearest / RandomStartpunkt wechselt zufällig über die OberflächeWenn kein einzelner Seam sichtbar sein soll (verteilt Fehler)
Concave / ScharfSlicer sucht automatisch konkave Ecken am ModellBeste Wahl für eckige Modelle — Seam verschwindet in der Ecke
Manuell (Paint-on)Seam-Position direkt auf dem Modell einzeichnenPräzise Kontrolle bei komplexen Modellen
\n\n

Einstellungen je Slicer

\n\n

OrcaSlicer

\n
    \n
  • Quality → Seam position: Aligned / Nearest / Rear / Scarf joint
  • \n
  • Scarf joint seam (empfohlen): Übergang wird schräg gedruckt — kaum sichtbar
  • \n
  • Scarf-Einstellungen: Start height ≈ 10%, End height ≈ 10%, Width = 0.2
  • \n
  • Manuell: Rechtsklick auf Modell → Seam Painting
  • \n
\n\n

PrusaSlicer / BambuStudio

\n
    \n
  • Print Settings → Layers and Perimeters → Seam position
  • \n
  • Optionen: Aligned, Rear, Random, Nearest
  • \n
  • Wipe before outer wall aktivieren — reduziert Blobs am Seam
  • \n
  • Manuell: Rechtsklick auf Modell → Seam Painting
  • \n
\n\n

Cura

\n
    \n
  • Shell → Z Seam Alignment: Back / Shortest / Random / User Specified
  • \n
  • Seam Corner Preference: Smart Hiding — findet automatisch Ecken
  • \n
  • Wipe Nozzle Between Layers aktivieren für weniger Oozing am Seam
  • \n
\n\n

Seam kleiner machen — Einstellungen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EinstellungZielTipp
Pressure Advance / LADruckschwankungen beim Start/Stop eliminierenWichtigste Maßnahme gegen Blobs am Seam
Outer Wall SpeedSeam-Bereich langsamer druckenOuter Wall auf 40–60 % von Inner Wall
Wipe DistanceFilament vor Layerwechsel zurückziehen0.1–0.5 mm — verhindert Oozing am Seam
Start in OverlapSeam leicht in vorherige Linie startenVerringert sichtbaren Übergang
Innenwand vor AußenwandAußenwand hat bessere UnterlagePerimeter-Reihenfolge: innen → außen
\n\n

Der Scarf Joint Seam (OrcaSlicer)

\n

Der Scarf Joint Seam ist die modernste Methode. Statt einem harten Start/Stop wird der Übergang schräg über mehrere Millimeter verteilt — ähnlich einem schrägen Holzschnitt. Das Ergebnis ist so unauffällig, dass er mit bloßem Auge kaum noch zu erkennen ist.

\n
    \n
  • Verfügbar in: OrcaSlicer ab 2.x, Bambu Studio ab 1.9
  • \n
  • Empfohlene Einstellung: Type → Contour, Start height 10 %, End height 10 %
  • \n
  • Funktioniert am besten bei zylindrischen und organischen Modellen
  • \n
  • Minimal länger Druckzeit (~2–3 %)
  • \n
\n\n
\n Empfehlung:\n Für eckige Modelle: Concave/Smart Hiding — der Seam verschwindet automatisch in Kanten. Für organische/runde Modelle: Scarf Joint Seam in OrcaSlicer oder Bambu Studio. Beides zusammen mit gut kalibriertem Pressure Advance ergibt nahezu unsichtbare Nähte.\n
\n\n\n\n\n\n diff --git a/backup/content/pages/news.html b/backup/content/pages/news.html new file mode 100644 index 0000000..60f95ce --- /dev/null +++ b/backup/content/pages/news.html @@ -0,0 +1,8 @@ +--- +title: "Trends & News" +slug: "news" +type: page +excerpt: "" +--- + +\n\n\n\n\n\n
\n
NEWS_FEED
\n

TRENDS &\nNEWS.

\n
\n\n
\n \n
Aktuelle Releases
\n
\n
\n
RELEASE
\n
Klipper
\n
N/A · —
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
Marlin
\n
2.1.2.7 · 2026-01-24
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
OrcaSlicer
\n
v2.3.2 · 2026-03-23
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
PrusaSlicer
\n
version_2.9.4 · 2025-11-07
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
Cura
\n
5.12.0 · 2026-03-05
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
BambuStudio
\n
v02.05.00.67 · 2026-01-28
\n DOWNLOAD →\n
\n\n
\n
\n\n
\n \n
3D-Drucker Hardware
\n
\n
\n
Bambu Lab A1 Mini
\n
Bambu Lab
\n
Kompakter Einsteigerdrucker mit automatischer Kalibrierung, Multi-Color-faehig ueber AMS lite.
\n
ab 299 €
\n
\n
\n
Creality K2 Plus
\n
Creality
\n
Grossformat Core-XY mit 350x350x350mm Bauraum, Klipper-basiert, bis 600mm/s Druckgeschwindigkeit.
\n
ab 899 €
\n
\n
\n
Prusa MK4S
\n
Prusa Research
\n
Upgrade des MK4 mit verbessertem Extruder, Input Shaping und PrusaConnect Cloud-Anbindung.
\n
ab 799 €
\n
\n
\n
Voron Trident
\n
Voron Design (DIY)
\n
High-Performance DIY CoreXY mit beheizter Kammer, ideal fuer technische Filamente wie ABS/ASA.
\n
ab 600 € (Kit)
\n
\n
\n
Ankermake M5C
\n
AnkerMake
\n
Budgetfreundlicher Schnelldrucker mit 500mm/s, einfaches Setup ueber App.
\n
ab 349 €
\n
\n
\n
Elegoo Neptune 4 Max
\n
Elegoo
\n
Grosser FDM-Drucker (420x420x480mm), Klipper-Firmware, direkter Extruder.
\n
ab 469 €
\n
\n\n
\n
\n\n
\n \n
Community News
\n
\n
\n
2026-03-20
\n
Bambu Lab stellt neues Multi-Material-System vor
\n
Mit dem AMS2 koennen bis zu 16 Farben in einem Druck verwendet werden. Kompatibel mit der gesamten X1-Serie.
\n
\n
\n
2026-03-15
\n
Prusa kuendigt XL Firmware-Update an
\n
Groesseres Update fuer den Prusa XL bringt verbesserte Tool-Wechsel-Kalibrierung und schnellere Druckzeiten.
\n
\n
\n
2026-03-10
\n
OrcaSlicer 2.3 mit AI-Stuetzstrukturen
\n
Die neue Version von OrcaSlicer nutzt ML-basierte Algorithmen fuer optimierte Stuetzstrukturen mit weniger Materialverbrauch.
\n
\n
\n
2026-03-05
\n
Voron Community: Tap v2 offiziell released
\n
Der beliebte Voron Tap Sensor erhaelt ein Redesign mit verbesserter Genauigkeit und einfacherer Montage.
\n
\n
\n
2026-02-28
\n
Creality bringt Klipper-Support fuer Ender-3 V3
\n
Offizielles Klipper-Image verfuegbar. Input Shaping und Pressure Advance ab Werk konfiguriert.
\n
\n
\n
2026-02-22
\n
Neues Hochtemperatur-Filament: PAHT-CF von Extrudr
\n
Carbonfaserverstaerktes Nylon mit Drucktemperaturen bis 300°C fuer industrielle Anwendungen.
\n
\n\n
\n
\n\n\n diff --git a/backup/content/pages/resources.html b/backup/content/pages/resources.html new file mode 100644 index 0000000..dc60124 --- /dev/null +++ b/backup/content/pages/resources.html @@ -0,0 +1,8 @@ +--- +title: "Ressourcen & Tools" +slug: "resources" +type: page +excerpt: "" +--- + +\n\n\n\n\n\n
\n
TOOLS_DATABASE
\n

RESSOURCEN\n& TOOLS.

\n
\n\n
\n \n
Slicer & Firmware Downloads
\n
\n
\n OrcaSlicer\n
\n
DOWNLOAD
\n
OrcaSlicer
\n
v2.3.2 · 2026-03-23
\n DOWNLOAD →\n
\n
\n
\n PrusaSlicer\n
\n
DOWNLOAD
\n
PrusaSlicer
\n
version_2.9.4 · 2025-11-07
\n DOWNLOAD →\n
\n
\n
\n Cura\n
\n
DOWNLOAD
\n
Cura
\n
5.12.0 · 2026-03-05
\n DOWNLOAD →\n
\n
\n
\n BambuStudio\n
\n
DOWNLOAD
\n
BambuStudio
\n
v02.05.00.67 · 2026-01-28
\n DOWNLOAD →\n
\n
\n
\n Klipper\n
\n
DOWNLOAD
\n
Klipper
\n
N/A · —
\n DOWNLOAD →\n
\n
\n
\n Marlin\n
\n
DOWNLOAD
\n
Marlin
\n
2.1.2.7 · 2026-01-24
\n DOWNLOAD →\n
\n
\n\n
\n
\n\n\n\n\n\n
\n \n
Filament Hersteller
\n \n
\n\n\n diff --git a/backup/content/pages/showcase.html b/backup/content/pages/showcase.html new file mode 100644 index 0000000..0228fdc --- /dev/null +++ b/backup/content/pages/showcase.html @@ -0,0 +1,8 @@ +--- +title: "Showcase" +slug: "showcase" +type: page +excerpt: "" +--- + +\n\n\n\n\n\n\n\n
\n
\n
\n SHOWCASE_FEED\n

COMMUNITY_PRINTS

\n

Die schönsten Drucke aus der m0lzi_3D Community.

\n
\n
\n
\n\nSHOWCASE_FEED\n

Community Prints

\n

Die schönsten Drucke aus unserer WhatsApp-Community. Jede Woche neue Highlights — von Makern für Maker.

\n
\n
COMMUNITY

Woche 12/2026

Flexi Dragon, Gridfinity Setup, benutzerdefinierte Raspi-Gehäuse und mehr.

COMMUNITY_JOIN →
\n
HIGHLIGHT

Woche 11/2026

Multi-Color Prints mit Bambu AMS, TPU-Handschuhe, Werkzeughalter-System.

COMMUNITY_JOIN →
\n
FEATURED

Woche 10/2026

Klipper-Upgrade Dokumentationen, ASA-Outdoorhalter, Resin-Minis.

COMMUNITY_JOIN →
\n
\n

[SYS_NOTE] Teile deinen Print — komm in die WhatsApp Community

\n\n
\n\n\n\n diff --git a/backup/content/pages/tools-filament-rechner.html b/backup/content/pages/tools-filament-rechner.html new file mode 100644 index 0000000..89ec4b1 --- /dev/null +++ b/backup/content/pages/tools-filament-rechner.html @@ -0,0 +1,8 @@ +--- +title: "Filament-Rechner" +slug: "tools-filament-rechner" +type: page +excerpt: "" +--- + +\n\n\n\n\n\n\n\n
\n
\n
\n TOOL_MODULE\n

FILAMENT_RECHNER

\n

Druckkosten sekundenschnell kalkulieren — Filament, Strom, Gesamtkosten.

\n
\n
\n
\n
\n KALKULATION\n
\n
\n
\n
\n
\n
\n \n
\n
\n
[FILAMENT_KOSTEN]
\n
[STROM_KOSTEN]
\n
[GESAMT_KOSTEN]
\n
\n
\n
\n\n

// FILAMENT_RICHTWERTE_2026

\n
\n
PLA

15–25 €/kg

Einfachstes Material. Bambu, Prusament, eSUN, Polymaker.

\n
PETG

18–28 €/kg

Robust, feuchtigkeitsresistent. Etwas Stringing bei falschen Settings.

\n
TPU

22–38 €/kg

Flexibel, langlebig. Direct-Drive Drucker empfohlen.

\n
ASA / ABS

20–32 €/kg

UV-stabil, hitzefest. Enclosure notwendig.

\n
PLA-CF

28–45 €/kg

Carbon-verstärkt, steif und leicht. Gehärtete Düse nötig.

\n
NYLON PA

35–60 €/kg

Sehr zäh, geringe Feuchtigkeitstoleranz.

\n
\n
\n\n\n\n\n\n diff --git a/backup/content/pages/wissen.html b/backup/content/pages/wissen.html new file mode 100644 index 0000000..d33a00c --- /dev/null +++ b/backup/content/pages/wissen.html @@ -0,0 +1,8 @@ +--- +title: "Guides" +slug: "wissen" +type: page +excerpt: "" +--- + +\n\n\n\n\n\n\n\n
\n
\n
\n KNOWLEDGE_BASE\n

GUIDES_&_TUTORIALS

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n
\n
\n \n \n \n \n \n
\n
\n\n \n
EINSTEIGER

Erstes Modell drucken

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

GUIDE_LADEN →
\n
EINSTEIGER

PLA perfekt einstellen

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

GUIDE_LADEN →
\n
EINSTEIGER

Erste Schicht kalibrieren

Z-Offset, Betttemperatur und First-Layer-Speed für alle Drucker.

GUIDE_LADEN →
\n
EINSTEIGER

Flow-Rate & E-Steps

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt.

GUIDE_LADEN →
\n
EINSTEIGER

Maßhaltigkeit verbessern

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

GUIDE_LADEN →
\n
EINSTEIGER

Temperaturturm auswerten

Optimale Drucktemperatur für jedes Filament finden — schnell und präzise.

GUIDE_LADEN →
\n
EINSTEIGER

Druckbett leveln & Z-Offset

Manuell, BLTouch oder automatisch — perfekte erste Schicht.

GUIDE_LADEN →
\n
EINSTEIGER

Düsenwechsel & Nozzle-Upgrade

Wann wechseln, Messing, Hardened Steel, Ruby — der komplette Guide.

GUIDE_LADEN →
\n
EINSTEIGER

Klipper: Grundlagen & Ersteinrichtung

Raspberry Pi, KIAUH, Mainsail — vom Marlin-Drucker zu Klipper.

GUIDE_LADEN →
\n
EINSTEIGER

Gridfinity: Modulares Ordnungssystem

42mm-Raster, Magnete, Community-Bins — Werkstatt perfekt organisieren.

GUIDE_LADEN →
\n
EINSTEIGER

3D-Drucke nachbearbeiten

Schleifen, Grundieren, Lackieren — professionelles Endprodukt.

GUIDE_LADEN →
\n
EINSTEIGER

3D-Drucker Kaufberatung 2026

Von 200–1.000 € — welcher Drucker passt zu deinem Budget.

GUIDE_LADEN →
\n
EINSTEIGER

Resin-Druck: SLA & MSLA Grundlagen

FDM vs. Resin, Workflow, Sicherheit und Resin-Typen im Überblick.

GUIDE_LADEN →
\n \n
MATERIAL

PETG ohne Frust

Zäh, wasserfest, hitzestabil — der ultimative PETG-Guide.

GUIDE_LADEN →
\n
MATERIAL

TPU drucken

Direktantrieb vs. Bowden — alles für flexibles Filament.

GUIDE_LADEN →
\n
MATERIAL

ASA/ABS Grundlagen

Hitzebeständig und UV-stabil — ohne Warping drucken.

GUIDE_LADEN →
\n
MATERIAL

Nylon / PA drucken

Zäh, hitzebeständig, chemikalienresistent — PA6, PA12 und PA-CF.

GUIDE_LADEN →
\n
MATERIAL

Filament richtig trocknen

Knistern, Blasen — feuchtes Filament erkennen und trocknen.

GUIDE_LADEN →
\n
MATERIAL

TPU & Flexible Filamente

Shore-Härte, Extruder-Kompatibilität — flexibel drucken ohne Chaos.

GUIDE_LADEN →
\n
MATERIAL

Carbon Fiber & Glasfaser

Hardened-Steel-Düse, Abrasion — Hochleistungs-Filamente richtig.

GUIDE_LADEN →
\n
MATERIAL

Nylon (PA6 / PA12) drucken

Feuchtigkeit, Warping, Enclosure — Nylon richtig einrichten.

GUIDE_LADEN →
\n \n
FEHLERANALYSE

Warping vermeiden

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

GUIDE_LADEN →
\n
FEHLERANALYSE

Stringing reduzieren

Retraction, Temperatur und Travel-Speed richtig einstellen.

GUIDE_LADEN →
\n
FEHLERANALYSE

Retraction kalibrieren

Direct Drive vs. Bowden — kein Stringing mehr.

GUIDE_LADEN →
\n
FEHLERANALYSE

Unterextrusion beheben

Lücken, poröse Oberflächen — systematisch diagnostizieren.

GUIDE_LADEN →
\n
FEHLERANALYSE

Layer Separation beheben

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

GUIDE_LADEN →
\n
FEHLERANALYSE

Elefantenfuß beheben

Erste Schicht quillt nach außen — Z-Offset und Slicer-Kompensation.

GUIDE_LADEN →
\n
FEHLERANALYSE

Brücken & Überhänge drucken

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges.

GUIDE_LADEN →
\n
FEHLERANALYSE

Bed Adhesion: Haftung für alle

PEI, Klebestift, Magigoo, Haarspray — richtige Kombination.

GUIDE_LADEN →
\n
FEHLERANALYSE

Verstopfte Düse

Kalt-Ziehen, Atomar-Methode, Nadel — alle Reinigungsmethoden.

GUIDE_LADEN →
\n \n
SLICER

Support richtig setzen

Tree, Normal, Organic — wann welche Methode passt.

GUIDE_LADEN →
\n
SLICER

Slicer-Profil optimieren

E-Steps, Flow, Pressure Advance — das perfekte Profil.

GUIDE_LADEN →
\n
SLICER

Druckzeit vs. Qualität

Schichtdicke, Speed und Infill — der richtige Kompromiss.

GUIDE_LADEN →
\n
SLICER

OrcaSlicer Einsteiger-Guide

Kalibrier-Wizards, Supports, Profiles — der mächtigste freie Slicer.

GUIDE_LADEN →
\n
SLICER

Cura: Tipps & versteckte Einstellungen

Adaptive Layer Height, Ironing, Modifier Meshes.

GUIDE_LADEN →
\n
SLICER

PrusaSlicer: Einsteiger bis Fortgeschrittene

Organic Supports, Variable Layer Height, Paint-on Seams.

GUIDE_LADEN →
\n
SLICER

Bambu Studio komplett

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

GUIDE_LADEN →
\n
SLICER

Pressure Advance kalibrieren

Klipper PA und Marlin Linear Advance — scharfe Ecken.

GUIDE_LADEN →
\n
SLICER

Infill: Muster, Dichte & Wandstärke

Gyroid, Grid, Lightning — welches Muster für welchen Zweck.

GUIDE_LADEN →
\n
SLICER

Input Shaping kalibrieren

Klipper Resonance Compensation mit ADXL345 — Ringing eliminieren.

GUIDE_LADEN →
\n
SLICER

Ironing: Top-Oberflächen glätten

Glasglatte Deckflächen in allen Slicern.

GUIDE_LADEN →
\n
SLICER

Adaptive Layer Height

Kleinere Layer an Kurven — glattere Oberflächen, kürzere Druckzeit.

GUIDE_LADEN →
\n
SLICER

Multi-Material & AMS einrichten

Bambu AMS, Prusa MMU3, lösliche Supports.

GUIDE_LADEN →
\n
SLICER

Naht (Seam) verstecken

Aligned, Scarf Joint, Concave — Naht unsichtbar machen.

GUIDE_LADEN →
\n
SLICER

Speed Tower optimieren

Volumenstrom-Limit, Acceleration — ideale Geschwindigkeit ermitteln.

GUIDE_LADEN →
\n
SLICER

Modifier Meshes & Paint-on Supports

Slicer-Einstellungen zonenweise überschreiben.

GUIDE_LADEN →
\n
SLICER

Fuzzy Skin: Strukturierte Oberflächen

Rauhe, textile oder Steinoptik ohne Nachbearbeitung.

GUIDE_LADEN →
\n\n
\n
\n\n
\n

NOCH FRAGEN?

\n

Schau in die FAQ oder frag direkt in der Community.

\n \n
\n\n\n\n diff --git a/backup/content/posts/3d-drucke-nachbearbeiten.html b/backup/content/posts/3d-drucke-nachbearbeiten.html new file mode 100644 index 0000000..a4717bd --- /dev/null +++ b/backup/content/posts/3d-drucke-nachbearbeiten.html @@ -0,0 +1,8 @@ +--- +title: "3D-Drucke nachbearbeiten: Schleifen, Glätten & Lackieren" +slug: "3d-drucke-nachbearbeiten" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Primer\n \n \n Farbe\n \n \n Klarlack\n \n \n \n \n Fertig\n \n Nachbearbeitung\n Schleifen · Glätten · Grundieren · Lackieren\n EINSTEIGER GUIDE\n\n\n

3D-Drucke nachbearbeiten: Schleifen, Glätten & Lackieren

\n

Ein frischer 3D-Druck sieht selten aus wie das fertige Produkt — Schichtlinien, Support-Reste und raue Oberflächen sind normal. Mit den richtigen Nachbearbeitungsschritten wird aus einem Rohling ein professionelles Endprodukt.

\n\n

Schritt 1: Support entfernen & reinigen

\n
    \n
  • Supportzange / Seitenschneider: Support an der Basis abkneifen, nicht reißen
  • \n
  • Skalpell / Cuttermesser: Reste vorsichtig abschaben
  • \n
  • Heißluftpistole (60–80°C): Warpende Bereiche kurz erwärmen und flach drücken
  • \n
  • Danach mit Druckluft oder Pinsel säubern
  • \n
\n\n

Schritt 2: Schleifen

\n

Schleifen entfernt Schichtlinien und glättet Support-Abdrücke. Immer nass schleifen für besseres Ergebnis und weniger Feinstaub.

\n\n \n \n \n \n \n \n \n \n
SchleifpapierZweckTechnik
P80–P120Grobe Stufen, Support-ResteTrocken, kreisförmig
P180–P240Schichtlinien egalisierenNass, in Druckrichtung
P400–P600Oberfläche glättenNass, sanft
P800–P1200Hochglanz vorbereitenNass, sehr sanft
P2000+SpiegelglanzNass + Polierpaste
\n

Tipp: Schleifklotz verwenden — verhindert ungleichmäßigen Druck der Finger.

\n\n

Schritt 3: Chemisches Glätten (materialabhängig)

\n\n \n \n \n \n \n \n \n \n
MaterialMethodeMittelSicherheit
ABSAceton-DampfAceton (Nagellackentferner)Lüftung! Feuergefährlich
PLAXTC-3D EpoxidSmooth-On XTC-3DHandschuhe, gut lüften
PLAPolyurethan-LackKlarlack-SprayHandschuhe, Atemschutz
PETGSchleifen empfohlenKein gutes Lösemittel
Resin (SLA)IPA-Bad + UV-AushärtenIsopropylalkohol 99%Handschuhe, kein Hautkontakt
\n\n

Schritt 4: Grundierung (Primer)

\n

Primer füllt kleine Kratzer, sorgt für gleichmäßigen Farbuntergrund und verbessert Haftung drastisch. Unverzichtbar vor dem Lackieren.

\n
    \n
  • Filler-Primer (Füll-Grundierung): Füllt Schichtlinien teilweise aus — 2–3 Schichten, trocknen lassen, schleifen (P400)
  • \n
  • Empfehlung: Montana Primer, Tamiya Surface Primer oder Rust-Oleum Filler Primer
  • \n
  • Abstand: 20–25cm, dünne gleichmäßige Schichten, nicht nass-in-nass
  • \n
  • Trockenzeit: Mindestens 30 Minuten zwischen Schichten, 2h vor Schleifen
  • \n
\n\n

Schritt 5: Lackieren

\n\n \n \n \n \n \n \n \n
LackmethodeErgebnisAufwandKosten
Sprühdose (Acryl)Gut, gleichmäßigNiedrig5–10€
AirbrushProfessionell, Gradienten möglichHoch50–200€ Setup
Pinsel (Modellbau)Detailarbeit, WashingMittel10–30€
Dip / WashingTiefenwirkung, TexturenMittel10–20€
\n
    \n
  • Sprühdosen-Technik: Immer bewegen beim Sprühen, nie stehend halten
  • \n
  • Mehrere dünne Schichten statt einer dicken (verhindert Läufer)
  • \n
  • Zwischen Schichten: P800 nass schleifen für glatteres Ergebnis
  • \n
\n\n

Schritt 6: Versiegeln

\n
    \n
  • Matter Klarlack: Schützt Farbe, reduziert Fingerabdrücke
  • \n
  • Glänzender Klarlack: Hochglanz, besonders schön auf dunklen Farben
  • \n
  • Satin-Klarlack: Mittelweg — natürlich wirkend
  • \n
  • Empfehlung: Vallejo Matte Varnish, Tamiya Clear oder Rust-Oleum Crystal Clear
  • \n
\n\n

Schnell-Referenz: Welche Methode für welches Ziel?

\n\n \n \n \n \n \n \n \n
ZielMethodeZeit
Funktionsbauteil (nicht sichtbar)Kein Finish nötig0 min
Ordentliches AussehenP240 schleifen + Primer-Spray1–2h
Bemalt / LackiertSchleifen + Primer + 2x Farbe + Klarlack4–8h
Ausstellung / VerkaufVollständiges Finish mit Airbrush1–3 Tage
\n\n
\n
\n\n\n diff --git a/backup/content/posts/adaptive-layer-height.html b/backup/content/posts/adaptive-layer-height.html new file mode 100644 index 0000000..52c88a5 --- /dev/null +++ b/backup/content/posts/adaptive-layer-height.html @@ -0,0 +1,8 @@ +--- +title: "Adaptive Layer Height" +slug: "adaptive-layer-height" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Adaptive Layer Height

\n

Adaptive Layer Height ist eines der mächtigsten Qualitäts-Features moderner Slicer. Es senkt automatisch die Schichthöhe an Kurven und Überhängen — und erhöht sie an flachen Flächen. Das Ergebnis: glattere Oberflächen bei gleichzeitig kürzerer Druckzeit als reines Fine Layer.

\n\n

Das Problem: Feste Schichthöhe ist ein Kompromiss

\n

Mit fester Schichthöhe muss man wählen:

\n
    \n
  • 0.20 mm: Gute Geschwindigkeit, sichtbare Linien bei Kurven (Treppeneffekt)
  • \n
  • 0.12 mm: Glatte Kurven, aber 40–60 % längere Druckzeit überall
  • \n
  • Adaptive Layer Height: 0.06–0.28 mm automatisch je nach Oberfläche — beste Qualität, optimale Zeit
  • \n
\n\n

Wie funktioniert es?

\n

Der Slicer analysiert die Modell-Geometrie Layer für Layer. Wo die Oberfläche steil ist (kleine Winkel zur Horizontale), erhöht er die Layeranzahl durch kleinere Schichthöhe. Wo die Oberfläche fast flach ist, nutzt er große Schichten.

\n
\n
\n

Steile Fläche / Kurve

\n

Kleine Schichthöhe (0.08–0.12 mm) → weniger Treppeneffekt, glattere Oberfläche

\n
\n
\n

Flache Fläche

\n

Große Schichthöhe (0.20–0.28 mm) → schneller, kaum Qualitätsverlust sichtbar

\n
\n
\n

Top-Layer

\n

Normal — Adaptive Layer nicht auf obere Deckflächen angewendet

\n
\n
\n\n

Slicer-spezifische Einstellungen

\n\n

OrcaSlicer

\n
    \n
  1. Rechtsklick auf Modell → Layer Height → Adaptive Layer Height
  2. \n
  3. Alternativ: in der oberen Toolbar das Layer-Symbol anklicken
  4. \n
  5. Parameter einstellen:
    \n Base Layer Height: deine Standard-Schichthöhe (z.B. 0.20 mm)
    \n Max Layer Height: Maximum (z.B. 0.28 mm für 0.4er Düse)
    \n Min Layer Height: Minimum (z.B. 0.08 mm)
    \n Threshold: Qualitätsstufe — niedrig = aggressiver adaptiv
  6. \n
  7. Vorschau im Layer-View: Farbcodierung zeigt kleine (blau) vs. große Layer (rot)
  8. \n
\n\n

PrusaSlicer

\n
    \n
  1. Object Settings → Variable Layer Height (Profi-Modus nötig)
  2. \n
  3. Taste L im 3D-View für den Layer-Height Editor
  4. \n
  5. Smooth-Funktion nutzen für automatische Anpassung
  6. \n
  7. Manuell: Mit der Maus Bereiche ziehen und Höhe anpassen
  8. \n
  9. Shortcuts: + / - für feinere/gröbere Layer im ausgewählten Bereich
  10. \n
\n\n

Bambu Studio

\n
    \n
  1. Rechtsklick auf Modell → Height Range Modifier
  2. \n
  3. Für automatisch adaptive: Slicer-Einstellung → Quality → Adaptive Layer Height aktivieren
  4. \n
  5. Threshold-Wert bestimmt Aggressivität (Standard: 0.2)
  6. \n
\n\n

Cura

\n
    \n
  • Einstellung: Adaptive Layers (Suche in Settings)
  • \n
  • Adaptive Layers Maximum Variation: maximale Abweichung von Basis-Layer (z.B. 0.1 mm)
  • \n
  • Adaptive Layers Variation Step Size: Schrittgröße (z.B. 0.01 mm)
  • \n
\n\n

Empfohlene Werte nach Düsengröße

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
DüseMin LayerBasis LayerMax Layer
0.2 mm0.05 mm0.10 mm0.15 mm
0.4 mm ★0.08 mm0.20 mm0.28 mm
0.6 mm0.12 mm0.24 mm0.36 mm
\n

Faustregel: Min = 20 % der Düsengröße, Max = 70 % der Düsengröße

\n\n

Wann lohnt es sich — wann nicht?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Modell-TypAdaptive Layer sinnvoll?
Organisch, rund (z.B. Figuren, Gefäße)✅ Sehr sinnvoll — deutlich glattere Kurven
Mechanische Teile (Quader, Zylinder)⚠️ Kaum Vorteil bei rein eckigen Formen
Miniatures / Details✅ Ja — aber Min Layer weit genug absenken
Architektatur-Modelle✅ Sehr sinnvoll bei geschwungenen Elementen
Technische Präzisionsteile❌ Feste Layer für Maßhaltigkeit besser
\n\n
\n Tipp:\n Kombiniere Adaptive Layer Height mit Ironing auf den Top-Layern für maximale Oberflächenqualität bei optischen Teilen. Adaptive sorgt für glatte Seiten, Ironing für perfekte Deckflächen — zusammen kaum von FDM zu unterscheiden.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/asa-abs-grundlagen.html b/backup/content/posts/asa-abs-grundlagen.html new file mode 100644 index 0000000..78e5baf --- /dev/null +++ b/backup/content/posts/asa-abs-grundlagen.html @@ -0,0 +1,8 @@ +--- +title: "ASA/ABS Grundlagen" +slug: "asa-abs-grundlagen" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Material

ASA und ABS erfolgreich drucken

Hitzestabil, UV-beständig, schwierig — aber mit der richtigen Technik beherrschbar.

\n

Wann brauche ich ASA oder ABS?

  • Dauerhaft über 60°C (Motorraum, Heizung, Sonneneinstrahlung im Auto)
  • Outdoor-Einsatz mit UV-Belastung (ASA deutlich UV-stabiler als ABS)
  • Mechanische Belastung bei Hitze
  • Chemische Resistenz gegen Lösungsmittel

ASA vs. ABS

EigenschaftABSASA
UV-StabilitätSchlecht (vergilbt)Sehr gut
Hitzebeständigkeit~100°C~100°C
WarpingStarkEtwas weniger
EmpfehlungLegacy-MaterialBevorzugen

Enclosure ist Pflicht

  • Ohne Enclosure: Warping praktisch unvermeidbar
  • Bambu P1S/X1C: Eingebaut — ideal
  • Ender/Prusa: DIY aus Ikea Lack-Tisch oder Karton
  • Mindesttemperatur im Druckraum: 40–50°C

Optimale Druckeinstellungen

  • Düse: ABS 230–250°C, ASA 240–260°C
  • Bett: 100–110°C (PEI oder Garolite)
  • Fan: 0–20% (mehr = mehr Warping)
  • Speed: max. 60 mm/s

Warping-Checkliste

  1. Bett mit Isopropanol reinigen
  2. Enclosure auf Temperatur bringen (~10 min)
  3. Brim: 8–10mm für ABS, 5–8mm für ASA
  4. Fan in ersten 5 Layern auf 0%
  5. Nach Druck: Enclosure-Tür erst nach 30min öffnen

Gesundheitshinweis

ABS und ASA setzen Styroldämpfe frei. Immer in gut belüfteten Räumen oder mit HEPA + Aktivkohle-Filter drucken.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/bed-adhesion-haftung.html b/backup/content/posts/bed-adhesion-haftung.html new file mode 100644 index 0000000..55fd263 --- /dev/null +++ b/backup/content/posts/bed-adhesion-haftung.html @@ -0,0 +1,8 @@ +--- +title: "Bed Adhesion: Die beste Haftung für jedes Material" +slug: "bed-adhesion-haftung" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Druckbett\n Adhesion\n \n \n \n Bed Adhesion\n Kleber · Haarspray · PEI · Magigoo · Brim\n FEHLERANALYSE GUIDE\n\n\n

Bed Adhesion: Die beste Haftung für jedes Material

\n

Die erste Schicht haftet nicht — einer der häufigsten Frustrationspunkte beim FDM-Druck. Die richtige Kombination aus Bettoberfläche, Haftmittel und Slicereinstellung löst das Problem dauerhaft. Dieser Guide zeigt, was wirklich funktioniert.

\n\n

Bettoberflächen im Vergleich

\n\n \n \n \n \n \n \n \n \n \n
OberflächeHaftung kaltAblösungBeste MaterialienPflege
PEI-Federstahlblech (glatt)Sehr gut (warm)Automatisch beim AbkühlenPLA, PETG, TPUIPA abwischen
PEI-Federstahlblech (texturiert)AusgezeichnetAutomatischPLA, ABS, ASA, PAIPA abwischen
Borosilikat-GlasMittelGut nach AbkühlungPLA, PETG mit KleberWaschen, kein Berühren
Bambu Cool PlateSehr gut für PLAAutomatischPLA, PLA+Kaltes Wasser
Bambu High Temp PlateSehr gut für ABSNach AbkühlungABS, ASA, PCIPA oder Klebestift
BuildTak / Creality PCSehr gutKann festkleben!PLA, PETG (vorsichtig)Minimal Kleber bei PETG
\n\n

Haftmittel-Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n
HaftmittelWirkungGut fürNachteil
Pritt-KlebestiftSehr gutPLA, PETG, ABS auf GlasRückstände, muss gereinigt werden
Haarspray (Elnett, Aquanet)GutPLA, ABS, NylonKlebrig, messy
Magigoo OriginalExzellentPLA, PETG, ABSTeuer (~15€/Stift)
Magigoo PA (Nylon)Spezialisiert, sehr gutPA6, PA12, PA-CFNur für Nylon
3DLACSehr gutABS, ASA (Warping)Spray — Überdosierung möglich
PVA-Kleber (verdünnt)GutPLA auf GlasMuss trocknen
Kein HaftmittelPLA auf texturiertem PEINichts — einfach sauber halten
\n\n

Slicer-Einstellungen für bessere Haftung

\n

Brim

\n

Ein Brim ist eine zusätzliche Schicht von Linien rund um die Basis deines Modells — erhöht die Auflagefläche erheblich.

\n
    \n
  • Brim-Breite: 5–10 mm für kleine Teile, 3 mm für große Flächen
  • \n
  • Brim-Typ: Außen (Standard), Innen (bei Löchern), Beidseitig
  • \n
  • Entfernen nach dem Druck: sauberer Schnitt oder Sandpapier (P120–P180)
  • \n
\n\n

Raft

\n

Ein Raft ist eine vollständige Plattform unter dem Modell — für extrem schlechte Haftung oder stark warpende Materialien.

\n
    \n
  • Erhöht Druckzeit deutlich (~+20%)
  • \n
  • Nur bei ABS/ASA auf Glas ohne Einhausung empfohlen
  • \n
  • Raft-Abstand: 0,1–0,2 mm für leichte Ablösung
  • \n
\n\n

First Layer Einstellungen

\n\n \n \n \n \n \n \n \n \n
ParameterStandardSchwierige Haftung
First Layer Dicke0,2 mm0,25–0,3 mm (mehr Quetschen)
First Layer Breite100–120%140–150%
First Layer Speed30 mm/s15–20 mm/s
BetttemperaturMaterialstandard+5–10°C höher
Fan SpeedNormal0% erste 2–3 Schichten
\n\n

Material-spezifische Tipps

\n
    \n
  • PLA: Texturiertes PEI + sauber = kein Haftmittel nötig. 60°C Bett.
  • \n
  • PETG: Klebestift auf PEI verhindert, dass PETG das PEI beschädigt. 70–80°C Bett.
  • \n
  • ABS/ASA: Einhausung + 3DLAC oder Magigoo + 100–110°C Bett. Brim immer verwenden.
  • \n
  • Nylon/PA: Magigoo PA oder PVAc-Kleber + 80–90°C Bett. Filament unbedingt trocknen!
  • \n
  • TPU: Sauberes PEI oder Klebestift + 40–50°C Bett. Langsame erste Schicht (15 mm/s).
  • \n
  • PC: Hochtemperatur-Platte + Magigoo PC + 110°C Bett + Einhausung.
  • \n
\n\n

Checkliste: Haftung versagt

\n
    \n
  • Z-Offset zu groß → Düse zu weit vom Bett → Schicht haftet nicht
  • \n
  • Bett nicht sauber → Fingerabdrücke, Fett → IPA abwischen vor jedem Druck
  • \n
  • First Layer Speed zu hoch → Keine Zeit zum Haften → auf 20–25 mm/s reduzieren
  • \n
  • Betttemperatur zu niedrig → Materialspezifische Werte prüfen
  • \n
  • Feuchtes Filament → Schlechte Schichthaftung generell → Trocknen
  • \n
  • Verwarpung (ABS/ASA) → Einhausung bauen oder Brim + 3DLAC verwenden
  • \n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/bruecken-ueberhange-drucken.html b/backup/content/posts/bruecken-ueberhange-drucken.html new file mode 100644 index 0000000..9b0b512 --- /dev/null +++ b/backup/content/posts/bruecken-ueberhange-drucken.html @@ -0,0 +1,8 @@ +--- +title: "Brücken und Überhänge drucken" +slug: "bruecken-ueberhange-drucken" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Brücken & Überhänge drucken

\n

Brücken und steile Überhänge sind für viele Drucker eine Herausforderung. Mit den richtigen Slicer-Einstellungen und etwas Verständnis für die Physik druckst du auch komplexe Geometrien ohne Supports — oder mit minimalen Supports genau dort wo sie nötig sind.

\n\n

Überhänge vs. Brücken — der Unterschied

\n
\n
\n

Überhang (Overhang)

\n

Material hängt über eine darunter liegende Fläche hinaus. Winkel ab 45° wird schwierig. Düse druckt teilweise in die Luft.

\n
\n
\n

Brücke (Bridge)

\n

Material spannt komplett frei zwischen zwei Auflagepunkten. Kein Material darunter. Schwerkraft zieht Filament nach unten.

\n
\n
\n\n

Brücken-Einstellungen im Slicer

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterEmpfehlungWarum
Bridge Speed20 – 40 mm/sLangsam = weniger Durchhang
Bridge Flow80 – 95 %Weniger Material = weniger Gewicht
Kühlerlüfter100 % beim Bridge-LayerSchnelles Erstarren verhindert Durchhang
Bridge-WinkelAutomatisch (0° / 90°)Kürzeste Brückenrichtung wählen
Temperatur beim Bridge–5 bis –10 °CKühleres Filament erstarrt schneller
Bridge Wall Count1 (nur 1 Perimeter)Mehrere Perimeter auf Bridge oft schlechter
\n\n

Überhänge verbessern

\n\n

Winkelgrenzwerte je nach Drucker

\n
    \n
  • 0–45°: Kein Problem, keine Unterstützung nötig
  • \n
  • 45–60°: Grenzbereich — gute Kühlung und Modell-Design hilft
  • \n
  • 60–75°: Meist Support nötig, oder Chamfer statt Überhang designen
  • \n
  • 75–90°: Horizontale Fläche — Bridge-Technik oder Support zwingend
  • \n
\n\n

Slicer-Optimierungen für Überhänge

\n
    \n
  • Overhang Speed reduzieren (20–30 mm/s bei steilen Winkeln)
  • \n
  • Lüfter auf 100 % ab einem bestimmten Überhangwinkel (in OrcaSlicer einstellbar)
  • \n
  • Adaptive Layer Height nutzen: dünnere Layer bei Überhängen
  • \n
  • Perimeter-Reihenfolge: Innen vor außen drucken lässt äußere Perimeter besser haften
  • \n
  • Modell drehen: Oft kann man ein Modell so orientieren, dass Überhänge minimiert werden
  • \n
\n\n

Support-Strategie für Überhänge

\n
\n
\n

Normal Support

\n

Gitterartig, einfach zu generieren. Schwer zu entfernen, hinterlässt Spuren. Gut für flache Überhänge.

\n
\n
\n

Tree / Organic Support

\n

Baumförmig, weniger Kontaktfläche. Leichter zu entfernen. Optimal für Figurinen und organische Modelle.

\n
\n
\n

Paint-on Support

\n

Manuell nur dort platzieren wo nötig. Aufwändiger, aber bestes Resultat bei komplexen Modellen.

\n
\n
\n

Kein Support (Redesign)

\n

Modell mit 45° Chamfer statt horizontaler Überhang. Oft die beste Lösung — kein Support, keine Spuren.

\n
\n
\n\n

Brücken-Länge und Materialeigenschaften

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialMax. saubere BridgeTipp
PLA60 – 80 mmBestes Bridging aller Materialien
PETG30 – 50 mmZieht Fäden, niedrigere Temp hilft
ABS / ASA40 – 60 mmEnclosure nötig für konsistente Ergebnisse
TPU20 – 30 mmSchwierig — kurze Bridges, viel Kühlung
\n\n
\n Profi-Tipp:\n Wenn du die Wahl hast — drehe das Modell so, dass Bridges kurz und parallel zur X- oder Y-Achse verlaufen. Die meisten Drucker sind in einer Richtung steifer als in der anderen. Bei Core-XY (Bambu, Voron) spielt die Richtung weniger eine Rolle als bei kartesischen Druckern.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/carbon-fiber-glasfaser-filamente.html b/backup/content/posts/carbon-fiber-glasfaser-filamente.html new file mode 100644 index 0000000..897e162 --- /dev/null +++ b/backup/content/posts/carbon-fiber-glasfaser-filamente.html @@ -0,0 +1,8 @@ +--- +title: "Carbon Fiber & Glasfaser: Hochleistungs-Filamente richtig drucken" +slug: "carbon-fiber-glasfaser-filamente" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n MOHS HÄRTE\n 7+\n \n Carbon Fiber & Glasfaser\n Hardened Steel · Abrasion · CF vs GF vs Kevlar · Anwendungen\n MATERIAL GUIDE\n\n\n

Carbon Fiber & Glasfaser: Hochleistungs-Filamente richtig drucken

\n

CF-verstärkte Filamente versprechen leichtes Gewicht bei hoher Steifigkeit — ein Traum für Funktionsteile. Aber sie verschleißen Standard-Messing-Düsen innerhalb von Stunden und brauchen spezifische Einstellungen. Dieser Guide erklärt alles Wichtige.

\n\n

Composite-Filamente im Überblick

\n\n \n \n \n \n \n \n \n \n \n
FilamentBasisEigenschaftenDüse nötig
PLA-CFPLA + 10–20% CFLeicht, steif, matt-schwarz, sprödeHardened Steel
PETG-CFPETG + 10–15% CFCF-Steifigkeit + PETG-Zähigkeit, weniger sprödeHardened Steel
PA-CF (Nylon-CF)PA12 + 15–20% CFSehr leicht, extrem steif, Highend-FDMHardened Steel, 300°C+
ABS-CF / ASA-CFABS/ASA + CFUV-beständig (ASA), formstabil bei HitzeHardened Steel
PLA-GF (Glasfaser)PLA + GlasfaserGünstiger als CF, weniger steif, aber zäherHardened Steel
Markforged OnyxNylon + Mikro-CFPremium, glatte Oberfläche, für Mark-DruckerSpezial-Extruder
\n\n

Warum Hardened Steel? — Abrasion erklärt

\n

Kohlefasern sind mit Mohs-Härte 7+ hart wie Quarz. Eine Standard-Messing-Düse (Mohs ~3) wird innerhalb von 50–100g CF-Filament messbar abgetragen. Das Ergebnis: Düsenloch wird oval, Unter-Extrusion, schlechte Druckqualität.

\n\n \n \n \n \n \n \n \n \n
Düsen-MaterialLebensdauer mit CFEmpfehlung
Messing (Standard)50–200g CF❌ Nicht für CF geeignet
Hardened Steel5–15kg CF✅ Standard für CF
Tungsten Carbide50kg+ CF✅ Profi-Anwendungen
Ruby-tip50kg+ CF✅ Premium, gut für Abrasives
Edelstahl (V2A)500g–2kg CF⚠️ Notlösung, nicht ideal
\n\n

Druckparameter nach Basis-Material

\n\n \n \n \n \n \n \n \n \n \n
ParameterPLA-CFPETG-CFPA-CFABS/ASA-CF
Drucktemperatur210–230°C240–255°C270–300°C245–265°C
Bett-Temperatur55–65°C70–80°C90–100°C100–110°C
Enclosure nötigNeinOptionalJa (60°C+)Ja
Druckgeschwindigkeit40–60mm/s30–50mm/s20–40mm/s30–50mm/s
Kühlung80–100%40–60%0–20%0–30%
Retraction0,5–1mm (DD)0,5–1mm (DD)0,5–1mm0,5–1mm
\n\n

Häufige Probleme & Lösungen

\n\n \n \n \n \n \n \n \n \n \n
ProblemUrsacheLösung
Düse verstopft (CF)Kalt gedruckt, langsam gedrucktTemperatur erhöhen, nie unter Min-Temp drucken
Spröde Teile / DelaminationFeuchtigkeit (PA-CF!), zu kaltVor dem Druck 12h bei 80°C trocknen (PA)
Schlechte Oberfläche (rau)CF-Fasern stehen herausNormal — CF ist immer rauer als Standard
StringingZu heiß, zu wenig RetractionRetraction +0,2mm, Temperatur -5°C
Ersten Schicht AblösungCF haftet schlechterPEI + höheres Bett, Z-Offset eng
Unter-ExtrusionAbgenutzte DüseDüse wechseln (Hardened Steel)
\n\n

Slicer-Tipps speziell für CF

\n
    \n
  • Wand-Linienbreite: 0,4–0,45mm bei 0,4mm-Düse — CF-Fasern brauchen Platz
  • \n
  • Flow Rate: +3–5% — CF fließt weniger als reines Filament
  • \n
  • Seam-Position: Back oder Aligned — CF-Nähte sehen sowieso rau aus
  • \n
  • Infill-Muster: Lines oder Gyroid — CF-Teile profitieren von richtungsbasiertem Infill
  • \n
  • Wand-Loops: 4–6 Wände für maximale Biegesteifigkeit
  • \n
\n\n

CF vs. GF vs. Kevlar — Wann was?

\n\n \n \n \n \n \n \n \n \n
EigenschaftCarbon Fiber (CF)Glasfaser (GF)Kevlar/Aramid
Steifigkeit⭐⭐⭐⭐⭐ Sehr hoch⭐⭐⭐ Mittel⭐⭐ Niedrig
Zähigkeit / Impact⭐⭐ Spröde⭐⭐⭐ Mittel⭐⭐⭐⭐⭐ Sehr hoch
Gewicht⭐⭐⭐⭐⭐ Leicht⭐⭐⭐ Mittel⭐⭐⭐⭐ Leicht
PreisMittel–HochGünstigSehr teuer
Typische AnwendungStrukturteile, HalterungenBauteile mit VibrationSchutzausrüstung
\n\n

Empfohlene CF-Filamente 2025/2026

\n\n \n \n \n \n \n \n \n \n
HerstellerProduktBasisPreis/kg
Bambu LabPLA-CF / PA-CFPLA / PA1225–65€
eSUNePA-CFPA635–45€
PolymakerPolyMide PA6-CFPA650–70€
3DXTechCarbonX PLA-CFPLA40–55€
PrusamentPETG-CFPETG35–50€
\n\n
\n ⚠️ Gesundheitshinweis
\n CF-Filamente erzeugen beim Drucken ultrafeine Partikel und Fasern. Immer in gut belüftetem Raum oder mit HEPA-Filter-Enclosure drucken. Schleif- und Nachbearbeitungsstaub ist besonders gefährlich — Atemschutz P2/P3 tragen.\n
\n\n
\n\n
\n\n\n diff --git a/backup/content/posts/druckbett-leveln-z-offset.html b/backup/content/posts/druckbett-leveln-z-offset.html new file mode 100644 index 0000000..534bf7f --- /dev/null +++ b/backup/content/posts/druckbett-leveln-z-offset.html @@ -0,0 +1,8 @@ +--- +title: "Druckbett leveln und Z-Offset" +slug: "druckbett-leveln-z-offset" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Druckbett leveln & Z-Offset

\n

Eine perfekt kalibrierte erste Schicht ist die Grundlage für jeden guten Druck. Egal ob manuell, mit BLTouch oder automatischem Leveling — dieser Guide erklärt alle Methoden und häufige Fehler.

\n\n

Warum ist Bed Leveling so wichtig?

\n
    \n
  • Erste Schicht zu weit weg → kein Halt, Warping, Spaghetti-Druck
  • \n
  • Erste Schicht zu nah → Düse kratzt Bett, Verstopfer, Düsenschaden
  • \n
  • Ungleichmäßiges Bett → eine Ecke haftet, andere nicht
  • \n
  • Ziel: Erster Layer gleichmäßig „gequetscht" — 75–80 % der Layer-Höhe
  • \n
\n\n

Methoden im Überblick

\n
\n
\n

Manuell (4-Punkt)

\n

Klassisch mit Papier-Methode. Günstig, keine Hardware nötig. Braucht Übung, nach Erschütterung wiederholen.

\n
\n
\n

BLTouch / CR Touch

\n

Automatisches Mesh-Leveling. Misst 16–25 Punkte, kompensiert Unebenheiten in Echtzeit. Empfehlung für alle.

\n
\n
\n

Induktiv / PEI-Sensor

\n

Bei Bambu, Prusa MK4, Voron — voll automatisch, kein manuelles Eingreifen nötig.

\n
\n
\n\n

Manuelles Leveling — Papier-Methode

\n
    \n
  1. Drucker aufheizen (Bett + Düse auf Drucktemperatur)
  2. \n
  3. Home XYZ — Düse in Home-Position fahren
  4. \n
  5. Z-Offset auf 0 setzen (oder Papier-Methode direkt nutzen)
  6. \n
  7. Blatt Papier (80 g/m²) unter die Düse schieben
  8. \n
  9. Rändelschraube drehen: Papier soll sich mit leichtem Widerstand bewegen — nicht klemmen, nicht lose
  10. \n
  11. Alle 4 Ecken und die Mitte so einstellen
  12. \n
  13. Runde wiederholen bis alle Punkte gleich sind
  14. \n
\n\n
\n Papier-Methode — Feedback:
\n Zu nah: Papier klemmt, lässt sich nicht bewegen
\n • Zu weit: Papier gleitet ohne jeglichen Widerstand
\n • Optimal: Papier zieht mit spürbarem, aber nicht starkem Widerstand
\n
\n\n

BLTouch / CR Touch einrichten

\n

Marlin (Ender, CR-10 etc.)

\n
    \n
  1. BLTouch per 5-Pin-Kabel an Mainboard anschließen (Pinbelegung je nach Board)
  2. \n
  3. In Marlin-Firmware: AUTO_BED_LEVELING_BILINEAR aktivieren
  4. \n
  5. Mesh-Größe einstellen (empfohlen: 5×5 = 25 Punkte)
  6. \n
  7. Probe-Offset (X/Y/Z) zur Düse eintragen
  8. \n
  9. Nach Flash: G28G29 (Mesh messen)
  10. \n
  11. Mesh speichern: M500
  12. \n
  13. In Start-G-Code: M420 S1 zum Mesh laden
  14. \n
\n\n

Klipper (BLTouch)

\n
\n [bltouch]
\n sensor_pin: ^PC14
\n control_pin: PA1
\n x_offset: -44
\n y_offset: -8
\n z_offset: 2.5

\n [bed_mesh]
\n speed: 120
\n mesh_min: 15, 15
\n mesh_max: 190, 190
\n probe_count: 5, 5
\n algorithm: bicubic\n
\n

Messung starten: BED_MESH_CALIBRATE in der Console. Profil speichern: BED_MESH_PROFILE SAVE=default

\n\n

Z-Offset kalibrieren

\n

Der Z-Offset ist der Abstand zwischen dem Nullpunkt des Sensors und der tatsächlichen Bettoberfläche. Er muss für jeden Drucker/Bett-Typ eingestellt werden.

\n\n

Klipper — Paper Test Methode

\n
    \n
  1. G28 — Home alle Achsen
  2. \n
  3. PROBE_CALIBRATE — Klipper fährt zur Probe-Position
  4. \n
  5. Mit TESTZ Z=-0.1 schrittweise absenken bis Papier-Methode greift
  6. \n
  7. ACCEPT — Wert bestätigen
  8. \n
  9. SAVE_CONFIG — in printer.cfg speichern
  10. \n
\n\n

Marlin — Baby Stepping

\n
    \n
  • Während des ersten Layers: Z-Offset per Display in 0.05 mm Schritten anpassen
  • \n
  • Speichern: M851 Z[wert]M500
  • \n
  • Bambu/OrcaSlicer: Calibration → First Layer Calibration
  • \n
\n\n

Erste Schicht bewerten

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
AussehenProblemLösung
Linien verschmelzen, kaum LückenOptimal
Linien einzeln sichtbar, rundZ-Offset zu hochZ-Offset verringern (–0.05 bis –0.1)
Fläche kratzt, Material verklumptZ-Offset zu niedrigZ-Offset erhöhen (+0.05 bis +0.1)
Ecken haften nicht, Mitte okBett nicht ebenManuell korrigieren oder Mesh-Leveling nutzen
Mitte hält nicht, Ecken okBett durchgebogenMesh-Leveling mit mehr Punkten (5×5)
\n\n
\n Goldene Regel:\n Levele bei Betriebstemperatur — kaltes Bett verzieht sich beim Aufheizen und macht manuelle Kalibrierung zunichte. Bei PEI-Betten: nach Reinigung mit IPA immer neu kalibrieren.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/druckzeit-vs-qualitaet.html b/backup/content/posts/druckzeit-vs-qualitaet.html new file mode 100644 index 0000000..b0e5576 --- /dev/null +++ b/backup/content/posts/druckzeit-vs-qualitaet.html @@ -0,0 +1,8 @@ +--- +title: "Druckzeit vs. Qualität" +slug: "druckzeit-vs-qualitaet" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Slicer

Druckzeit vs. Qualität — der richtige Kompromiss

Speed erhöhen ohne Qualität zu opfern — konkrete Parameterwerte.

\n

Das Grundprinzip

Druckzeit und Qualität stehen in einem direkten Spannungsverhältnis. Wer schneller druckt, riskiert Qualitätsverluste — aber nicht immer. Mit den richtigen Parametern lässt sich viel Speed herausholen ohne sichtbare Einbußen.

Die entscheidenden Parameter

ParameterQualitätsdruckSchnelldruckAuswirkung
Schichthöhe0,12–0,16mm0,24–0,30mmGrößter Zeitfaktor
Druckgeschwindigkeit40–60 mm/s150–300 mm/sStark druckerspezifisch
Infill-Dichte20–40%10–15%Bei Sichtteilen kaum sichtbar
Infill-MusterGyroidLightning/LinesLightning: minimal Material
Perimeter3–42Außenwand-Qualität

Schichthöhe: größter Hebel

Die Schichthöhe hat den größten Einfluss auf die Druckzeit. Von 0,2mm auf 0,28mm wechseln reduziert die Zeit um ~25–30% mit kaum sichtbarem Qualitätsverlust bei funktionalen Teilen.

  • Dekorative Teile, sichtbare Oberflächen → 0,12–0,16mm
  • Standard-Alltagsteile → 0,20mm (optimale Balance)
  • Schnelle Prototypen, versteckte Teile → 0,24–0,30mm
  • Grobe Prototypen → bis 0,32mm (0,4mm Düse)

Geschwindigkeit nach Bereich

  • Outer Wall: 40–80 mm/s — bestimmt Oberflächen-Qualität, nie höher
  • Inner Wall: 100–200 mm/s — unkritisch, hoher Speed OK
  • Infill: 150–350 mm/s — maximaler Speed hier
  • Top Surface: 40–80 mm/s — sichtbar, langsam drucken
  • First Layer: immer max. 30–40 mm/s

Infill-Muster wählen

  • Lightning: Minimal Material, sehr schnell — nur für nicht-tragende Teile
  • Lines/Grid: Standard, gut für die meisten Teile
  • Gyroid: Beste Stärke/Gewichts-Ratio, etwas langsamer
  • Honeycomb: Gut für Teile mit Druckbelastung

Praxis-Workflow

  1. Baseline mit aktuellem Profil drucken und Zeit notieren
  2. Schichthöhe um 0,04mm erhöhen — vergleichen
  3. Infill auf 15% setzen wenn Teil nicht-tragend ist
  4. Inner Wall Speed auf 150 mm/s, Outer Wall auf 60 mm/s lassen
  5. Immer nur 1–2 Parameter gleichzeitig ändern
\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/duesenwechsel-nozzle-upgrade.html b/backup/content/posts/duesenwechsel-nozzle-upgrade.html new file mode 100644 index 0000000..a44373a --- /dev/null +++ b/backup/content/posts/duesenwechsel-nozzle-upgrade.html @@ -0,0 +1,8 @@ +--- +title: "Düsenwechsel und Nozzle-Upgrade" +slug: "duesenwechsel-nozzle-upgrade" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Düsenwechsel & Nozzle-Upgrade

\n

Die Düse ist das günstigste Upgrade mit dem größten Einfluss auf Druckqualität und Materialkompatibilität. Dieser Guide erklärt wann du wechseln solltest, welche Düse für welchen Zweck und wie der Wechsel sicher gelingt.

\n\n

Wann die Düse wechseln?

\n
    \n
  • Verschleiß: Messing-Düsen halten ~500–1000 h PLA/PETG — danach Durchmesser vergrößert, Schärfe nimmt ab
  • \n
  • Materialwechsel: Carbon-, Glas- oder Metall-Filamente brauchen eine Hardened/Stahlnozzle
  • \n
  • Druckgrößenwechsel: Schnellere Drucke mit 0.6 mm, feinere Details mit 0.2–0.25 mm
  • \n
  • Dauerhafter Verstopfer: Kaltziehen und Nadelreinigung helfen nicht mehr → Düse wechseln
  • \n
\n\n

Düsen-Materialien im Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialGeeignet fürHaltbarkeitPreis
Messing (Brass)PLA, PETG, ABS, TPU500–1000 h1–3 €
Hardened SteelCF, Glasfaser, Metall2000+ h8–20 €
Stainless SteelLebensmittelkontakt, PLA/PETG1000–2000 h5–12 €
Ruby-TipAlles, auch abrasivSehr lang (Rubin-Einsatz)50–80 €
Kupfer/NickelHochtemperatur (PA, PC)Mittel10–25 €
\n\n

Düsengrößen — wann welche?

\n
\n
\n

0.2 mm

\n

Maximale Details, Miniaturen. Sehr langsam, verstopft leichter.

\n
\n
\n

0.4 mm ★

\n

Standard. Beste Balance aus Geschwindigkeit und Qualität. Empfehlung für 90 % aller Drucke.

\n
\n
\n

0.6 mm

\n

Schnell, stabil. Ideal für große Funktionsteile, weniger Details.

\n
\n
\n

0.8–1.0 mm

\n

Sehr schnell, grob. Für große strukturelle Teile, Vasen, wenig Auflösung.

\n
\n
\n\n

Düse wechseln — Schritt für Schritt

\n\n

Werkzeug

\n
    \n
  • Maulschlüssel oder Steckschlüssel 7 mm (MK3/Ender) oder 6 mm (Bambu)
  • \n
  • Heatblock-Schlüssel (20 mm) oder Zange mit Schutzpad
  • \n
  • PTFE-sicheres Hochtemperatur-Schmiermittel (optional)
  • \n
\n\n

Ablauf

\n
    \n
  1. Drucker aufheizen: Düse auf Drucktemperatur (PLA: 200–210 °C)
  2. \n
  3. Filament zurückziehen (manuell aus dem Hotend herausführen)
  4. \n
  5. Heatblock mit einer Hand fixieren (nicht verdrehen!)
  6. \n
  7. Alte Düse gegen den Uhrzeigersinn herausschrauben — bei Betriebstemperatur
  8. \n
  9. Neue Düse einschrauben — handfest plus ¼ Umdrehung (nicht überziehen)
  10. \n
  11. Düse muss den Heatblock berühren (kein Spalt → kein Leck)
  12. \n
  13. Abkühlen lassen, dann Nachziehen bei Raumtemperatur nicht notwendig
  14. \n
\n\n
\n Achtung:\n Niemals die Düse bei kaltem Hotend wechseln — das Filament im Heatblock verklebt und kann den Block oder PTFE-Schlauch beschädigen. Immer bei Betriebstemperatur wechseln.\n
\n\n

Nach dem Wechsel: Kalibrierung

\n
    \n
  • Z-Offset neu kalibrieren — Düsenlänge kann minimal abweichen
  • \n
  • Flow-Rate prüfen — neue Düse kann andere Eigenschaften haben
  • \n
  • Bei Düsengößenwechsel: Slicer-Profil auf neue Düse umstellen und Wandstärken/Layer-Höhe anpassen
  • \n
  • Ersten Druck überwachen: auf Leckagen an Heatblock/Düse achten
  • \n
\n\n

Abrasive Materialien — wann Hardened nötig?

\n
    \n
  • Carbon Fiber (CF): Hardened Steel Pflicht — zerstört Messing in wenigen Druckstunden
  • \n
  • Glasfaser (GF): Hardened Steel empfohlen
  • \n
  • Metall-Filamente (CopperFill etc.): Hardened oder Ruby
  • \n
  • Standard PLA/PETG/ABS/TPU: Messing reicht vollständig aus
  • \n
\n\n
\n Empfehlung:\n Halte immer 3–5 Messing-0.4mm-Düsen auf Vorrat. Sie kosten <3 € und ein frischer Tausch löst viele mysteriöse Qualitätsprobleme sofort — verschlissene Düsen sehen oft noch gut aus, liefern aber schlechte Ergebnisse.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/elefantenfuss-beheben.html b/backup/content/posts/elefantenfuss-beheben.html new file mode 100644 index 0000000..06963aa --- /dev/null +++ b/backup/content/posts/elefantenfuss-beheben.html @@ -0,0 +1,8 @@ +--- +title: "Elefantenfuß beheben" +slug: "elefantenfuss-beheben" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Elefantenfuß beheben

\n

Die erste Schicht quillt nach außen – das Modell steht auf einem breiten Sockel statt einer sauberen Basis. Dieser Guide erklärt Ursachen, Diagnose und präzise Lösungsschritte für jede Firmware und jeden Slicer.

\n\n

Was ist Elefantenfuß?

\n

Beim Elefantenfuß (englisch: Elephant Foot) wird die erste gedruckte Schicht nach außen gedrückt und bildet einen breiteren Rand als das eigentliche Modell. Das Ergebnis sieht aus wie der Fuß eines Elefanten – die Basis des Drucks ist breiter als alle darüberliegenden Schichten. Das Problem tritt typischerweise nur in den ersten 1–3 Layern auf und ist gut sichtbar bei Modellen mit geraden, senkrechten Wänden.

\n\n
\n Warum ist das ein Problem?\n

Elefantenfuß verhindert saubere Passungen, macht Teile schwer entfernbar von der Druckplatte und beeinträchtigt die Maßgenauigkeit. Bei Funktionsteilen (Gelenke, Schnittstellen) ist der Fehler oft nicht tolerierbar.

\n
\n\n

Ursachen im Überblick

\n
    \n
  • Z-Offset zu niedrig: Die Düse ist zu nah am Bett. Das Material wird seitlich verdrängt statt gleichmäßig aufgetragen.
  • \n
  • Betttemperatur zu hoch: Wärme hält das Material länger flüssig, es fließt seitlich aus.
  • \n
  • Erste Schicht zu langsam: Längere Verweilzeit bedeutet mehr Zeit zum seitlichen Fließen.
  • \n
  • Flow/Extrusion zu hoch: Zu viel Material pro mm wird extrudiert und muss irgendwo hin.
  • \n
  • Erste-Layer-Höhe zu gering: Wenn die Layer Height der ersten Schicht unter 0,15 mm liegt, ist das Risiko deutlich erhöht.
  • \n
  • Kein Kühllüfter für erste Layer: Das Material bleibt länger weich und fließt aus.
  • \n
\n\n

Diagnose-Tabelle

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
AussehenWahrscheinliche UrsacheLösung
Gleichmäßiger Rand rundum, alle Seiten betroffenZ-Offset zu niedrigZ-Offset um +0,05 mm erhöhen (Düse weiter weg vom Bett)
Rand nur auf einer Seite, Bett leicht schiefUnlevel Bett + Z-OffsetBett neu leveln, dann Z-Offset finetunen
Breiter Rand + glänzende, wabbelige Oberfläche der ersten LayerBetttemperatur zu hochBetttemperatur nach Layer 2–3 um 5–10 °C reduzieren
Breiter Rand, erste Schicht sieht „zerquetscht" ausFlow erste Schicht zu hochFirst Layer Flow auf 95 % reduzieren
Rand leicht nach außen, Rest des Drucks okErste Schicht zu langsamFirst Layer Speed auf 30–40 mm/s erhöhen, Elephant Foot Compensation aktivieren
\n\n

Schritt-für-Schritt: Z-Offset korrigieren

\n

Der Z-Offset bestimmt, wie weit die Düse von der Druckplatte entfernt ist. Ein zu niedriger Wert ist die häufigste Ursache. Hier die Vorgehensweise nach Firmware:

\n\n

Marlin (Ender, CR-10, Voron mit Marlin)

\n
\n 1. Pronterface / OctoPrint Terminal öffnen
\n 2. M503 → aktuellen Z-Offset anzeigen lassen
\n 3. M851 Z-X.XX → neuen Wert setzen (z.B. M851 Z-1.80 statt -1.90)
\n 4. M500 → in EEPROM speichern
\n 5. M501 → Werte laden und prüfen\n
\n

Faustregel: Z-Offset in Richtung positiv erhöhen = Düse weiter weg vom Bett. Schrittgröße: 0,025–0,05 mm pro Iteration.

\n\n

Klipper (Voron, Ratrig, Custom)

\n
\n # In printer.cfg oder via Mainsail/Fluidd UI:
\n [stepper_z]
\n position_endstop: X.XXX ← diesen Wert anpassen

\n # Oder per Console (live, ohne Neustart):
\n SET_GCODE_OFFSET Z=0.05 MOVE=1 ← temporär, +0.05mm höher
\n Z_OFFSET_APPLY_PROBE ← dauerhaft in Config übernehmen
\n SAVE_CONFIG\n
\n\n

Bambu Lab (X1C, P1S, A1)

\n
    \n
  • Bambu Studio → Drucker auswählen → Calibration → Lidar Calibration erneut durchführen
  • \n
  • Alternativ: Im Display → Settings → Calibration → First Layer Inspection
  • \n
  • Manueller Eingriff: Bed Mesh Leveling neu starten und anschließend einen Testdruck mit dem integrierten First-Layer-Test durchführen
  • \n
  • Für feines Tuning: Beim laufenden Druck im Display den Z-Offset Live-Adjust nutzen (+0.05 Schritte)
  • \n
\n\n

Slicer-Einstellungen: Elephant Foot Compensation

\n

Alle modernen Slicer bieten eine softwareseitige Kompensation. Diese verkleinert die erste(n) Schicht(en) geringfügig, sodass das ausgequollene Material optisch verschwindet. Sie ersetzt nicht die korrekte Z-Offset-Kalibrierung, aber ergänzt sie gut.

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SlicerEinstellungPfadEmpfohlener Wert
OrcaSlicerElephant foot compensationQuality → First layer0,1–0,2 mm
PrusaSlicerElephant foot compensationPrint Settings → Advanced0,1–0,2 mm
Bambu StudioElephant foot compensationQuality → First layer0,1 mm (Standard)
CuraInitial Layer Horizontal ExpansionShell → Horizontal Expansion-0,1 bis -0,2 mm (negativer Wert!)
\n\n
\n Achtung bei Cura:\n

In Cura wird der Wert negativ eingegeben (z.B. -0,15 mm), da positive Werte die erste Schicht vergrößern. In OrcaSlicer und PrusaSlicer wird ein positiver Wert eingetragen, der intern als Reduktion interpretiert wird.

\n
\n\n

Weitere Optimierungstipps

\n\n

Betttemperatur nach den ersten Layern senken

\n

Eine häufig unterschätzte Technik: Starte die ersten 2–3 Layer mit normaler Hafttemperatur, senke dann die Betttemperatur um 5–10 °C. Das Material härtet schneller aus und kann nicht mehr seitlich fließen.

\n
\n # Beispiel Start-G-Code Snippet (Marlin/Klipper):
\n M190 S60 ; Bett auf 60°C (PLA Hafttemperatur)
\n ; ... erste 3 Layer drucken ...
\n M140 S50 ; Bett auf 50°C senken ab Layer 4\n
\n

In OrcaSlicer/Bambu Studio kann das über Process → Temperature → Bed Temperature per Layer konfiguriert werden.

\n\n

Kühllüfter für die erste Schicht

\n
    \n
  • Standardmäßig ist der Lüfter für Layer 1 deaktiviert (wegen Haftung)
  • \n
  • Bei ausgeprägtem Elefantenfuß: Lüfter auf 20–30 % für Layer 1–3 setzen
  • \n
  • In OrcaSlicer: Cooling → Fan speed for the first X layers
  • \n
  • Vorsicht: Bei ABS, ASA, PC diesen Tipp nicht anwenden – erhöhtes Warping-Risiko
  • \n
\n\n

First Layer Speed

\n
    \n
  • Sehr langsame erste Layer (unter 20 mm/s) verschlimmern den Elefantenfuß
  • \n
  • Optimaler Bereich: 25–40 mm/s für die erste Schicht
  • \n
  • Zu schnell (über 60 mm/s) verschlechtert die Haftung
  • \n
\n\n
\n Abschlusstipp: Reihenfolge der Korrekturen\n

Gehe immer in dieser Reihenfolge vor: 1. Bett leveln → 2. Z-Offset korrigieren → 3. Betttemperatur anpassen → 4. Slicer-Kompensation aktivieren. Wer direkt mit der Slicer-Kompensation anfängt, maskiert das Problem nur, ohne es zu lösen. Korrekte Hardware-Kalibrierung ist immer die Basis.

\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/erste-schicht-kalibrieren.html b/backup/content/posts/erste-schicht-kalibrieren.html new file mode 100644 index 0000000..67cdfb3 --- /dev/null +++ b/backup/content/posts/erste-schicht-kalibrieren.html @@ -0,0 +1,8 @@ +--- +title: "Erste Schicht perfekt kalibrieren" +slug: "erste-schicht-kalibrieren" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Erste Schicht perfekt kalibrieren

\n

Die erste Schicht entscheidet über Erfolg oder Misserfolg des gesamten Drucks. Dieser Guide zeigt dir, wie du Z-Offset, Betttemperatur und First-Layer-Geschwindigkeit optimal einstellst — für jede Druckerplattform.

\n\n

Warum die erste Schicht so wichtig ist

\n

Alles beginnt auf dem Druckbett. Eine falsch kalibrierte erste Schicht führt zu:

\n
    \n
  • Haftungsproblemen und Warping
  • \n
  • Elefantenfuß (zu nah → Filament wird gequetscht)
  • \n
  • Unterextrusion in der ersten Schicht (zu weit weg → Filament hängt in der Luft)
  • \n
  • Ablösung nach wenigen Layern bei langen Drucken
  • \n
\n\n

Z-Offset: Die wichtigste Einstellung

\n

Der Z-Offset beschreibt den Abstand zwischen Düse und Druckbett beim ersten Layer. Er variiert je nach Sensor und Drucker:

\n\n
\n
\n

Zu nah (negativ)

\n

Filament wird gequetscht → Elefantenfuß, Düse kratzt über Bett, zu glatte Unterseite

\n
\n
\n

Perfekt

\n

Linie leicht gequetscht, gut haftend, saubere Übergänge, keine Lücken zwischen Bahnen

\n
\n
\n

Zu weit (positiv)

\n

Runde Filamentbahnen, Lücken, schlechte Haftung → Druck löst sich vom Bett

\n
\n
\n\n

Kalibrierung je nach Drucker-Typ

\n\n

Bambu Lab (X1C, P1S, A1)

\n
    \n
  1. Starte Calibration → First Layer Inspection im Bambu Studio oder direkt am Drucker
  2. \n
  3. Der Drucker druckt ein Live-Kalibriermuster
  4. \n
  5. Wähle per Touch-Display das beste Feld (A–J), das am gleichmäßigsten aussieht
  6. \n
  7. Bambu speichert den Offset automatisch — fertig
  8. \n
  9. Bei Textured PEI-Platte: oft −0.05 bis −0.10 mm feiner als bei glatten Platten
  10. \n
\n\n

Prusa MK3/MK4 (PINDA/SuperPINDA)

\n
    \n
  1. LCD → Calibration → First Layer Calibration
  2. \n
  3. Drucker druckt 3×3 Felder live
  4. \n
  5. Drehe an der Schraube während des Drucks: Im Uhrzeigersinn = Düse runter
  6. \n
  7. Perfekt: Bahnen sehen aus wie flache Würste, keine Lücken, keine Quetschung
  8. \n
  9. Tipp: Startwert −600 µm, in −50 µm Schritten anpassen
  10. \n
\n\n

Ender 3 / Creality (manuelles Leveling)

\n
    \n
  1. Home all axes, deaktiviere Steppers (Control → Motion → Disable)
  2. \n
  3. Schiebe einen Zettel Papier unter die Düse: 4 Ecken + Mitte einstellen
  4. \n
  5. Schraube sollte leichten Widerstand spüren — nicht blockiert, nicht zu locker
  6. \n
  7. Führe mehrere Runden durch — die Ecken beeinflussen sich gegenseitig
  8. \n
  9. Danach: Z-Offset im Slicer oder EEPROM feinjustieren
  10. \n
\n\n

Klipper (BLTouch / CR Touch / Klicky)

\n
    \n
  1. BED_MESH_CALIBRATE ausführen nach Aufheizen
  2. \n
  3. Z-Offset anpassen: PROBE_CALIBRATE Befehl
  4. \n
  5. Drucke einen Live-Kalibriertest: TESTZ Z=-0.1 für schrittweise Absenkung
  6. \n
  7. Wenn perfekt: ACCEPT → SAVE_CONFIG
  8. \n
  9. Mainsail/Fluidd bieten Live-Z-Anpassung während des Drucks
  10. \n
\n\n

Einstellungen für gute First-Layer-Haftung

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterEmpfehlungWarum
First Layer Höhe0.2–0.3 mm (100–150 % der Düse)Mehr Quetschung = bessere Haftung
First Layer Breite110–140 % Extrusion WidthBreitere Bahn = mehr Kontaktfläche
First Layer Speed15–25 mm/sLangsam = Filament haftet besser
Bed Temp PLA60 °C (PEI), 55 °C (Glas)Zu heiß = Elefantenfuß
Bed Temp PETG70–80 °CPETG braucht mehr Wärme
Kühlerlüfter0 % erste SchichtWarmes Filament haftet besser
Skirt / Brim3 Skirt-Linien oder 5 mm BrimDüse aufwärmen, Haftung verbessern
\n\n

Druckplatten-Typen und ihre Eigenschaften

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
PlatteMaterialAblösungTipp
Textured PEIPLA, PETG, TPUNach Abkühlen von selbstNicht mit Fingern anfassen
Smooth PEIPETG haftet zu starkPLA leicht lösbarTrennmittel bei PETG nötig
GlasPLA, ABSNach Abkühlen von selbstHaarspray oder Glasreiniger
Garolite / FR4Nylon, PA-CFNach AbkühlenSpezialplatte für Nylon
Buildtak / PCPC, ABS, ASASchwierig, Heißluft nötigSehr hohe Haftung
\n\n

Diagnose: Erste Schicht Probleme

\n
    \n
  • Filament haftet nicht: Z-Offset zu groß, Bett zu kalt, Bett nicht sauber, Geschwindigkeit zu hoch
  • \n
  • Elefantenfuß: Z-Offset zu klein (Düse zu nah), Bett zu heiß, Kühlerlüfter aus
  • \n
  • Lücken zwischen Bahnen: Z-Offset zu groß, Extrusion Width zu klein
  • \n
  • Druck löst sich ab: Betttemperatur sinkt während Druck, Zugluft, falsches Material für Platte
  • \n
  • Wellenförmige erste Schicht: Bett nicht eben (Bed Mesh Leveling aktivieren)
  • \n
\n\n
\n Profi-Tipp:\n Reinige das Druckbett vor jedem Druck mit IPA (90 %+). Handschweiß und Fett sind unsichtbar, aber zerstören die Haftung erheblich. Bei PEI: niemals mit Aceton reinigen — das zerstört die Beschichtung dauerhaft.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/erstes-modell-drucken.html b/backup/content/posts/erstes-modell-drucken.html new file mode 100644 index 0000000..917c794 --- /dev/null +++ b/backup/content/posts/erstes-modell-drucken.html @@ -0,0 +1,8 @@ +--- +title: "Erstes Modell drucken" +slug: "erstes-modell-drucken" +type: post +excerpt: "" +--- + +
\n\n\n
Einsteiger

Erstes Modell drucken

Von der STL-Datei bis zum fertigen Druck — der vollständige Workflow für Einsteiger.

Was du brauchst

Checkliste: Drucker mit kalibriertem Bett · PLA-Filament (1,75mm) · Slicer-Software (OrcaSlicer empfohlen) · STL-Datei deines Modells

Schritt-für-Schritt

  1. STL-Datei finden — Printables.com oder MakerWorld. Für den ersten Druck: einen einfachen Würfel oder einen Benchy (Kalibrierdruck) wählen.
  2. Slicer installieren — OrcaSlicer herunterladen und installieren. Dein Druckerprofil auswählen (die meisten gängigen Drucker sind vorinstalliert).
  3. Modell importieren — STL-Datei in den Slicer ziehen. Das Modell wird automatisch auf der Druckplatte platziert.
  4. Profil wählen — Für den ersten Druck: Standard-Qualitätsprofil (0,2mm Schichthöhe, 15% Infill). Filamenttyp auf PLA setzen.
  5. Slicen — Auf "Slice" klicken. Der Slicer zeigt Druckzeit, Materialverbrauch und eine Vorschau der Layerpfade.
  6. Auf Drucker übertragen — Per USB-Stick, SD-Karte oder direkt via WLAN (Bambu/Prusa Connect). Datei als .gcode oder .3mf speichern.
  7. Druck starten — Drucker vorheizen lassen, Bett leveln (bei neuen Druckern: Auto-Leveling abwarten), dann Druck starten.
  8. Ersten Layer beobachten — Die erste Schicht ist entscheidend. Sie soll glatt, gleichmäßig und gut haftend sein. Wenn nicht: Z-Offset anpassen.

Optimale Einstellungen für PLA (Erster Druck)

  • Düsentemperatur: 210°C (Startwert, nach Hersteller anpassen)
  • Betttemperatur: 60°C
  • Schichthöhe: 0,2mm
  • Infill: 15–20% (für Deko-Teile), 40%+ für Funktionsteile
  • Druckgeschwindigkeit: 50mm/s (Einsteiger), 100mm/s (mit Erfahrung)
  • Kühlung: 80–100% Fan ab Layer 3
Tipp: Benchy drucken\\\\! Der 3DBenchy ist das Standard-Kalibriermodell der Community. An ihm sieht man sofort, ob Stringing, Warping, Überhänge oder Brücken Probleme machen. Kostenlos auf Printables.com.

Häufige Probleme beim ersten Druck

  • Druck haftet nicht → Bett reinigen (Isopropanol), Z-Offset erhöhen, Betttemp auf 65°C
  • Stringing → Temperatur um 5°C senken, Retraction aktivieren
  • Schichten lösen sich ab → Temperatur erhöhen, Druckspeed reduzieren
  • Warping an Ecken → Brim hinzufügen (5–10mm), Zugluft vermeiden
  • Unter-Extrusion (Lücken) → Extruder-Kalibrierung, Flow-Rate prüfen
Nächste Schritte: Nach dem ersten erfolgreichen Druck empfehlen wir den PLA-Einstellungs-Guide und den Stringing-Guide.

Bereit für mehr?

Entdecke alle Guides für Einsteiger und Fortgeschrittene.

\n
diff --git a/backup/content/posts/flow-rate-e-steps-kalibrieren.html b/backup/content/posts/flow-rate-e-steps-kalibrieren.html new file mode 100644 index 0000000..9b86fa1 --- /dev/null +++ b/backup/content/posts/flow-rate-e-steps-kalibrieren.html @@ -0,0 +1,8 @@ +--- +title: "Flow-Rate und E-Steps kalibrieren" +slug: "flow-rate-e-steps-kalibrieren" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Flow-Rate & E-Steps kalibrieren

\n

E-Steps und Flow-Rate sind die Grundlage jedes präzisen Drucks. Falsch kalibriert führt alles andere zu schlechten Ergebnissen — egal wie gut die anderen Einstellungen sind. Dieser Guide zeigt die exakte Vorgehensweise in 3 Schritten.

\n\n

E-Steps vs. Flow-Rate — was ist was?

\n
\n
\n

E-Steps (steps/mm)

\n

Wie viele Motor-Schritte = 1 mm Filament. Hardware-Wert, gilt für alle Materialien. Einmal kalibrieren, selten ändern. In Firmware gespeichert.

\n
\n
\n

Flow-Rate / Extrusion Multiplier

\n

Prozentualer Multiplikator im Slicer. Material-spezifisch (PLA 100 %, PETG 95 % etc.). Kompensiert Durchmesserabweichungen des Filaments.

\n
\n
\n\n

Schritt 1: E-Steps kalibrieren

\n

Die E-Steps kalibrierst du einmal pro Extruder und änderst sie danach kaum noch.

\n\n

Vorbereitung

\n
    \n
  1. Drucker aufheizen (Düse auf Drucktemperatur — Filament muss fließen können)
  2. \n
  3. Filament einlegen und durchpurgen bis sauberes Material kommt
  4. \n
  5. 100 mm vom Extruder-Eingang markieren (Edding oder Klebeband)
  6. \n
  7. Aktuellen E-Steps-Wert notieren: M503 → suche nach M92 E[wert]
  8. \n
\n\n

Messung

\n
    \n
  1. G-Code senden: G91 (relative Positionierung)
  2. \n
  3. 100 mm extrudieren: G1 E100 F100
  4. \n
  5. Warte bis Motor stoppt, messe die Restlänge bis zur Markierung
  6. \n
  7. Tatsächlich extrudiert = 100 mm − gemessene Restlänge
  8. \n
  9. Neuer E-Steps = Alter Wert × (100 ÷ tatsächlich extrudiert)
  10. \n
\n\n

Rechenbeispiel

\n
\n

Alter E-Steps: 420

\n

Markierung nach Extrusion noch: 7 mm entfernt

\n

Tatsächlich extrudiert: 100 − 7 = 93 mm

\n

Neuer E-Steps: 420 × (100 ÷ 93) = 451.6

\n
\n\n

Speichern

\n
    \n
  • Marlin: M92 E451.6M500 (EEPROM speichern)
  • \n
  • Klipper: In printer.cfg unter [extruder] → rotation_distance anpassen
  • \n
  • Bambu / OrcaSlicer: Calibration → Flow Rate (eigener Workflow)
  • \n
  • Test 2–3 Mal wiederholen bis Messung auf ±1 mm genau
  • \n
\n\n

Schritt 2: Flow-Rate / Extrusion Multiplier kalibrieren

\n

Nach den E-Steps kalibrierst du den Flow für jedes Material separat. Methode: Single-Wall Würfel.

\n\n

Single-Wall Cube Methode

\n
    \n
  1. Drucke einen 20 mm Würfel mit 1 Perimeter, 0 % Infill, 0 Top/Bottom Layers
  2. \n
  3. Nur die Außenwand wird gedruckt (eine einzige Schicht dick)
  4. \n
  5. Messe die Wanddicke an mehreren Stellen mit einem Messschieber
  6. \n
  7. Zielwert = Düsendurchmesser (0.4 mm Düse → 0.4 mm Wand)
  8. \n
  9. Flow-Rate anpassen: Neuer Flow = Alter Flow × (Ziel ÷ gemessen)
  10. \n
\n\n
\n

Gemessene Wanddicke: 0.44 mm bei 0.4 mm Düse

\n

Alter Flow: 100 %

\n

Neuer Flow: 100 × (0.40 ÷ 0.44) = 90.9 % → auf 91 % runden

\n
\n\n

Schritt 3: Filament-Durchmesser messen

\n

Oft unterschätzter Faktor: Günstiges Filament schwankt im Durchmesser erheblich.

\n
    \n
  • Messe den Durchmesser an 5+ Stellen über 50 cm Filament
  • \n
  • Bilde den Durchschnitt und trage ihn im Slicer ein (Standard: 1.75 mm)
  • \n
  • Abweichung von ±0.05 mm = bis zu 6 % Volumenunterschied
  • \n
  • Qualitäts-Filament (Prusament, Polymaker): ±0.02 mm Toleranz
  • \n
  • Budget-Filament: bis ±0.10 mm → Flow manuell anpassen
  • \n
\n\n

Flow-Richtwerte nach Material

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialStartwertTypische Anpassung
PLA100 %98 – 102 %
PETG95 %92 – 97 %
ABS / ASA100 %97 – 103 %
TPU98 %95 – 100 %
PA / Nylon100 %98 – 105 %
\n\n
\n Reihenfolge beachten:\n Immer erst E-Steps kalibrieren (einmalig, Hardware), dann Flow-Rate pro Material einstellen. Nie beide gleichzeitig anpassen — sonst weißt du nicht was was verursacht.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/fuzzy-skin-strukturierte-oberflaechen.html b/backup/content/posts/fuzzy-skin-strukturierte-oberflaechen.html new file mode 100644 index 0000000..e1e6f2c --- /dev/null +++ b/backup/content/posts/fuzzy-skin-strukturierte-oberflaechen.html @@ -0,0 +1,8 @@ +--- +title: "Fuzzy Skin: Strukturierte Oberflächen drucken" +slug: "fuzzy-skin-strukturierte-oberflaechen" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Glatt\n \n \n Fuzzy Skin\n \n \n Fuzzy Skin\n Strukturierte Oberflächen ohne Nachbearbeitung\n SLICER GUIDE\n\n\n

Fuzzy Skin: Strukturierte Oberflächen drucken

\n

Fuzzy Skin ist eine Slicer-Funktion, die die Außenwände mit einem zufälligen oder gemusterten Offset druckt — dadurch entsteht eine rauhe, textile oder strukturierte Oberfläche ohne Sandpapier oder Nachbearbeitung.

\n\n

Was macht Fuzzy Skin?

\n

Statt gerade Linien zu drucken, versetzt der Slicer die Extruderdüse während des Außenwand-Drucks in kleinen Schritten seitwärts. Das Ergebnis: eine absichtlich unregelmäßige, strukturierte Oberfläche. Der Effekt ist vergleichbar mit Sandstein, Holzmaserung oder strukturiertem Kunststoff.

\n\n

Fuzzy Skin in OrcaSlicer aktivieren

\n
    \n
  1. Tab Quality → Fuzzy Skin öffnen
  2. \n
  3. Fuzzy Skin Type: Outer Wall (empfohlen) oder All Walls
  4. \n
  5. Fuzzy Skin Thickness: Wie weit die Düse seitwärts ausbricht (Standard: 0,3 mm)
  6. \n
  7. Fuzzy Skin Point Distance: Abstand zwischen Auslenkungspunkten (Standard: 0,8 mm)
  8. \n
  9. Slicen — Außenwände erhalten automatisch den Fuzzy-Effekt
  10. \n
\n\n

Fuzzy Skin in PrusaSlicer

\n
    \n
  1. Print Settings → Layers and Perimeters → Fuzzy Skin
  2. \n
  3. Typ: Outside walls / All walls
  4. \n
  5. Thickness und Point Distance wie oben
  6. \n
\n\n

Fuzzy Skin in Bambu Studio

\n
    \n
  1. Quality → Fuzzy Skin — identisch zu OrcaSlicer (gleiche Engine)
  2. \n
  3. Für den X1C/P1P empfehlenswert: Thickness 0,25 mm, Point Distance 0,6 mm
  4. \n
\n\n

Parameter-Übersicht

\n\n \n \n \n \n \n \n \n
ParameterKlein (fein)StandardGroß (grob)
Thickness (Tiefe)0,1–0,2 mm0,3 mm0,5–0,8 mm
Point Distance (Frequenz)0,4–0,6 mm0,8 mm1,2–2,0 mm
EffektFein, fast glattGut sichtbar, gleichmäßigSehr rau, ungleichmäßig
Druckzeit+5%+10–15%+20–30%
\n\n

Ideale Materialien für Fuzzy Skin

\n\n \n \n \n \n \n \n \n \n
MaterialEignungEmpfehlung
PLASehr gutIdeal für erste Tests — günstig, präzise
PETGGutEtwas fließfähiger — leicht andere Textur als PLA
TPUGutFuzzy Skin + Flex = sehr angenehme Griffoberfläche
ASA/ABSMittelWarping kann Fuzzy-Muster stören
Wood/Stone PLAExzellentKombination aus Füllstoff-Textur + Fuzzy = sehr natürlich
\n\n

Anwendungsbeispiele

\n
    \n
  • Griffe & Knöpfe: Bessere Griffigkeit ohne Gummibeschichtung
  • \n
  • Gehäuse & Boxen: Hochwertigeres Aussehen, Fingerabdrücke weniger sichtbar
  • \n
  • Dekoobjekte: Natürlicher Stein- oder Holzoptik-Effekt
  • \n
  • Organische Formen: Skulpturen wirken weniger "plastisch"
  • \n
  • Cosplay-Requisiten: Verwitterungs- oder Kampfschaden-Optik
  • \n
\n\n

Tipps & Fallstricke

\n
    \n
  • Fuzzy Skin erhöht den Außendurchmesser leicht — bei Passgenauigkeit (z.B. Steckverbindungen) Außenfläche von Fuzzy Skin ausschließen oder Toleranz einplanen
  • \n
  • Dicke Schichten (0,3 mm) + Fuzzy Skin = noch markantere Textur
  • \n
  • Bei Bowden-Extruder: kleinere Thickness wählen (Oozing kann Muster verfälschen)
  • \n
  • Fuzzy Skin deaktivieren auf Flächen die verklebt oder verschraubt werden
  • \n
  • Combo mit Ironing auf Top-Layer: Rauhe Seiten + glatte Oberfläche
  • \n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/gridfinity-ordnungssystem.html b/backup/content/posts/gridfinity-ordnungssystem.html new file mode 100644 index 0000000..3c46801 --- /dev/null +++ b/backup/content/posts/gridfinity-ordnungssystem.html @@ -0,0 +1,8 @@ +--- +title: "Gridfinity: Das modulare Ordnungssystem" +slug: "gridfinity-ordnungssystem" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Gridfinity\n Das modulare Ordnungssystem für Werkstatt & Schreibtisch\n EINSTEIGER GUIDE\n\n\n

Gridfinity: Das modulare Ordnungssystem

\n

Gridfinity ist ein offenes, modulares Raster-System für Schubladen und Regale — entwickelt von Zack Freedman. Jede Box rastet magnetisch oder durch Reibung in eine Bodenplatte ein. Das Ergebnis: perfekt organisierte Werkzeug-, Filament- und Büroschubladen, die sich beliebig erweitern lassen.

\n\n

Wie funktioniert Gridfinity?

\n

Das System basiert auf einem 42mm×42mm Raster. Jede Box hat:

\n
    \n
  • Eine Bodenplatte (Baseplate) mit Magnetaufnahmen oder Reibungsprofil
  • \n
  • Eine Box/Bin — 1×1, 2×1, 3×2 oder beliebige Größen im 42mm-Raster
  • \n
  • Optionale Einsätze (Inserts) für Schrauben, Bits, Pinsel, Fräser etc.
  • \n
\n

Alles ist Open Source und auf Printables, MakerWorld und Thingiverse verfügbar. Tausende kompatible Bins von der Community.

\n\n

Erste Schritte — was du drucken musst

\n
    \n
  1. Bodenplatte messen: Schublade oder Regal ausmessen → Gridfinity-Raster berechnen
    \n Formel: Breite ÷ 42mm = Anzahl Spalten (auf ganze Zahl abrunden)
  2. \n
  3. Baseplate drucken: Gridfinity Rebuilt (OpenSCAD) — parametrisch, jede Größe möglich
  4. \n
  5. Bins auswählen: Auf Printables nach "Gridfinity" suchen → über 10.000 kompatible Modelle
  6. \n
  7. Drucken & einrasten — fertig
  8. \n
\n\n

Druckeinstellungen für Gridfinity

\n\n \n \n \n \n \n \n \n \n \n
ParameterEmpfehlungWarum
Schichtdicke0,2 mmSaubere Kanten, Rastergenauigkeit
Infill15–20%Bins müssen nicht massiv sein
Wanddicke3–4 WändeStabilität für schwere Teile
MaterialPLA oder PETGPLA für Schubladen, PETG für Werkstatt
SupportKeinerGridfinity-Designs sind support-frei
BrimOptional (3–5mm)Bei Baseplates für bessere Haftung
\n\n

Magnete einsetzen (optional)

\n

Die meisten Baseplates haben Aufnahmen für 6×2mm Neodym-Magnete. Ablauf:

\n
    \n
  1. Druck pausieren wenn Magnetaufnahme erreicht ist (Höhen-Pause in OrcaSlicer/PrusaSlicer)
  2. \n
  3. Magnet mit Sekundenkleber einsetzen — Polarität prüfen (alle gleich ausrichten!)
  4. \n
  5. Druck fortsetzen
  6. \n
\n

Tipp: Ohne Magnete funktioniert Gridfinity auch per Reibungsfit — besonders auf PEI oder texturierten Baseplates.

\n\n

Die besten Gridfinity-Ressourcen

\n\n \n \n \n \n \n \n \n
RessourceBeschreibungLink
Gridfinity RebuiltParametrische Baseplates + Bins in OpenSCADPrintables #417152
Gridfinity ExtendedErweiterte Bin-Varianten (Labeling, Divider)Printables Suche
Gridfinity CatalogCommunity-Katalog aller kompatiblen Modellegridfinity-catalog.com
Zack Freedman YouTubeOriginal-Video + UpdatesYouTube "Gridfinity"
\n\n

Anwendungsbeispiele

\n
    \n
  • Werkzeugschublade: Bits, Inbusschlüssel, Zangen — je ein Bin pro Typ
  • \n
  • 3D-Druck-Zubehör: Schleifpapier, Pinzetten, Spachtel, IPA-Flasche
  • \n
  • Schreibtisch: Stifte, Karten, USB-Sticks, Kabel
  • \n
  • Elektronik: Widerstände, LEDs, Kondensatoren — Einsätze mit Beschriftung
  • \n
  • Küche: Gewürzboxen, Teesortierer (PETG für Feuchtigkeitsresistenz)
  • \n
\n\n

Profi-Tipps

\n
    \n
  • Zuerst eine Baseplate drucken und testen bevor du 20 Stück druckst
  • \n
  • Bin-Labeling: OrcaSlicer Filament-Wechsel auf Layer X → farbige Beschriftungsschicht
  • \n
  • Große Bins (3×3+) in PETG drucken — steifer und formstabiler
  • \n
  • Online-Konfiguratoren: gridfinity-generator.com — Custom-Bins ohne CAD
  • \n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/guide-1-pla-perfekt-einstellen-2026-03-25.html b/backup/content/posts/guide-1-pla-perfekt-einstellen-2026-03-25.html new file mode 100644 index 0000000..6db87f2 --- /dev/null +++ b/backup/content/posts/guide-1-pla-perfekt-einstellen-2026-03-25.html @@ -0,0 +1,8 @@ +--- +title: "Guide #1: PLA perfekt einstellen (2026-03-25)" +slug: "guide-1-pla-perfekt-einstellen-2026-03-25" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
\n

PLA perfekt einstellen

\n

So findest du saubere Oberfl\\\\u00e4chen und stabile Layer mit PLA.

\n

Schnellstart

\n
    \n
  • Mit Standardprofil starten und nur 1\\\\u20132 Parameter pro Test \\\\u00e4ndern.
  • \n
  • Kurzen Testdruck verwenden (Kalibrierw\\\\u00fcrfel / kleines Funktionsteil).
  • \n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \n
\n

Praxis-Workflow

\n
    \n
  1. Baseline-Druck mit aktuellem Profil.
  2. \n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\\\u00dfhaltigkeit).
  4. \n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \n
  7. Erneut testen und mit Baseline vergleichen.
  8. \n
\n

Typische Fehler

\n
    \n
  • Zu viele Parameter gleichzeitig ver\\\\u00e4ndern.
  • \n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \n
  • Ungeeignete Testobjekte nutzen.
  • \n
\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\\\u00e4glichen Wissens-Serie.

\n
\n\n\n
diff --git a/backup/content/posts/guide-1-warping-vermeiden-2026-03-26.html b/backup/content/posts/guide-1-warping-vermeiden-2026-03-26.html new file mode 100644 index 0000000..8c5ca46 --- /dev/null +++ b/backup/content/posts/guide-1-warping-vermeiden-2026-03-26.html @@ -0,0 +1,8 @@ +--- +title: "Guide #1: Warping vermeiden (2026-03-26)" +slug: "guide-1-warping-vermeiden-2026-03-26" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n\\n
\\n

Warping vermeiden

\\n

First Layer, Bett-Haftung, Brim und Geh\\u00e4use sinnvoll einsetzen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n\n
\n\n\n diff --git a/backup/content/posts/guide-2-petg-ohne-frust-2026-03-26.html b/backup/content/posts/guide-2-petg-ohne-frust-2026-03-26.html new file mode 100644 index 0000000..b412219 --- /dev/null +++ b/backup/content/posts/guide-2-petg-ohne-frust-2026-03-26.html @@ -0,0 +1,8 @@ +--- +title: "Guide #2: PETG ohne Frust (2026-03-26)" +slug: "guide-2-petg-ohne-frust-2026-03-26" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n\\n
\\n

PETG ohne Frust

\\n

Startwerte, typische Fehler und schnelle Korrekturen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n\n
\n\n\n diff --git a/backup/content/posts/guide-2-stringing-reduzieren-2026-03-25.html b/backup/content/posts/guide-2-stringing-reduzieren-2026-03-25.html new file mode 100644 index 0000000..520ae37 --- /dev/null +++ b/backup/content/posts/guide-2-stringing-reduzieren-2026-03-25.html @@ -0,0 +1,8 @@ +--- +title: "Guide #2: Stringing reduzieren (2026-03-25)" +slug: "guide-2-stringing-reduzieren-2026-03-25" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Strategien im Praxischeck.

\n

Schnellstart

\n
    \n
  • Mit Standardprofil starten und nur 1\\\\u20132 Parameter pro Test \\\\u00e4ndern.
  • \n
  • Kurzen Testdruck verwenden (Kalibrierw\\\\u00fcrfel / kleines Funktionsteil).
  • \n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \n
\n

Praxis-Workflow

\n
    \n
  1. Baseline-Druck mit aktuellem Profil.
  2. \n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\\\u00dfhaltigkeit).
  4. \n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \n
  7. Erneut testen und mit Baseline vergleichen.
  8. \n
\n

Typische Fehler

\n
    \n
  • Zu viele Parameter gleichzeitig ver\\\\u00e4ndern.
  • \n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \n
  • Ungeeignete Testobjekte nutzen.
  • \n
\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\\\u00e4glichen Wissens-Serie.

\n
\n\n\n
diff --git a/backup/content/posts/guide-bambu-studio.html b/backup/content/posts/guide-bambu-studio.html new file mode 100644 index 0000000..09e5004 --- /dev/null +++ b/backup/content/posts/guide-bambu-studio.html @@ -0,0 +1,8 @@ +--- +title: "Bambu Studio: Einsteiger bis Fortgeschrittene" +slug: "guide-bambu-studio" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Bambu Studio: Einsteiger bis Fortgeschrittene

\n

Bambu Studio ist der offizielle Slicer für Bambu Lab Drucker (X1C, P1S, A1 etc.) – basiert auf OrcaSlicer und bietet Cloud-Printing, Multi-Color und vollständige AMS-Integration.

\n\n

Drucker-Modi: welcher ist der richtige?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ModusVerbindungWann nutzen
Cloud ModeInternet → Bambu CloudEinfachster Einstieg, Login erforderlich
LAN ModeLokales NetzwerkKein Internet nötig, mehr Kontrolle
Developer ModeVollständiger LAN-ZugriffOctoPrint/Klipper-ähnliche Kontrolle, SSH
\n\n

Druckqualitätsstufen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ProfilSchichtdickeEinsatz
High Quality (0.08 mm)0.08 mmFiguren, Miniatures, Präzisionsteile
Optimal (0.16 mm)0.16 mmGute Qualität, akzeptable Druckzeit
Standard (0.20 mm)0.20 mmAllzweck, beste Balance
Draft (0.28 mm)0.28 mmPrototypen, schnelle Tests
Extra Draft (0.35 mm)0.35 mmGrößte Objekte, max. Geschwindigkeit
\n\n

AMS (Automatic Material System)

\n

Das AMS ermöglicht Multi-Color-Druck mit bis zu 4 (oder 16 beim AMS Combo) Filamenten:

\n
    \n
  1. Filament-Slots im AMS beladen (Spool richtig einlegen)
  2. \n
  3. Im Slicer: Filament-Panel rechts → Slots zuweisen
  4. \n
  5. Paint-Tool nutzen um Modellflächen einzufärben
  6. \n
  7. Purge-Volumen prüfen – bei dunklen nach hellen Farben erhöhen (60–80 mm³)
  8. \n
  9. Prime Tower aktivieren für konsistente Farbwechsel
  10. \n
\n\n

Versteckte Features in Bambu Studio

\n
\n
\n

Variable Layer Height

\n

Manuell oder automatisch – feine Layer wo es darauf ankommt, grobe Layer für Füllbereiche

\n
\n
\n

Seam Control

\n

Naht ausblenden: Aligned, Rear, Nearest oder manuell per Paint-Tool platzieren

\n
\n
\n

Support Painting

\n

Genau steuern wo Supports entstehen – nur da wo sie wirklich nötig sind

\n
\n
\n

Flush into Objects

\n

Purge-Material in Infill oder Stützen eindrucken statt in Prime Tower

\n
\n
\n

Timelapse

\n

X1C/P1S: Automatischer Timelapse per Kamera – Druckfortschritt aufzeichnen

\n
\n
\n

3D Scan Repair

\n

Beschädigte STL-Meshes beim Import automatisch reparieren lassen

\n
\n
\n\n

Kalibrierung in Bambu Studio

\n

Bambu Studio enthält den selben Kalibrier-Wizard wie OrcaSlicer:

\n
    \n
  1. Calibration → Flow Rate – für neues Filament oder neue Marke
  2. \n
  3. Calibration → Pressure Advance – nach Düsenwechsel
  4. \n
  5. Calibration → Input Shaping (X1C/P1S) – automatisch per Beschleunigungssensor
  6. \n
  7. Calibration → Full Calibration – bei erstem Einrichten empfohlen
  8. \n
\n\n

Cloud vs. LAN: Setup-Unterschiede

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
FunktionCloudLAN
Fernsteuerung✓ von überallNur im Heimnetz
DatenschutzDaten auf Bambu-Servern✓ Komplett lokal
Kamera-Stream
MakerWorld Integration✓ Direkt druckenManueller Download
\n\n
\n Tipp:\n Bambu Studio und OrcaSlicer teilen das gleiche Profil-Format. Du kannst OrcaSlicer-Profile direkt in Bambu Studio importieren und umgekehrt – ideal um Einstellungen zwischen verschiedenen Druckern zu synchronisieren.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/guide-cura-tipps.html b/backup/content/posts/guide-cura-tipps.html new file mode 100644 index 0000000..7202e50 --- /dev/null +++ b/backup/content/posts/guide-cura-tipps.html @@ -0,0 +1,8 @@ +--- +title: "Cura: Tipps & versteckte Einstellungen" +slug: "guide-cura-tipps" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Ultimaker Cura: Tipps & versteckte Einstellungen

\n

Cura ist der meistgenutzte Slicer weltweit – aber viele seiner mächtigsten Features sind standardmäßig ausgeblendet. Dieser Guide zeigt dir, wie du aus Cura das Maximum herausholst.

\n\n

Einstellungen sichtbar machen

\n

Cura versteckt viele Parameter. So aktivierst du alle:

\n
    \n
  1. Preferences → Configure Cura → Settings öffnen
  2. \n
  3. Show all settings aktivieren
  4. \n
  5. Alternativ: In den Einstellungen das 🔍-Symbol nutzen und direkt nach Parametern suchen
  6. \n
  7. Wichtig: Einstellungen mit ⚙️ sind per Rechtsklick als "sichtbar" markierbar
  8. \n
\n\n

Empfohlene Einstellungen für PLA

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterWertCura-Kategorie
Layer Height0.2 mmQuality
Wall Count3Shell
Top/Bottom Layers4Shell
Infill Density20 %Infill
Print Temp210 °CMaterial
Bed Temp60 °CMaterial
Print Speed50 mm/sSpeed
Retraction Distance5–7 mm (Bowden), 0.5–2 mm (DD)Travel
Retraction Speed45 mm/sTravel
Fan Speed100 %Cooling
\n\n

Versteckte Power-Features

\n\n
\n
\n

Adaptive Layer Height

\n

Passt Schichtdicke automatisch an Geometrie an – weniger Zeit, bessere Kurven

\n
\n
\n

Ironing

\n

Poliert Deckflächen nach dem Drucken – perfekte Oberfläche ohne Schleifen

\n
\n
\n

Coasting

\n

Stoppt Extrusion kurz vor Konturende – reduziert Blobs an Nahtpunkten

\n
\n
\n

Wipe while Retract

\n

Düse fährt beim Retract über vorherigen Pfad – weniger Stringing

\n
\n
\n

Fuzzy Skin

\n

Außenwand mit zufälliger Rauheit – interessante Textureffekte\n

\n
\n

Modifier Meshes

\n

Einstellungen für bestimmte Zonen im Modell – z.B. höherer Infill nur im Gelenk

\n
\n
\n\n

Support-Einstellungen in Cura

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EinstellungEmpfehlungGrund
Support StructureTree (Experimental)Weniger Material, besser ablösbar
Support Overhang Angle50–55°Weniger unnötige Stützen
Support Z Distance0.2–0.25 mmLeichtere Ablösung
Support InterfaceAktivierenGlattere Support-Oberfläche
\n\n

Plugins & Marketplace

\n

Cura lässt sich über Marketplace (Shift+Ctrl+P) erweitern:

\n
    \n
  • Auto-Orientation – dreht Modell automatisch in beste Druckposition
  • \n
  • Calibration Shapes – druckt Test-Objekte direkt aus Cura heraus
  • \n
  • MeshInspector – zeigt problematische Stellen im 3D-Modell
  • \n
  • OctoPrint Connection – sendet Prints direkt an OctoPrint/Mainsail/Fluidd
  • \n
\n\n
\n Profil-Tipp:\n Erstelle für jedes Filament ein eigenes Profil unter Preferences → Profiles → Duplicate. Benenne es nach Marke und Farbe (z.B. "Bambu PLA Basic Schwarz"). Nie das Standard-Profil überschreiben!\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/guide-orcaslicer-einsteiger.html b/backup/content/posts/guide-orcaslicer-einsteiger.html new file mode 100644 index 0000000..ec113fb --- /dev/null +++ b/backup/content/posts/guide-orcaslicer-einsteiger.html @@ -0,0 +1,8 @@ +--- +title: "OrcaSlicer: Vollständiger Einsteiger-Guide" +slug: "guide-orcaslicer-einsteiger" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

OrcaSlicer: Vollständiger Einsteiger-Guide

\n

OrcaSlicer ist der mächtigste kostenlose Slicer für FDM-Druck – mit eingebauten Kalibrier-Tools, multi-color Support und Bambu-Kompatibilität. Dieser Guide führt dich von der Installation bis zum perfekten ersten Druck.

\n\n

Installation & erste Einrichtung

\n

OrcaSlicer ist kostenlos unter github.com/SoftFever/OrcaSlicer verfügbar (Windows, macOS, Linux).

\n\n

Drucker hinzufügen

\n
    \n
  1. Beim Start: Add Printer wählen
  2. \n
  3. Hersteller auswählen (z.B. Bambu Lab, Creality, Prusa, Voron, generisch)
  4. \n
  5. Bei generischem Drucker: Bettgröße, Düsendurchmesser und max. Druckvolumen eingeben
  6. \n
  7. Konfiguration kann später unter Printer Settings angepasst werden
  8. \n
\n\n

Benutzeroberfläche verstehen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
BereichFunktion
Linke LeisteObjekte hinzufügen, anordnen, skalieren, schneiden
Rechtes PanelDruckerauswahl, Filament, Prozess-Profil
Prozess-TabAlle Slicing-Einstellungen (Quality, Strength, Speed)
Calibration-MenüEingebaute Kalibrier-Wizards für Flow, PA, Temperatur
Preview-TabLayer-Ansicht, Geschwindigkeits- und Volumenstrom-Heatmap
\n\n

Wichtigste Einstellungen für Anfänger

\n\n

Prozess-Profil: Quality

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterPLA-EmpfehlungWirkung
Layer Height0.2 mmSchichtdicke, beeinflusst Qualität & Druckzeit
First Layer Height0.2 mmGleich oder leicht größer als Layerhöhe
Walls (Perimeter)3–4Außenwände, mehr = stabiler
Top/Bottom Layers4–5Decklagen, mehr = glattere Oberfläche
Infill Density15–20 %Füllung, für Funktionsteile ≥ 40 %
Infill PatternGrid / GyroidGrid schnell, Gyroid isotrop-stabil
\n\n

Eingebaute Kalibrier-Wizards

\n

OrcaSlicer bietet als einziger kostenloser Slicer vollständige, geführte Kalibrierungen:

\n\n
\n
\n

Flow Rate

\n

Druckt Testobjekte und führt dich durch Über-/Unter-Extrusion

\n
\n
\n

Pressure Advance

\n

Kalibriert Filament-Druckaufbau beim Beschleunigen

\n
\n
\n

Temperatur-Turm

\n

Ermittelt optimale Drucktemperatur per Einzeldruck

\n
\n
\n

Retraction Test

\n

Findet optimalen Retract-Wert für dein Setup

\n
\n
\n\n

Kalibrier-Workflow: Schritt für Schritt

\n
    \n
  1. Calibration → Flow Rate (Coarse) – grobe Flow-Kalibrierung, Wert anpassen
  2. \n
  3. Calibration → Flow Rate (Fine) – feine Anpassung, ±5 % Bereich
  4. \n
  5. Calibration → Pressure Advance – PA-Wert im Filamentprofil speichern
  6. \n
  7. Calibration → Temperature – Temperaturturm, bestes Layer-Aussehen notieren
  8. \n
  9. Filamentprofil speichern – Werte im Filament-Preset hinterlegen
  10. \n
\n\n

Support-Einstellungen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
TypWann nutzenEinstellung
Normal (Auto)Standard-Überhänge > 45°Support → Normal, Threshold 40°
Snug (Tree)Organische Formen, leichte EntfernungSupport → Tree, Style Organic
Manuell (Paint-On)Nur spezifische Flächen stützenSupport Painter → Brush auf Fläche
\n\n

Profil exportieren & teilen

\n
    \n
  1. Prozess-Profil anpassen und testen
  2. \n
  3. File → Export → Export Config Bundle
  4. \n
  5. Datei enthält Drucker + Filament + Prozess-Profile
  6. \n
  7. Kann per OrcaSlicer User Presets auf orca.tools geteilt werden
  8. \n
\n\n
\n Tipp:\n Nutze den Preview → Color Scheme: Volumetric Flow Rate, um Stellen zu finden, wo dein Drucker zu schnell oder zu langsam druckt. Rote Stellen = zu hoher Volumenstrom = mögliche Unterextrusion.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/guide-prusaslicer.html b/backup/content/posts/guide-prusaslicer.html new file mode 100644 index 0000000..56ee132 --- /dev/null +++ b/backup/content/posts/guide-prusaslicer.html @@ -0,0 +1,8 @@ +--- +title: "PrusaSlicer: Einsteiger bis Fortgeschrittene" +slug: "guide-prusaslicer" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

PrusaSlicer ist Prusa Researchs Open-Source-Slicer — präzise, flexibel und für alle Drucker nutzbar. Er gilt als Goldstandard für Qualitätsdruck und bietet eine der besten Unterstützungsstruktur-Generierung am Markt.

\n\n

Download & Einrichtung

\n

Download unter prusa3d.com/prusaslicer (Windows, macOS, Linux) oder via GitHub.

\n\n

Drucker-Wizard

\n
    \n
  1. Beim ersten Start: Configuration Wizard startet automatisch
  2. \n
  3. Drucker auswählen: Original Prusa, Creality, Voron, Bambu oder "Other FFF" für generisch
  4. \n
  5. Bei generischem Drucker: Bettgröße und Düsendurchmesser eingeben
  6. \n
  7. Filament-Presets hinzufügen (PLA, PETG, ASA etc.)
  8. \n
  9. Fertig — Profil kann jederzeit über File → Configuration Wizard erweitert werden
  10. \n
\n\n

Benutzeroberfläche

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
BereichFunktionTipp
Linke LeisteObjekte hinzufügen, skalieren, drehenRechtsklick → Objekt-Kontext-Menü
Rechtes PanelPrint, Filament, Printer ProfileEigene Profile als "User" speichern
Print Settings TabLayer, Infill, Support, SpeedExpert-Modus für alle Optionen
Preview TabLayer-für-Layer VorschauSlider: einzelne Layer prüfen
Modifikator-MeshesEinstellungen für Zonen definierenRechtsklick auf Objekt → Add Modifier
\n\n

Empfohlene Einstellungen: PLA

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterWertKategorie
Layer height0.20 mmLayers and perimeters
Perimeters3Layers and perimeters
Top/Bottom solid layers5 / 5Layers and perimeters
Fill density20 %Infill
Fill patternGyroid / GridInfill
Nozzle temp215 °C / 210 °C (erste Schicht)Filament Settings
Bed temp60 °CFilament Settings
Print speed50 mm/sPrint Settings → Speed
Retraction length2 mm (DD) / 6 mm (Bowden)Printer Settings
Cooling fan100 % ab 2. LayerFilament Settings
\n\n

Supports: Painted vs. Automatisch

\n

PrusaSlicer bietet drei Support-Modi:

\n\n
\n
\n

Normal (Automatisch)

\n

Stützt alle Überhänge > Threshold. Schnell, aber oft zu viel Material

\n
\n
\n

Organic Supports

\n

Baumähnliche Struktur, weniger Kontaktfläche, einfacheres Entfernen

\n
\n
\n

Paint-on Supports

\n

Manuelle Pinsel-Auswahl: nur stützen wo nötig, kein Overengineering

\n
\n
\n\n

Support-Einstellungen optimieren

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterEmpfehlung
Support material threshold55° (statt Standard 45°)
Contact Z distance0.2 mm — leichtere Ablösung
Interface layers2 — glattere Support-Oberfläche
Interface patternRectilinear
\n\n

Variable Layer Height

\n
    \n
  1. Slice das Modell zunächst normal
  2. \n
  3. Wechsle in den Layer View und klicke Variable Layer Height
  4. \n
  5. Mit dem Pinsel: feine Schichten (0.10 mm) für Kurven und Details
  6. \n
  7. Grobe Schichten (0.30 mm) für vertikale Wände und Infill-Bereiche
  8. \n
  9. Adaptive-Button: PrusaSlicer optimiert automatisch
  10. \n
  11. Druckzeit sinkt um 20–40 % bei nahezu gleicher Qualität
  12. \n
\n\n

Kalibrierung aus PrusaSlicer heraus

\n
    \n
  • Calibration → First Layer Calibration — Live-Anpassung der Z-Offset beim Druck
  • \n
  • Calibration → Bed Level Correction — manuelles Mesh-Leveling
  • \n
  • Calibration → Temperature Tower — per Skript via Post-Processing
  • \n
  • Extrusion multiplier anpassen über Filament-Einstellungen
  • \n
\n\n
\n Profi-Tipp:\n Nutze Seams → Aligned und male die Naht mit dem Paint-on Seam Tool an eine unsichtbare Stelle (innen, hinten). Das macht Printe deutlich sauberer als automatisches "Nearest" oder "Cost-Based".\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/infill-muster-dichte-wandstaerke.html b/backup/content/posts/infill-muster-dichte-wandstaerke.html new file mode 100644 index 0000000..0778372 --- /dev/null +++ b/backup/content/posts/infill-muster-dichte-wandstaerke.html @@ -0,0 +1,8 @@ +--- +title: "Infill: Muster, Dichte und Wandstärke" +slug: "infill-muster-dichte-wandstaerke" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Infill: Muster, Dichte & Wandstärke

\n

Das richtige Infill-Muster und die passende Wandstärke sind entscheidend für Festigkeit, Druckzeit und Materialverbrauch. Dieser Guide erklärt alle gängigen Muster und wann du welche Einstellungen wählen solltest.

\n\n

Infill-Dichte: Wann wie viel?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
DichteEinsatzBeispiele
0 – 5 %Dekorativ, keine LastVasen, Figuren, Prototypen
10 – 20 %Leichte AlltagsteileGehäuse, Halter, Displays
20 – 40 %Standard-FunktionsteileHalterungen, Clips, Werkzeugteile
40 – 60 %Belastete TeileZahnräder, Hebel, Druck-/Zugteile
60 – 80 %Hohe BelastungSchraubverbindungen, Achsen, Scharniere
80 – 100 %Maximale FestigkeitSicherheitskritische Teile, Ersatzteile
\n\n

Wichtig: Mehr Infill bedeutet nicht immer mehr Festigkeit. Oberhalb von 40 % bringen mehr Perimeter (Wandstärken) oft mehr als mehr Infill.

\n\n

Infill-Muster im Vergleich

\n\n

Grid / Lines — Schnell, Standard

\n
    \n
  • Einfaches Gitter oder parallele Linien
  • \n
  • Schnell zu drucken, gute Top-Layer-Unterstützung
  • \n
  • Nicht isotrop — unterschiedliche Festigkeit in X/Y vs. Z
  • \n
  • Ideal für Dekor, Prototypen, schnelle Drucke
  • \n
\n\n

Gyroid — 3D-isotrop, empfohlen für Funktionsteile

\n
    \n
  • Gleichmäßige Festigkeit in alle 3 Richtungen
  • \n
  • Flexible Absorption von Kräften (gut für schlagzähe Teile)
  • \n
  • Etwas langsamer als Grid, aber bei gleicher Dichte fester
  • \n
  • Empfehlung: ab 15 % Dichte für alle Funktionsteile
  • \n
\n\n

Honeycomb / Cubic — Stabil und kompressionsresistent

\n
    \n
  • Hexagonale oder kubische Zellstruktur
  • \n
  • Sehr gut bei Druckbelastung (Kompression)
  • \n
  • Cubic: gut für Allround-Funktionsteile (ähnlich Gyroid)
  • \n
  • Honeycomb: klassisch gut, aber Gyroid in modernen Slicern meist besser
  • \n
\n\n

Lightning / Adaptive — Schnell für Top-Layer-Unterstützung

\n
    \n
  • Minimales Infill nur wo Top-Layer Unterstützung brauchen
  • \n
  • Keine Festigkeit — nur für Dekorteile oder Prototypen
  • \n
  • Spart bis zu 50 % Material gegenüber 15 % Grid
  • \n
  • OrcaSlicer, Cura, PrusaSlicer: Lightning / Adaptive Cubic verfügbar
  • \n
\n\n

Wandstärke: oft wichtiger als Infill

\n

Die Wandstärke (Perimeter-Anzahl) hat bei den meisten Alltagsteilen mehr Einfluss auf die Festigkeit als die Infill-Dichte.

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Perimeter (0.4 mm Düse)WandstärkeEinsatz
2 Perimeter~0.8 mmDekor, Miniatures
3 Perimeter~1.2 mmStandard (Slicer-Default)
4 Perimeter~1.6 mmFunktionsteile, Halter
5–6 Perimeter~2.0 – 2.4 mmBelastete Teile, Schrauben
8+ Perimeter3.2 mm+Maximale Festigkeit
\n\n

Top/Bottom Layer Anzahl

\n
    \n
  • Standard: 4–5 Layer (0.2 mm Schichtdicke = 0.8–1.0 mm)
  • \n
  • Optisch hochwertig: 6–8 Layer für glattere Oberfläche
  • \n
  • Faustregel: Top-Layer-Höhe ≥ 0.75 mm (bei 0.2 mm → min. 4 Layer)
  • \n
  • Bei geringem Infill (<15 %) mehr Top-Layer nötig um Löcher zu schließen
  • \n
\n\n

Empfehlungen nach Anwendungsfall

\n
\n
\n

Schneller Prototyp

\n

15 % Lightning, 2 Perimeter, 3 Top/Bottom — minimale Zeit, ausreichende Form

\n
\n
\n

Alltagshalter

\n

20 % Gyroid, 3–4 Perimeter, 5 Top/Bottom — gute Balance aus Zeit und Festigkeit

\n
\n
\n

Belastetes Funktionsteil

\n

40 % Gyroid/Cubic, 5–6 Perimeter, 6 Top/Bottom — hohe Festigkeit

\n
\n
\n

Optik-Druck

\n

10 % Grid, 4 Perimeter, 8 Top/Bottom — glatte Oberfläche, gute Stabilität

\n
\n
\n\n
\n Faustregel:\n Für maximale Festigkeit bei minimalem Gewicht gilt: mehr Perimeter schlägt mehr Infill. Erhöhe zuerst die Wandstärke auf 4–5, bevor du Infill über 30 % hebst. Die Wände tragen die meiste Last — das Infill unterstützt nur die Flächen.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/input-shaping-kalibrieren.html b/backup/content/posts/input-shaping-kalibrieren.html new file mode 100644 index 0000000..08cfdfc --- /dev/null +++ b/backup/content/posts/input-shaping-kalibrieren.html @@ -0,0 +1,8 @@ +--- +title: "Input Shaping kalibrieren" +slug: "input-shaping-kalibrieren" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Input Shaping kalibrieren

\n

Input Shaping (Resonance Compensation) ist Klippers mächtigstes Feature gegen Ringing und Ghosting. Es misst die Resonanzfrequenz des Druckers und kompensiert sie aktiv — das Ergebnis sind messerscharf scharfe Drucke bei hohen Geschwindigkeiten.

\n\n

Was ist Ringing / Ghosting?

\n

Ringing sind wellenförmige Muster auf Druckoberflächen, die nach Ecken und Richtungswechseln entstehen. Sie entstehen durch mechanische Schwingungen im Drucker-Frame und Druckkopf.

\n
    \n
  • Sichtbar als „Echos" oder Wellen hinter scharfen Kanten
  • \n
  • Schlimmer bei hoher Druckgeschwindigkeit
  • \n
  • Abhängig von Drucker-Masse, Riemenspannung und Frame-Steifigkeit
  • \n
  • Input Shaping eliminiert das Problem rechnerisch — ohne Mechanik zu ändern
  • \n
\n\n

Voraussetzungen

\n
    \n
  • Klipper Firmware (Mainsail oder Fluidd als Interface)
  • \n
  • ADXL345 Beschleunigungssensor (ca. 5–10 €, an Raspberry Pi oder MCU)
  • \n
  • Alternativ: manuell per Ringing-Turm ohne Sensor möglich (weniger präzise)
  • \n
\n\n

Schritt 1: ADXL345 anschließen

\n
    \n
  1. ADXL345 per SPI an Raspberry Pi anschließen (VCC→3.3V, GND→GND, SCL→GPIO11, SDA→GPIO10, CS→GPIO8)
  2. \n
  3. In printer.cfg eintragen:
  4. \n
\n
\n [adxl345]
\n cs_pin: rpi:None

\n [resonance_tester]
\n accel_chip: adxl345
\n probe_points: 150,150,20\n
\n
    \n
  1. Sensor am Hotend befestigen (nicht am Bett bei CoreXY)
  2. \n
  3. Config neu laden und testen: ACCELEROMETER_QUERY
  4. \n
\n\n

Schritt 2: Resonanzmessung

\n
    \n
  1. Drucker aufheizen auf normale Drucktemperatur
  2. \n
  3. In Mainsail/Fluidd Console: MEASURE_AXES_NOISE (Baseline prüfen)
  4. \n
  5. Messung starten: TEST_RESONANCES AXIS=X
  6. \n
  7. Dann: TEST_RESONANCES AXIS=Y
  8. \n
  9. Klipper erstellt CSV-Dateien in /tmp/
  10. \n
  11. Analyse: ~/klipper/scripts/calibrate_shaper.py /tmp/resonances_x_*.csv -o /tmp/shaper_calibrate_x.png
  12. \n
\n\n

Schritt 3: Ergebnis auswerten und anwenden

\n

Der calibrate_shaper.py gibt eine Empfehlung aus, z.B.:

\n
\n Recommended shaper_type_x = mzv, shaper_freq_x = 52.4 Hz
\n Recommended shaper_type_y = ei, shaper_freq_y = 38.2 Hz\n
\n
    \n
  1. In printer.cfg unter [input_shaper] eintragen:
  2. \n
\n
\n [input_shaper]
\n shaper_type_x: mzv
\n shaper_freq_x: 52.4
\n shaper_type_y: ei
\n shaper_freq_y: 38.2\n
\n
    \n
  1. FIRMWARE_RESTART ausführen
  2. \n
  3. Testdruck mit hoher Geschwindigkeit zur Verifikation
  4. \n
\n\n

Shaper-Typen im Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
TypStärkeSchwächeWann nutzen
ZVMinimal SmoothingWenig DämpfungSehr steifer Drucker
MZVGute BalanceMittleres SmoothingEmpfehlung für die meisten Drucker
EIBreit wirksamMehr SmoothingWeicher/flexibler Frame
2HUMP_EIMaximale DämpfungStarkes SmoothingSehr weicher/schwerer Drucker
\n\n

Ohne Sensor: Manueller Ringing-Turm

\n
    \n
  1. OrcaSlicer oder Klipper-Makros: Calibration → Resonance → Ringing Tower
  2. \n
  3. Turm bei verschiedenen Frequenzen drucken (25–100 Hz typisch)
  4. \n
  5. Etage mit wenigsten Wellen = optimale Frequenz
  6. \n
  7. Shaper-Typ MZV als Default, Frequenz manuell eintragen
  8. \n
\n\n
\n Nach Input Shaping:\n Input Shaping erlaubt deutlich höhere Druckgeschwindigkeiten (oft +30–50 %) ohne sichtbares Ringing. Kombiniere es mit Pressure Advance für maximale Druckqualität bei Höchstgeschwindigkeit.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/ironing-top-oberflaechen.html b/backup/content/posts/ironing-top-oberflaechen.html new file mode 100644 index 0000000..eea25fe --- /dev/null +++ b/backup/content/posts/ironing-top-oberflaechen.html @@ -0,0 +1,8 @@ +--- +title: "Ironing: Top-Oberflächen glätten" +slug: "ironing-top-oberflaechen" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Ironing: Top-Oberflächen glätten

\n

Ironing lässt die Düse nach dem Drucken der obersten Schicht langsam darüber gleiten und glättet Unebenheiten mit Restwärme – das Ergebnis sind spiegelglatte Top-Flächen ohne Postprocessing.

\n\n

Was ist Ironing?

\n

Nach dem normalen Druck des letzten Top-Layers fährt die Düse in einem engmaschigen Muster erneut über die Oberfläche – langsam und mit sehr geringem Flow oder komplett ohne Extrusion. Die gespeicherte Restwärme der Düse schmilzt die oberste Schicht leicht an und glättet Riefen sowie Übergänge zwischen den Druckbahnen. Das Verfahren ist rein softwaregesteuert und erfordert keine Hardware-Modifikationen.

\n\n
\n Verfügbar in folgenden Slicern:\n

OrcaSlicer, PrusaSlicer 2.4+, Bambu Studio, Ultimaker Cura 4.x+
\n In älteren Cura-Versionen heißt die Option „Ironing", in PrusaSlicer und OrcaSlicer ebenfalls. In Bambu Studio ist es unter „Quality" zu finden.

\n
\n\n

Einstellungen im Detail

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterTypischer WertFunktionHinweis
Ironing Speed10–20 mm/sGeschwindigkeit des GlättzugsZu schnell = kein Glätteffekt, zu langsam = Zits/Blobs
Ironing Flow10–15 %Extrudierter Anteil während IroningFüllt Mikrolücken; 0 % = nur Wärmeglättung
Ironing Line Spacing0,1–0,2 mmAbstand der Glättzüge zueinanderKleiner = glatter aber langsamer
Ironing PatternZig-Zag / ConcentricFahrtmuster der DüseZig-Zag: schnell; Concentric: ästhetischer
Ironing Only Highest LayerAn (empfohlen)Nur oberste Fläche bügelnAus = alle Top-Flächen; stark erhöhte Druckzeit
\n\n

Slicer-spezifische Anleitung

\n\n

OrcaSlicer

\n
    \n
  • Process → Quality → Ironing aktivieren (Checkbox)
  • \n
  • Darunter erscheinen: Ironing Type, Ironing Speed, Ironing Flow, Line Spacing
  • \n
  • Ironing Type: „All top surfaces" für maximale Wirkung oder „Highest surfaces only" für Zeitersparnis
  • \n
  • Empfohlene Startwerte: Speed 15 mm/s, Flow 12 %, Spacing 0,15 mm
  • \n
\n\n

PrusaSlicer

\n
    \n
  • Print Settings → Infill → Ironing → Enable Ironing aktivieren
  • \n
  • Ironing Type: „All top surfaces" oder „Highest surface only"
  • \n
  • Flow rate, Speed und Spacing unter den gleichen Abschnitt
  • \n
  • Tipp: PrusaSlicer erlaubt Ironing per-Objekt über Rechtsklick → Add Settings → Ironing
  • \n
\n\n

Bambu Studio

\n
    \n
  • Process → Quality → Ironing (identisch zu OrcaSlicer, da gleiche Basis)
  • \n
  • Einstellungen direkt sichtbar ohne „Expert Mode" aktivieren zu müssen
  • \n
  • Bambu-Drucker profitieren besonders wegen der hohen Steifigkeit und Präzision der Achsen
  • \n
\n\n

Cura

\n
    \n
  • Print Settings → Shell → Ironing (Suchfeld: „Ironing")
  • \n
  • Enable Ironing → Ironing Pattern (Zig Zag / Concentric / Lines)
  • \n
  • Ironing Flow, Speed, Line Spacing separat einstellbar
  • \n
  • Cura-spezifisch: „Ironing Only Highest Layer" spart viel Zeit bei Objekten mit mehreren Top-Flächen
  • \n
\n\n

Wann Ironing sinnvoll ist – und wann nicht

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SituationIroning empfohlen?Begründung
Flache, horizontale Top-FlächenJaMaximale Wirkung, klares Ergebnis
Schilder, Namensschilder, TexttafelnJaSchrift hebt sich klarer ab auf glatter Fläche
Dekorative Objekte mit flacher Seite obenJaQualitätssteigerung ohne Postprocessing
Runde/geschwungene Oberflächen (Vase, Kugel)NeinDüse fährt über Kanten, erzeugt Artefakte
Funktionsteile (Maßhaltigkeit kritisch)NeinIroning kann Maße minimal verändern
Flexible Materialien (TPU)NeinMaterial weicht aus, kein Glätteffekt
\n\n

Häufige Probleme und Lösungen

\n\n

Zits und Blobs auf der gebügelten Fläche

\n

Kleine Materialkleckse entstehen beim An- und Absetzen der Düse. Ursache ist meistens zu hoher Ironing Flow oder fehlende Retraction vor dem Ironing-Zug.

\n
    \n
  • Ironing Flow von 15 % auf 10 % oder weniger reduzieren
  • \n
  • Retraction für Ironing-Bewegungen aktivieren (sofern Slicer unterstützt)
  • \n
  • Drucktemperatur um 2–3 °C senken für weniger flüssiges Material
  • \n
\n\n

Streifenmuster sichtbar (Striped Pattern)

\n

Die Ironing-Bahnen sind als parallele Streifen erkennbar, obwohl die Fläche glatter sein sollte.

\n
    \n
  • Line Spacing reduzieren: von 0,2 mm auf 0,1–0,15 mm
  • \n
  • Ironing Speed leicht erhöhen (zu langsam = mehr Material pro Strecke)
  • \n
  • Pattern auf Concentric wechseln für organischeres Ergebnis
  • \n
\n\n

Temperatur zu hoch: Oberfläche sieht verbrannt aus

\n
\n Gefahr von Überheizung:\n

Wenn die Düse zu langsam (unter 8 mm/s) über die Fläche fährt und gleichzeitig die Temperatur zu hoch ist, kann das Material verglasen oder sich verfärben. Bei PLA: Ironing-Temperatur nicht über 220 °C. Bei PETG: nicht über 245 °C. Im Zweifelsfall Ironing Speed erhöhen statt Temperatur senken.

\n
\n\n

Kombinationstipp: Ironing + Adaptive Layer Height

\n

Die Kombination aus Adaptive Layer Height und Ironing ist besonders wirkungsvoll: Adaptive Layer Height sorgt dafür, dass schräge Flächen mit feinen Layern gedruckt werden, während Ironing die abschließenden Top-Flächen glättet. So wird Druckzeit gespart (dicke Layer wo möglich), aber die Qualität an sichtbaren Stellen ist maximal.

\n
    \n
  • In OrcaSlicer/PrusaSlicer: Quality → Adaptive Layer Height aktivieren
  • \n
  • Gleichzeitig Ironing nur für „Highest surfaces only" aktivieren
  • \n
  • Ergebnis: Effizienter Druck mit professioneller Optik auf den sichtbaren Flächen
  • \n
\n\n
\n Praxis-Tipp: Kalibrierungstest vor Seriendruck\n

Drucke vor wichtigen Projekten eine flache Testplatte (50 × 50 × 2 mm) mit verschiedenen Ironing-Einstellungen. Beschrifte die Unterseite mit den Parametern. So hast du ein physisches Referenzmuster für jedes Filament – die optimalen Werte können je nach Material stark variieren.

\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/klipper-grundlagen-ersteinrichtung.html b/backup/content/posts/klipper-grundlagen-ersteinrichtung.html new file mode 100644 index 0000000..b1b7dc3 --- /dev/null +++ b/backup/content/posts/klipper-grundlagen-ersteinrichtung.html @@ -0,0 +1,8 @@ +--- +title: "Klipper: Grundlagen & Ersteinrichtung" +slug: "klipper-grundlagen-ersteinrichtung" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Klipper\n Grundlagen & Ersteinrichtung für FDM-Drucker\n SETUP GUIDE\n\n\n

Klipper: Grundlagen & Ersteinrichtung

\n

Klipper ist eine Open-Source-Drucker-Firmware, die auf einem Raspberry Pi (oder ähnlichem SBC) läuft und mit dem Mikrocontroller des Druckers kommuniziert. Durch die deutlich höhere Rechenleistung des Pi ermöglicht Klipper Funktionen wie Input Shaping, Pressure Advance und flexible Konfiguration per Textdatei.

\n\n

Klipper vs. Marlin — der Unterschied

\n\n \n \n \n \n \n \n \n \n \n
MerkmalMarlinKlipper
Wo läuft die Firmware?Direkt auf dem Drucker-BoardRaspberry Pi + kleines Board-Script
KonfigurationC++ recompilieren nötigEinfache .cfg Textdatei, Live-Reload
Input ShapingBasic (MBL)ADXL-basiert, sehr präzise
Pressure AdvanceLinear Advance (kompliziert)Einfach kalibrierbar
WebinterfaceKeinsMainsail / Fluidd (Browser-UI)
EinstiegEinfacher (vorinstalliert)Mehr Setup, mehr Lernkurve
\n\n

Benötigte Hardware

\n
    \n
  • Raspberry Pi 3B+ / 4 / Zero 2W — Pi 4 empfohlen für flüssiges UI
  • \n
  • MicroSD-Karte: 8+ GB (Class 10)
  • \n
  • USB-Kabel vom Pi zum Drucker-Board
  • \n
  • Optional: ADXL345-Beschleunigungssensor für Input Shaping
  • \n
\n\n

Installation: Schritt für Schritt

\n
    \n
  1. KIAUH installieren (Klipper Installation And Update Helper):
    \n cd ~ && git clone https://github.com/dw-0/kiauh.git && ./kiauh/kiauh.sh
  2. \n
  3. Im KIAUH-Menü: 1 → Install → Klipper, Moonraker, Mainsail (in dieser Reihenfolge)
  4. \n
  5. Drucker-Board flashen: In KIAUH Build & Flash oder manuell:
    \n cd ~/klipper && make menuconfig → Board wählen → make → USB-Flash
  6. \n
  7. printer.cfg anlegen — Konfigurationsdatei für deinen Drucker (KIAUH hat Beispielkonfigs)
  8. \n
  9. Mainsail im Browser öffnen: http://<raspberry-pi-ip>
  10. \n
\n\n

Welche Drucker sind kompatibel?

\n\n \n \n \n \n \n \n \n \n \n
DruckerBoardKlipper-Unterstützung
Ender 3 / CR-10Creality 4.2.2 / 4.2.7Sehr gut, viele Configs verfügbar
Ender 3 S1/S1 ProCreality STM32Gut, eigenes USB-Kabel nötig
Prusa MK3S/MK4Einsy Rambo / xBuddyMöglich, aber Originalfirmware oft besser
Voron 2.4 / TridentBTT Octopus / SpiderKlipper ist Standard, top Support
Bambu LabProprietärNicht kompatibel
Ratrig V-CoreBTT MantaKlipper-First, exzellent
\n\n

Die wichtigsten Klipper-Funktionen

\n
    \n
  • Input Shaping: ADXL345 misst Resonanzfrequenz → Klipper kompensiert automatisch Ghosting/Ringing
  • \n
  • Pressure Advance: Kompensiert Druckaufbau im Hotend → scharfe Ecken ohne Blobs
  • \n
  • Macros: G-Code-Makros für Homing, Bettausgleich, Filamentwechsel per Knopfdruck
  • \n
  • Bed Mesh Leveling: Automatisches Mesh-Bettausgleich (BLTouch/CR Touch/Klicky)
  • \n
  • Exclude Objects: Einzelne Objekte aus einem laufenden Druck herausnehmen
  • \n
  • Timelapse: Integriertes Timelapse-Plugin über Moonraker
  • \n
\n\n

Mainsail vs. Fluidd

\n\n \n \n \n \n \n \n \n
MainsailFluidd
UI-StilModern, aufgeräumtMinimalistisch, schnell
TimelapseEingebautPlugin nötig
KonfigurationIntegrierter EditorIntegrierter Editor
EmpfehlungEinsteigerFortgeschrittene
\n\n

Erste Schritte nach der Installation

\n
    \n
  1. PID-Kalibrierung: PID_CALIBRATE HEATER=extruder TARGET=200
  2. \n
  3. Z-Offset einstellen: PROBE_CALIBRATE (mit Probe) oder manuell
  4. \n
  5. Pressure Advance: Tower-Kalibrierdruck → PA-Wert in printer.cfg setzen
  6. \n
  7. Input Shaping: ADXL345 anschließen → SHAPER_CALIBRATE ausführen
  8. \n
  9. Bed Mesh: BED_MESH_CALIBRATE → Profil speichern
  10. \n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/layer-separation-beheben.html b/backup/content/posts/layer-separation-beheben.html new file mode 100644 index 0000000..0263eae --- /dev/null +++ b/backup/content/posts/layer-separation-beheben.html @@ -0,0 +1,8 @@ +--- +title: "Layer Separation beheben" +slug: "layer-separation-beheben" +type: post +excerpt: "" +--- + +
\n\n\n
Fehleranalyse

Layer Separation beheben

Schichten lösen sich ab — Ursachen diagnostizieren und dauerhaft beheben.

Was ist Layer Separation?

Layer Separation (Schichttrennung) bedeutet, dass sich einzelne Druckschichten voneinander ablösen. Das Ergebnis ist ein mechanisch schwaches Teil, das unter Belastung auseinanderbricht. Im Gegensatz zu Delamination (sichtbare Risse) können sich Schichten auch unsichtbar schlecht verbunden haben.

Hauptursachen & Lösungen

UrsacheSymptomLösung
Temperatur zu niedrigSchichten trennen sich bei Biegung+5–10°C erhöhen
Druckgeschwindigkeit zu hochRisse zwischen LayernSpeed um 20% reduzieren
Schichthöhe zu großSichtbare Lücken zwischen LayernMax 75% des Düsendurchmessers
Zu viel KühlungSchichten verbinden sich nichtFan Speed reduzieren
Feuchtes FilamentBlasen + schlechte HaftungFilament trocknen (65°C, 6h)

Temperatur korrekt einstellen

Die Drucktemperatur ist der häufigste Grund für Layer Separation. Als Faustregel gilt: Die Schichten müssen heiß genug aufgetragen werden, damit das Material mit der darunterliegenden Schicht verschmilzt.

  • PLA: 200–220°C — bei Separation auf 215°C erhöhen
  • PETG: 230–245°C — unterschätzt oft; 240°C ist ein guter Startpunkt
  • ABS/ASA: 240–260°C — Enclosure notwendig, sonst kühlt Material zu schnell ab
  • TPU: 220–235°C — langsam drucken, Kühlung reduzieren
Tipp: Einen Temperatur-Tower drucken (Temperature Tower) um die optimale Temperatur zu finden. OrcaSlicer hat diesen Test integriert.

Schichthöhe & Düsendurchmesser

Die Schichthöhe darf maximal 75–80% des Düsendurchmessers betragen. Bei 0,4mm Düse also maximal 0,3mm Schichthöhe. Wird diese Grenze überschritten, kann das Material die darunterliegende Schicht nicht mehr vollständig benetzen.

  • 0,4mm Düse → max. 0,3mm Schichthöhe (empfohlen: 0,2mm)
  • 0,6mm Düse → max. 0,45mm Schichthöhe
  • 0,8mm Düse → max. 0,6mm Schichthöhe

Kühlung richtig balancieren

Zu viel Kühlung verhindert, dass Schichten miteinander verschmelzen. Besonders bei ABS und ASA sollte die Kühlung stark reduziert oder komplett deaktiviert werden. Bei PETG reichen 30–50% Fan-Speed.

  • PLA: 80–100% Fan — keine Layer Separation durch Kühlung
  • PETG: 30–50% Fan — mehr kühlt schlechtere Haftung
  • ABS/ASA: 0–20% Fan — Enclosure verwenden
  • TPU: 30–60% Fan — je nach Härtegrad

Feuchtes Filament erkennen & trocknen

Feuchtes Filament zischt und knistert beim Drucken (durch verdampfendes Wasser). Neben Layer Separation entstehen Blasen, raue Oberflächen und Stringing. Lösung: Filament vor dem Druck trocknen.

  • PLA: 45°C, 4–6h im Trockner oder Backofen
  • PETG: 65°C, 4–6h
  • ABS/ASA: 80°C, 4–6h
  • TPU: 55°C, 6–8h
Langzeitlösung: Filament in luftdichten Boxen mit Silica-Gel lagern. Trockenboxen (z.B. von Sunlu) halten das Filament beim Drucken trocken.

Weitere Guides

Alle Fehleranalyse- und Material-Guides in der Übersicht.

\n
diff --git a/backup/content/posts/masshaltigkeit-verbessern.html b/backup/content/posts/masshaltigkeit-verbessern.html new file mode 100644 index 0000000..65b660c --- /dev/null +++ b/backup/content/posts/masshaltigkeit-verbessern.html @@ -0,0 +1,8 @@ +--- +title: "Maßhaltigkeit verbessern" +slug: "masshaltigkeit-verbessern" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Einsteiger

Maßhaltigkeit verbessern — Elefantenfuß, Schrumpfung, Kalibrierung

Warum deine Teile nicht passen und wie du es dauerhaft behebst.

\n

Warum stimmen die Maße nicht?

Selbst gut druckende Drucker erzeugen Teile die um 0,1–0,5mm von der STL abweichen. Die häufigsten Ursachen: Elefantenfuß, thermische Schrumpfung und falsch kalibrierter Flow.

Elefantenfuß beheben

Elefantenfuß entsteht wenn der erste Layer zu stark gequetscht wird. Das Material quillt seitlich aus und macht den unteren Bereich breiter als geplant.

  • Z-Offset um 0,05mm erhöhen (Düse etwas weiter weg vom Bett)
  • Im Slicer "Elephant Foot Compensation" auf 0,1–0,2mm setzen
  • First Layer Flow auf 95% reduzieren

Thermische Schrumpfung

MaterialSchrumpfungSkalierungs-Faktor
PLA0,2–0,4%1,002–1,004
PETG0,3–0,5%1,003–1,005
ABS/ASA0,5–0,8%1,005–1,008
TPU0,5–1,5%1,005–1,015

Flow-Rate kalibrieren

  1. Kalibrierungs-Würfel drucken (20x20x20mm)
  2. Mit Messschieber messen
  3. Wenn 20,3mm statt 20mm: Flow um 1,5% reduzieren
  4. Neue Flow = (20 / gemessener Wert) × aktueller Flow-Wert
  5. Iterativ bis alle 3 Achsen stimmen

Toleranzen für Passungen

  • Stramme Passungen (Press-Fit): 0,1–0,15mm Spiel pro Seite
  • Gleitpassungen: 0,2–0,3mm Spiel pro Seite
  • Lose Passungen (Rotation): 0,3–0,5mm Spiel pro Seite
  • Schrauben in gedruckte Löcher: Loch 0,2–0,4mm größer als Nenndurchmesser
\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/modifier-meshes-paint-on-supports.html b/backup/content/posts/modifier-meshes-paint-on-supports.html new file mode 100644 index 0000000..4aaa29a --- /dev/null +++ b/backup/content/posts/modifier-meshes-paint-on-supports.html @@ -0,0 +1,8 @@ +--- +title: "Modifier Meshes & Paint-on Supports" +slug: "modifier-meshes-paint-on-supports" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Modifier Meshes & Paint-on Supports

\n

Modifier Meshes erlauben es, Slicer-Einstellungen gezielt auf bestimmte Bereiche eines Modells anzuwenden — mehr Wände nur dort, wo nötig, anderen Infill in kritischen Zonen, Supports nur an bestimmten Flächen. Paint-on Supports geben dir noch mehr Kontrolle, wo genau Support gedruckt wird.

\n\n

Was sind Modifier Meshes?

\n

Ein Modifier Mesh ist ein einfaches 3D-Objekt (Box, Zylinder, Kugel), das du über dein Modell legst. Im Überschneidungsbereich gelten andere Slicer-Einstellungen als im Rest des Modells. Der Modifier selbst wird nicht gedruckt — er dient nur als Einstellungs-Zone.

\n\n

Modifier Meshes in OrcaSlicer

\n
    \n
  1. Modell auswählen → Rechtsklick → Add Modifier → Box / Cylinder / Sphere
  2. \n
  3. Modifier in Position und Größe anpassen (Pfeile, Skalierungspunkte)
  4. \n
  5. Modifier-Objekt auswählen → rechts im Panel Einstellungen überschreiben:
      \n
    • Wände (Perimeter): z.B. 6 statt 3
    • \n
    • Infill-Dichte: z.B. 80% statt 15%
    • \n
    • Infill-Muster: Gyroid statt Grid
    • \n
    • Support erzwingen / verbieten
    • \n
  6. \n
  7. Slicen — nur der Überschneidungsbereich bekommt die neuen Einstellungen
  8. \n
\n\n

Modifier Meshes in PrusaSlicer

\n
    \n
  1. Modell auswählen → rechts im Objekt-Panel auf + klicken → Add modifier
  2. \n
  3. Modifier-Form wählen (Box, Sphere, Cylinder, Mesh)
  4. \n
  5. Per Rechtsklick auf den Modifier im Objekt-Panel: Edit Modifier
  6. \n
  7. Einstellungen setzen — alle Override-Optionen gleich wie in OrcaSlicer verfügbar
  8. \n
\n\n

Modifier Meshes in Bambu Studio

\n

Bambu Studio basiert auf OrcaSlicer — Workflow identisch:

\n
    \n
  1. Objekt auswählen → obere Toolbar: Support Painting / Seam Painting / Color Painting
  2. \n
  3. Für allgemeine Modifier: Objekt-Kontextmenü → Add Modifier
  4. \n
\n\n

Typische Anwendungsfälle

\n\n \n \n \n \n \n \n \n \n
SzenarioModifier-EinstellungEffekt
Scharnier / GelenkbereichInfill 80%, Wände 6Mehr Festigkeit genau dort wo Kraft wirkt
Dekorative AußenflächeTop/Bottom Layers +2Glattere Oberfläche ohne ganzes Modell zu verlangsamen
Support nur unter ÜberhangSupport erzwingen (Box)Kein unnötiger Support im Rest des Modells
Support-freie ZoneSupport verbieten (Cylinder)Verhindert Support in Hohlräumen oder Löchern
GewichtsersparnisInfill 5% (Gyroid) im InnerenLeichteres Teil, gleiche äußere Schalen
\n\n

Paint-on Supports

\n

Paint-on Supports (in OrcaSlicer, PrusaSlicer und Bambu Studio verfügbar) erlauben dir, mit einem Pinsel direkt auf der Modelloberfläche zu malen, wo Support gedruckt werden soll.

\n\n

Workflow in OrcaSlicer / Bambu Studio

\n
    \n
  1. Modell auswählen → obere Toolbar: Support Painting (Pinsel-Icon)
  2. \n
  3. Zwei Modi: Enforce (blau = Support erzwingen) und Block (rot = Support verbieten)
  4. \n
  5. Pinselgröße anpassen und über die Flächen malen
  6. \n
  7. Slicen — Support nur auf bemalten Bereichen
  8. \n
\n\n

Workflow in PrusaSlicer

\n
    \n
  1. Objekt auswählen → Toolbar: Support Enforcer / Support Blocker
  2. \n
  3. Auf gewünschte Fläche klicken → kleiner Quader erscheint (= Enforcer)
  4. \n
  5. Alternativ: Paint-on Supports über Toolbar → SLA Support Points / FDM Support Enforcer Painting
  6. \n
\n\n

Kombination: Modifier + Paint-on für maximale Kontrolle

\n
    \n
  • Modifier Mesh für strukturelle Zonen (mehr Infill, mehr Wände)
  • \n
  • Paint-on Support für exakte Support-Platzierung
  • \n
  • Seam Painting für Naht-Steuerung an sichtbaren Bereichen
  • \n
  • Color Painting für Filament-Wechsel-Markierungen (Bambu AMS, MMU3)
  • \n
\n\n

Profi-Tipp: Custom Mesh als Modifier

\n

Anstatt der eingebauten Primitiven (Box, Cylinder) kannst du eigene STL-Dateien als Modifier laden. Das erlaubt organische Formen als Einstellungs-Zonen — z.B. genau die Außenwand eines komplizierten Teils mit mehr Perimetern belegen, ohne den Infill überall zu erhöhen.

\n
    \n
  1. Modifier-Form in CAD oder Meshmixer modellieren (nur die Einfluss-Zone)
  2. \n
  3. Als STL exportieren
  4. \n
  5. In OrcaSlicer: Objekt → Add Modifier → Load… → STL wählen
  6. \n
  7. Modifier-Einstellungen setzen — fertig
  8. \n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/multi-material-ams.html b/backup/content/posts/multi-material-ams.html new file mode 100644 index 0000000..a6f5199 --- /dev/null +++ b/backup/content/posts/multi-material-ams.html @@ -0,0 +1,8 @@ +--- +title: "Multi-Material und AMS einrichten" +slug: "multi-material-ams" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Multi-Material & AMS einrichten

\n

Multi-Material-Druck öffnet eine neue Dimension: Mehrfarb-Modelle, lösliche Supports, flexible und starre Bereiche in einem Teil. Dieser Guide erklärt AMS (Bambu Lab), MMU3 (Prusa) und die Slicer-Einstellungen für perfekte Ergebnisse.

\n\n

Systeme im Überblick

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SystemSlotsDruckerBesonderheit
Bambu AMS4 (bis 16 mit 4 AMS)X1C, P1S, P1P, A1Vollautomatisch, Cutter eingebaut
Bambu AMS Lite4A1 Mini, A1Günstiger, kein Cutter
Prusa MMU35MK3S+, MK4Open-Source, reparierbar
ERCF / Tradrack6–12+Klipper-DruckerDIY, maximale Flexibilität
\n\n

Bambu AMS einrichten

\n\n

Ersteinrichtung

\n
    \n
  1. AMS per mitgeliefertem Kabel an Drucker anschließen (PTFE-Schlauch + elektrisch)
  2. \n
  3. Filament in alle gewünschten Slots einlegen — Bambu-Filament wird automatisch erkannt (NFC-Chip), Drittanbieter manuell eingeben
  4. \n
  5. In Bambu Studio / OrcaSlicer: Drucker-Profil auswählen → AMS-Slots erscheinen links im Panel
  6. \n
  7. Filament-Profile pro Slot zuweisen (Material, Temperatur, Farbe)
  8. \n
  9. Erstmalig: Kalibrierung durchführen — Calibration → AMS Calibration
  10. \n
\n\n

Filament-Wechsel-Mechanismus

\n

Beim Materialwechsel wird das aktive Filament zurückgezogen, die Düse gespült (Purge), dann das neue Filament geladen. Das erzeugt unvermeidlich Purge-Material.

\n
    \n
  • Purge Tower (Wipe Tower): Standard — Material wird auf einen Turm neben dem Modell gedrückt
  • \n
  • Purge into Infill: Purge-Material wird ins Infill des Modells gedrückt — spart Material, nur bei ausreichend Infill möglich
  • \n
  • Purge-Volumen reduzieren: Farbübergänge optimieren — dunkel → hell braucht mehr Purge als hell → dunkel
  • \n
\n\n

Slicer-Einstellungen für Multi-Material

\n\n

Modell für Multi-Material vorbereiten

\n
    \n
  1. Modell muss aus mehreren STL-Dateien bestehen (je eine pro Farbe/Material) — oder als OBJ/3MF mit mehreren Objekten
  2. \n
  3. In Bambu Studio: Drag & Drop aller STL-Dateien → als ein Teil zusammenführen (Merge)
  4. \n
  5. Jedem Objekt im Panel den gewünschten AMS-Slot zuweisen
  6. \n
  7. Alternativ: Paint-on Multi-Color — ein einzelnes STL, manuell mit verschiedenen Farben bemalen
  8. \n
\n\n

Paint-on Multi-Color (Bambu Studio / OrcaSlicer)

\n
    \n
  1. Modell importieren → Rechtsklick → Add Color Painting
  2. \n
  3. Brush-Tool wählen und gewünschte Flächen mit Farben bemalen
  4. \n
  5. Triangle / Sphere / Fill-Modus für verschiedene Bereiche nutzen
  6. \n
  7. Besonderheit: Auto Color Painting bei Bambu Studio für einfache Logos
  8. \n
\n\n

Purge Tower Einstellungen optimieren

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EinstellungEmpfehlungHinweis
Purge-Volumen (hell → dunkel)35–50 mm³Wenig Purge nötig
Purge-Volumen (dunkel → hell)80–140 mm³Mehr nötig für saubere Farbe
Purge into InfillAktivieren ab 15 % InfillSpart Tower-Material
Tower BreiteStandard (auto)Nur bei sehr kleinen Drucken manuell
\n\n

Lösliche Supports — das Killer-Feature

\n

Mit Multi-Material kannst du Supports aus löslichem Filament drucken — danach einfach in Wasser auflösen, keine Spuren.

\n
    \n
  • PVA: löst sich in Wasser, kombiniert mit PLA — Klassiker, aber feuchtigkeitsempfindlich
  • \n
  • BVOH: schneller löslich als PVA, weniger feuchtigkeitssensibel
  • \n
  • Breakaway (PETG/PP): mechanisch abbrechbar, keine Löslichkeit nötig — günstiger
  • \n
  • Im Slicer: Support-Material auf Slot 2 legen, Interface Layer auf lösliches Material setzen
  • \n
\n\n

Häufige Probleme & Lösungen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ProblemUrsacheLösung
Farbbluten an ÜbergängenPurge-Volumen zu geringPurge-Wert für diese Kombination erhöhen
AMS lädt nicht richtigFilament-Sensor, FeuchtigkeitFilament trocknen, PTFE-Schlauch prüfen
Verstopfer beim WechselCold Pull nicht sauber, zu niedriger DruckCold Pull durchführen, Temperatur prüfen
Purge Tower fällt umTower zu schmal, Haftung schlechtTower-Breite erhöhen, Brim aktivieren
\n\n
\n Einstiegs-Tipp:\n Starte Multi-Material mit zwei PLA-Rollen gleicher Marke in verschiedenen Farben. Gleiche Druckparameter, keine Temperatur-Kompromisse. Erst wenn das sitzt, zu verschiedenen Materialien (PLA + TPU, PLA + PVA) wechseln.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/nylon-pa-drucken.html b/backup/content/posts/nylon-pa-drucken.html new file mode 100644 index 0000000..7116c71 --- /dev/null +++ b/backup/content/posts/nylon-pa-drucken.html @@ -0,0 +1,8 @@ +--- +title: "Nylon / PA drucken" +slug: "nylon-pa-drucken" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Nylon / PA drucken

\n

Nylon (Polyamid/PA) ist eines der leistungsfähigsten FDM-Materialien: extrem zäh, hitzebeständig und chemikalienresistent. Der Preis dafür ist eine anspruchsvolle Verarbeitung – wer die Grundregeln kennt, erhält aber Funktionsteile in Industriequalität.

\n\n

Was ist PA / Nylon?

\n

Polyamid (PA), im Volksmund Nylon, ist ein teilkristalliner Thermoplast mit herausragenden mechanischen Eigenschaften. Im Vergleich zu PLA oder PETG ist PA deutlich zäher (höhere Schlagfestigkeit), bleibt unter Dauerlast formstabil und hält Temperaturen bis zu 180 °C stand (je nach Typ). Zudem ist es gegenüber vielen Chemikalien, Kraftstoffen und Ölen resistent.

\n\n
\n Kritische Eigenschaft: Hygroskopizität\n

Nylon ist extrem feuchtigkeitsabsorbierend. Eine frisch geöffnete Rolle kann nach nur 30–60 Minuten an der Luft bereits zu viel Feuchtigkeit aufgenommen haben, um sauber zu drucken. Feuchtes Nylon produziert Blasen, Popping-Geräusche, brüchige Schichten und einen matten, rauhen Druck. Trocknen vor dem Druck ist Pflicht, nicht Option.

\n
\n\n

PA6 vs. PA12 vs. PA-CF – Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EigenschaftPA6 (Nylon 6)PA12 (Nylon 12)PA-CF (Carbon Fiber)
Drucktemperatur240–260 °C230–250 °C250–280 °C
Betttemperatur70–90 °C60–80 °C80–100 °C
HygroskopizitätSehr hochMittel (besser als PA6)Hoch
Warping-TendenzSehr hochMittelGering bis mittel
ZugfestigkeitHoch (~80 MPa)Mittel (~60 MPa)Sehr hoch (~120+ MPa)
SteifigkeitFlexibel-zähEtwas steifer als PA6Sehr steif, wenig Flex
Düse erforderlichHardened empfohlenHardened empfohlenHardened Steel / Ruby Pflicht
Typische AnwendungZahnräder, Lager, BuchsenKabelbinder, Schläuche, einfache TeileHochbelastete Strukturteile, Halterungen
\n\n

Voraussetzungen – was zwingend nötig ist

\n\n

1. Enclosure (Gehäuse) – Pflicht bei PA6, stark empfohlen bei PA12

\n

Nylon warpt extrem stark, wenn es beim Drucken abkühlt. Ein geschlossenes Gehäuse hält die Umgebungstemperatur konstant bei 40–60 °C und reduziert das Temperatur-Delta zwischen frisch gedruckter Schicht und der Umgebung. Ohne Enclosure werden größere Teile aus PA6 mit hoher Wahrscheinlichkeit vom Bett reißen.

\n
    \n
  • Bambu X1C / P1S: Eingebaute Enclosure, direkt geeignet
  • \n
  • Voron, Ratrig V-Core: Vollständig geschlossen, ideal
  • \n
  • Ender 3, Prusa MK4: Nachrüst-Enclosure aus Planen oder IKEA-Lack-Tisch notwendig
  • \n
\n\n

2. Hardened Steel Nozzle – Pflicht

\n

Nylon ist abrasiv. Besonders PA-CF (Carbonfaser-Verstärkung) verschleißt eine Messing-Düse innerhalb von Stunden. Standard-Messingdüsen sind für PA komplett ungeeignet.

\n
    \n
  • Hardened Steel (gehärteter Stahl): Gut und preiswert, leicht schlechtere Wärmeleitung als Messing
  • \n
  • Tungsten Carbide / Ruby-Düse: Beste Abrasionsresistenz, teuer, für intensiven PA-CF-Einsatz
  • \n
  • Für PA6/PA12 ohne CF: Hardened Steel ist ausreichend
  • \n
\n\n

3. Getrocknetes Filament – absolut zwingend

\n

Feuchtes Nylon erkennt man an: Popping/Zischen-Geräusche während des Drucks, blasige/rauhe Oberfläche, brüchige Schichtverbindungen, vermehrtes Stringing. Keine Einstellung im Slicer behebt feuchtes Filament – es muss getrocknet werden.

\n\n

Druckeinstellungen-Tabelle

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterPA6PA12PA-CF
Düsentemperatur245–260 °C235–250 °C255–280 °C
Betttemperatur80–90 °C70–80 °C90–100 °C
Druckgeschwindigkeit30–50 mm/s40–60 mm/s30–50 mm/s
Erste Schicht Speed20–25 mm/s20–30 mm/s20–25 mm/s
Kühlung Lüfter0–20 % (minimal)0–30 %0–20 %
Bett-OberflächePEI / Garolite / DimafixPEI / Glue StickPEI glatt / Garolite
Retraction1–2 mm (Direct), 4–6 mm (Bowden)1–2 mm (Direct), 4–6 mm (Bowden)0,5–1,5 mm (Direct)
\n\n
\n Bett-Haftung bei Nylon:\n

Nylon haftet auf normalen PEI-Platten überraschend gut bei 80–90 °C – und löst sich nach dem Abkühlen sauber. Problematisch sind raue PEI-Texturen bei PA-CF, da die Fasern die Oberfläche beschädigen können. Garolite (G10/FR4) ist die bevorzugte Bettoberfläche für ernsthafte Nylon-Anwender. Alternativ funktioniert dünner Klebestift (Pritt) auf Glas sehr gut.

\n
\n\n

Trocknungsanleitung für Nylon

\n

Nylon muss vor jedem Druck getrocknet werden – auch eine neue, frisch geöffnete Rolle sollte mindestens 4 Stunden getrocknet werden. Nach dem Trocknen sofort in einem trockenen Filament-Box oder Dry-Box-Drucker einsetzen.

\n\n

Trocknungsparameter

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MethodeTemperaturDauerHinweis
Filament-Trockner (z.B. Sunlu S2, Bambu AMS)70–80 °C8–12 StundenEmpfohlene Methode, schonend
Backofen (Umluft)70–75 °C6–8 StundenTemperatur exakt prüfen! Über 80 °C verformt die Spule
Food Dehydrator70 °C8–10 StundenGünstige Alternative zum Filament-Trockner
\n\n
\n Wichtig: Feuchtigkeit-Test vor dem Druck\n

Extrudiere ca. 200 mm Filament manuell aus der Düse und beobachte: Gibt es Knister-/Popping-Geräusche? Bilden sich kleine Blasen? Ist die Oberfläche des Strangs matt und rau? Falls ja, ist das Filament noch nicht trocken genug. Sauberes, trockenes Nylon extrudiert fast lautlos und hat eine gleichmäßige, leicht glänzende Oberfläche.

\n
\n\n

Häufige Probleme und Lösungen

\n\n

Warping (Ecken lösen sich vom Bett)

\n
    \n
  • Enclosure-Temperatur erhöhen oder sicherstellen, dass sie konstant bleibt
  • \n
  • Betttemperatur auf 90 °C erhöhen
  • \n
  • Brim aktivieren: mindestens 8–10 mm Brim-Breite für große Teile
  • \n
  • Druckgeschwindigkeit reduzieren (langsamer = weniger innere Spannung)
  • \n
  • Garolite-Bettoberfläche verwenden statt normaler PEI
  • \n
  • Kühllüfter komplett deaktivieren (0 %)
  • \n
\n\n

Feuchtigkeit im Filament (Popping, Blasen, Stringing)

\n
    \n
  • Druck sofort stoppen – es bringt nichts, unter diesen Bedingungen weiterzumachen
  • \n
  • Filament für mindestens 8 Stunden bei 75 °C trocknen
  • \n
  • Nach dem Trocknen direkt in Dry Box oder AMS einlegen
  • \n
  • Für lange Drucke: Drucken direkt aus dem Trockner (Schlauch vom Trockner zur Düse)
  • \n
\n\n

Schichtdelaminierung (Layer Separation)

\n

Einzelne Schichten kleben nicht richtig aneinander und trennen sich mechanisch.

\n
    \n
  • Drucktemperatur um 5–10 °C erhöhen (bessere Schmelzverbindung)
  • \n
  • Druckgeschwindigkeit reduzieren: mehr Zeit für Schichtbindung
  • \n
  • Kühlung reduzieren oder deaktivieren
  • \n
  • Layer Height nicht über 75 % des Düsendurchmessers setzen
  • \n
  • Filament-Feuchtigkeit prüfen – Delaminierung ist oft ein Feuchtigkeitsproblem
  • \n
\n\n

Anwendungsfälle für Nylon

\n

Nylon ist das Material der Wahl, wenn PLA und PETG mechanisch oder thermisch nicht ausreichen. Die häufigsten sinnvollen Anwendungen:

\n\n
    \n
  • Zahnräder und Antriebsteile: PA6/PA12 hat hervorragende Gleiteigenschaften und Abriebfestigkeit. Selbstschmierend bei PA6.
  • \n
  • Gelenke und Scharniere: Zähigkeit von PA verhindert Bruch durch Überbeanspruchung. Ideal für Print-in-Place Gelenke.
  • \n
  • Gleitlager und Buchsen: Geringe Reibung ohne zusätzliche Schmierung, besonders PA6.
  • \n
  • Motorhalterungen und Halterungen unter Vibration: Zähigkeit dämpft Vibrationen und verhindert Ermüdungsbrüche.
  • \n
  • Kfz-Ersatzteile im Motorraum: Hitzebeständigkeit bis 150–180 °C macht PA für die meisten Motorraum-Anwendungen geeignet.
  • \n
  • Werkzeughalterungen und Spannvorrichtungen: PA-CF bietet hier die höchste Steifigkeit mit geringem Gewicht.
  • \n
  • Kabeldurchführungen und Tüllen: Flexibler als PETG, chemikalienresistent, ideal für Kabelmanagement in Industrieumgebungen.
  • \n
\n\n
\n Abschlusstipp: Wann PA, wann PETG?\n

Für den Einstieg in technische Materialien ist PETG fast immer die bessere Wahl: einfacher zu drucken, weniger feuchtigkeitsempfindlich, gut genug für die meisten Anwendungen. Nylon lohnt sich, wenn du konkret Abriebfestigkeit, Schlagzähigkeit bei Stößen, hohe Betriebstemperaturen oder Chemikalienresistenz benötigst. Wähle PA bewusst für diese Eigenschaften – nicht nur weil es „professioneller" klingt.

\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/nylon-pa-filament-drucken.html b/backup/content/posts/nylon-pa-filament-drucken.html new file mode 100644 index 0000000..7ca070b --- /dev/null +++ b/backup/content/posts/nylon-pa-filament-drucken.html @@ -0,0 +1,8 @@ +--- +title: "Nylon (PA6 / PA12): Zähigkeit und Temperaturbeständigkeit" +slug: "nylon-pa-filament-drucken" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n NH\n \n \n CO\n \n \n NH\n \n \n H-Bruecke\n \n Polyamid (PA) Struktur\n \n Nylon (PA) drucken\n PA6 / PA12 - Trockenhalten - Enclosure - Nachbearbeitung\n MATERIAL GUIDE\n\n\n

Nylon (PA6 / PA12): Zähigkeit meets Temperaturbestandigkeit

\n

Nylon gehört zu den leistungsfähigsten FDM-Materialien: extrem zäh, schlagfest, temperaturbeständig bis 180°C und chemikalienresistent. Der Haken: Nylon ist hygroskopischer als jedes andere gängige Filament.

\n\n

PA-Varianten im Vergleich

\n\n \n \n \n \n \n \n \n
MaterialSchmelzpunktWasseraufnahmeEigenschaften
PA6 (Nylon 6)220°CSehr hoch (~3,5%)Günstig, zäh, gute Schichthaftung
PA12 (Nylon 12)178°CNiedrig (~0,25%)Maßhaltig, leichter zu drucken, teurer
PA6-CF240–260°CMittelVerstärkt, sehr steif, Highend
Nylon Bridge (Taulman)235°CMittelEinsteigerfreundlichstes Nylon
\n\n

Das Feuchteproblem

\n

PA6 kann bis zu 3,5% seines Gewichts Wasser aufnehmen. Bereits 2–3h in normaler Raumluft genügen für sichtbare Qualitätseinbußen: Knistern beim Drucken, blasige Oberflächen, schlechte Schichthaftung.

\n\n \n \n \n \n \n \n
ZustandMerkmalLösung
Frisch getrocknetLeise, gleichmäßiger StrangOptimal
Leicht feucht (2–4h Luft)Gelegentliches Knistern4–6h bei 80°C trocknen
Stark feucht (Tage)Dauerhaftes Knistern, Dampfblasen12h+ bei 80°C trocknen
\n\n

Druckparameter

\n\n \n \n \n \n \n \n \n \n \n
ParameterPA6PA12Nylon Bridge
Drucktemperatur240–260°C220–240°C230–245°C
Bett-Temperatur70–90°C60–80°C55–70°C
Bett-OberflächePEI + KlebestiftPEIPEI oder Glas
EnclosureNotwendig (50–60°C)EmpfohlenOptional
Druckgeschwindigkeit30–50mm/s40–60mm/s40–60mm/s
Kühlung0–10%0–20%10–30%
\n\n

Warping bekämpfen

\n
    \n
  1. Enclosure schließen: Luftzug ist der Hauptfeind. 50–60°C Enclosure-Temperatur
  2. \n
  3. Bett-Haftung maximieren: PEI + Klebestift + 80–90°C
  4. \n
  5. Erste Schicht dicker: 0,3mm, langsamerer Druck (15mm/s)
  6. \n
  7. Brim hinzufügen: 5–10mm Brim an Ecken
  8. \n
  9. Kühlung aus: Lüfter 0% für PA6
  10. \n
\n\n

Wann Nylon wählen?

\n\n \n \n \n \n \n \n \n \n
AnwendungEmpfehlung
Zahnräder, Lager, Scharniere, ClipsPA6 oder PA12 — deutlich zäher als PLA/PETG
Schlagfeste GehäusePA6 — federt statt zu reißen
Hochtemperatur bis 180°CPA6-HT oder PA-CF
Gewindeschneiden direkt im TeilNylon nimmt Gewinde besser als PLA
Maßgenaue Passteile❌ Feuchte lässt quellen — PA12 bevorzugen
\n\n

Nachbearbeitung

\n\n \n \n \n \n \n \n \n \n
EigenschaftBewertungHinweis
Schleifen✓ Sehr gutFeines Schleifpapier, Staubschutz P2
Bohren / Gewindeschneiden✓ AusgezeichnetBeste FDM-Material für Gewindeinserts
Kleben⚠ SchwierigCA-Kleber geht, Epoxy besser
Lackieren⚠ VorbehandlungPrimer nötig, sonst hält Farbe schlecht
Chemikalienresistenz✓ GutBenzin, Öle, viele Lösungsmittel OK
\n\n\n
\n\n
\n\n\n diff --git a/backup/content/posts/petg-ohne-frust.html b/backup/content/posts/petg-ohne-frust.html new file mode 100644 index 0000000..d36494c --- /dev/null +++ b/backup/content/posts/petg-ohne-frust.html @@ -0,0 +1,8 @@ +--- +title: "PETG ohne Frust drucken" +slug: "petg-ohne-frust" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Material

PETG ohne Frust — das komplette Setup

Zäh, wasserfest, hitzestabil — einfacher als sein Ruf wenn richtig eingestellt.

\n

Wann PETG statt PLA?

EigenschaftPLAPETG
Wärmeformbeständigkeit~55–60°C~75–85°C
SchlagzähigkeitSprödeSehr zäh
FeuchtigkeitsresistenzGeringGut
StringingGeringHoch

Optimale Einstellungen

  • Düse: 230–245°C (Start: 240°C)
  • Bett: 70–85°C
  • Fan: 30–50%
  • Speed: 40–80 mm/s
  • Retraction DD: 0,5–1,5mm
  • Erste Schicht: max. 30 mm/s, etwas höherer Z-Offset als PLA

Stringing bekämpfen

  1. Temperatur auf 235°C senken
  2. Retraction auf bis zu 2mm erhöhen
  3. Travel-Speed auf 180–250 mm/s erhöhen
  4. "Wipe on Retract" aktivieren
  5. "Avoid crossing perimeters" aktivieren

Bett-Haftung

PETG haftet sehr gut an PEI — manchmal zu gut. Erst vollständig abkühlen lassen (unter 30°C), dann biegen zum Ablösen. Nie Gewalt anwenden, Druckplatte kann sich beschädigen.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/pla-perfekt-einstellen.html b/backup/content/posts/pla-perfekt-einstellen.html new file mode 100644 index 0000000..6ef22f7 --- /dev/null +++ b/backup/content/posts/pla-perfekt-einstellen.html @@ -0,0 +1,8 @@ +--- +title: "PLA perfekt einstellen" +slug: "pla-perfekt-einstellen" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Einsteiger

PLA perfekt einstellen — der komplette Parameter-Guide

Saubere Oberflächen, stabile Layer, kein Stringing — mit den richtigen Werten von Anfang an.

\n

Warum ist PLA der beste Einstieg?

PLA (Polylactic Acid) ist das am leichtesten druckbare Filament. Es haftet gut, schrumpft kaum, riecht wenig und vergibt Fehler. Für 95% aller Dekorationsteile und nicht-hitzebelasteten Alltagsobjekte ist PLA die erste Wahl.

\n

Die optimalen Starteinstellungen

ParameterStartwertBereich
Düsentemperatur210°C195–225°C
Betttemperatur60°C55–65°C
Schichthöhe0,20mm0,12–0,30mm
Druckgeschwindigkeit60 mm/s30–120 mm/s
Fan-Speed100%80–100%
Retraction (DD)1,0mm0,5–2,0mm
Retraction (Bowden)5,0mm3,0–7,0mm
\n
Faustregel: Jedes Filament verhält sich anders. Starte immer mit den Herstellerangaben auf der Spule und optimiere von dort aus.
\n

Temperatur kalibrieren

Die richtige Drucktemperatur ist der wichtigste Parameter. Zu kalt = Layer Separation und schlechte Haftung. Zu heiß = Stringing, Oozing und schlechte Überhangs.

  • Zu kalte Düse: Rauhe Oberfläche, Layer trennen sich bei Biegung, Unterextrusion
  • Zu heiße Düse: Fadenziehen zwischen Teilen, hängende Overhangs, unscharfe Details
  • Richtig: Glatte Oberfläche, kein Stringing, Overhangs bis 45° ohne Probleme
\n

Druckgeschwindigkeit verstehen

Geschwindigkeit ist druckerspezifisch. Ein Bambu A1 druckt sauber bei 200mm/s, ein Ender 3 knickt bei 100mm/s ein. Wichtig: verschiedene Zonen brauchen verschiedene Speeds:

  • Outer Wall: 40–80 mm/s — sichtbare Außenfläche, langsam für Qualität
  • Inner Wall: 80–150 mm/s — unkritisch
  • Infill: 100–250 mm/s — maximaler Speed hier
  • First Layer: 20–30 mm/s — immer langsam!
  • Top/Bottom: 40–60 mm/s — sichtbar, langsam
\n

Kühlung richtig einsetzen

PLA braucht viel Kühlung für scharfe Details und gute Überhangs. Fan ab Layer 3 auf 80–100%. Ausnahme: erste 2–3 Layer ohne Fan für bessere Bett-Haftung.

\n

Typische PLA-Probleme

  • Stringing: Temperatur um 5°C senken, Retraction erhöhen
  • Layer Separation: Temperatur erhöhen, Speed reduzieren
  • Warping: Bett reinigen, Betttemp auf 65°C, Brim hinzufügen
  • Blobbing/Oozing: Pressure Advance kalibrieren, Retraction erhöhen
  • Rauhe Top-Oberfläche: Ironing aktivieren, mehr Top-Layers
\n
Nächster Schritt: Nach erfolgreichem PLA-Druck empfehlen wir den Stringing-Guide für das Feintuning.
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/pressure-advance-kalibrieren.html b/backup/content/posts/pressure-advance-kalibrieren.html new file mode 100644 index 0000000..a00c1c0 --- /dev/null +++ b/backup/content/posts/pressure-advance-kalibrieren.html @@ -0,0 +1,8 @@ +--- +title: "Pressure Advance kalibrieren" +slug: "pressure-advance-kalibrieren" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Pressure Advance kalibrieren

\n

Pressure Advance (Klipper) und Linear Advance (Marlin) kompensieren den Druckabfall im Hotend bei Geschwindigkeitsänderungen. Richtig eingestellt verschwinden Ecken-Blobs, Ghosting und Überextrusion an Kurven — ein massiver Qualitätssprung.

\n\n

Was macht Pressure Advance?

\n

Wenn der Druckkopf beschleunigt oder abbremst, reagiert der Filamentdruck im Hotend träge. Das führt zu:

\n
    \n
  • Blobs an Ecken — Überextrusion wenn der Kopf abbremst
  • \n
  • Dünne Stellen an Kurven — Unterextrusion beim Beschleunigen
  • \n
  • Ringing / Ghosting — Druckwellen durch abrupte Richtungswechsel
  • \n
  • Ungleichmäßige Wände — sichtbar bei Außenperimetern
  • \n
\n

Pressure Advance gleicht diesen Verzug aus: Der Extruder zieht beim Abbremsen etwas zurück und fügt beim Beschleunigen etwas voraus — das Ergebnis sind scharfe, saubere Ecken.

\n\n

Klipper vs. Marlin: Wo einstellen?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
FirmwareFunktionEinstellungTypischer Wert
KlipperPressure Advanceprinter.cfg → [extruder]0.02 – 0.08
Marlin 2.xLinear Advance (K-Faktor)Configuration_adv.h oder M900 K0.0 – 0.2
OrcaSlicer / BambuPA eingebaut (G-Code)Calibration → Pressure Advance0.02 – 0.06
RepRapFirmwarePressure AdvanceM572 D0 S[wert]0.05 – 0.15
\n\n

Klipper: Schritt-für-Schritt Kalibrierung

\n\n

Methode 1: Tower-Test (empfohlen)

\n
    \n
  1. Öffne Mainsail/Fluidd → Console
  2. \n
  3. Drucke den PA-Kalibrierungsturm via Klipper-Makro oder Slicer-Skript
  4. \n
  5. Befehl für Live-Test: SET_PRESSURE_ADVANCE ADVANCE=0.04
  6. \n
  7. Starte den Druck, passe den Wert live an bis Ecken scharf sind
  8. \n
  9. In printer.cfg eintragen: pressure_advance: 0.04
  10. \n
  11. Config neu laden: FIRMWARE_RESTART
  12. \n
\n\n

Methode 2: OrcaSlicer Kalibrierung

\n
    \n
  1. OrcaSlicer → Calibration → Pressure/Linear Advance
  2. \n
  3. Startwert: 0.0, Endwert: 0.1, Schritte: 0.005
  4. \n
  5. Drucke den Test (dauert ca. 15 Minuten)
  6. \n
  7. Finde die Zeile mit den schärfsten Ecken ohne Blob
  8. \n
  9. Ablesen des Wertes vom gedruckten Test
  10. \n
  11. Wert im Filament- oder Drucker-Profil eintragen
  12. \n
\n\n

Marlin: Linear Advance (K-Faktor)

\n
    \n
  1. Prüfe ob Linear Advance aktiviert ist: M503 → suche nach K-Wert
  2. \n
  3. Test-Muster generieren unter marlinfw.org/tools/lin_advance/k-factor.html
  4. \n
  5. G-Code drucken und beste Zeile ablesen
  6. \n
  7. Permanent speichern: M900 K0.05M500
  8. \n
  9. Alternativ: in Start-G-Code des Slicers eintragen
  10. \n
\n\n

Richtwerte nach Material

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialPA KlipperK MarlinHinweis
PLA0.03 – 0.060.05 – 0.10Gut vorhersehbar
PETG0.02 – 0.050.03 – 0.08Niedriger durch höhere Viskosität
ABS / ASA0.03 – 0.070.05 – 0.12Ähnlich PLA
TPU0.0 – 0.020.0Flexibel — meist deaktivieren
PA-CF / Nylon0.04 – 0.080.07 – 0.15Variiert stark je nach Marke
\n\n

Smooth Time (Klipper)

\n

Neben dem PA-Wert gibt es den pressure_advance_smooth_time Parameter. Standard: 0.040 s. Zu niedrig = Vibrationen. Zu hoch = PA-Effekt verringert sich.

\n
    \n
  • Standardwert 0.04 s in den meisten Fällen optimal
  • \n
  • Bei Ringing-Problemen: auf 0.02 s reduzieren
  • \n
  • Bei Extruder-Geräuschen nach PA: auf 0.06 s erhöhen
  • \n
\n\n
\n Wichtig:\n PA/LA muss für jede Filament-/Düsen-Kombination separat kalibriert werden. Ein 0.4 mm Messing-PA von 0.05 ist nicht übertragbar auf eine 0.6 mm Hardened-Steel-Düse. Speichere Werte im Filament-Profil deines Slicers.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/resin-druck-grundlagen.html b/backup/content/posts/resin-druck-grundlagen.html new file mode 100644 index 0000000..440850d --- /dev/null +++ b/backup/content/posts/resin-druck-grundlagen.html @@ -0,0 +1,8 @@ +--- +title: "Resin-Druck: SLA & MSLA Grundlagen" +slug: "resin-druck-grundlagen" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n UV-LCD\n \n \n IPA\n Wash\n \n Resin-Druck\n SLA / MSLA Grundlagen für FDM-Umsteiger\n EINSTEIGER GUIDE\n\n\n

Resin-Druck: SLA & MSLA Grundlagen

\n

Resin-Drucker (SLA/MSLA) arbeiten komplett anders als FDM-Drucker — statt Filament wird flüssiges Kunstharz schichtweise per UV-Licht ausgehärtet. Das Ergebnis: glattere Oberflächen, feinere Details, aber auch mehr Nachbearbeitung und Sicherheitsaufwand.

\n\n

FDM vs. Resin — der direkte Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n \n \n
MerkmalFDMResin (MSLA)
DetailgradMittel (0,1–0,4mm Schicht)Sehr hoch (0,01–0,05mm)
OberflächeSchichtlinien sichtbarFast glatt, kaum Linien
DruckgrößeGroß möglich (200–400mm)Klein–Mittel (130–200mm)
MaterialFilament-RollenFlüssiges Resin in Flasche
NachbearbeitungMinimalWaschen + UV-Aushärten nötig
Geruch / SicherheitNiedrigHoch — Handschuhe, Lüftung
Kosten DruckerAb 200€Ab 180€ (Bambu / Elegoo)
Kosten Material15–30€/kg Filament20–50€/kg Resin
Ideal fürFunktionsteile, große ObjekteFiguren, Schmuck, Zahntechnik
\n\n

Technologien: SLA, DLP, MSLA

\n\n \n \n \n \n \n \n
TypLichtquelleDruckerEigenschaft
SLA (Stereolithographie)LaserFormlabs Form 3+Präziseste Methode, teuerste Drucker
DLP (Digital Light Processing)ProjektorAnycubic PhotonSchnell, gleichmäßige Auflösung
MSLA / LCDUV-LCD + LED-MatrixElegoo Saturn, Bambu LabsGünstigste Option, sehr verbreitet
\n\n

Beliebte Einsteiger-Drucker 2026

\n\n \n \n \n \n \n \n \n
DruckerBauraumAuflösungPreis
Elegoo Saturn 4 Ultra218×123×260mm12K~350€
Bambu Labs Resin180×120×200mm14K~400€
Anycubic Photon Mono M5s200×122×200mm12K~300€
Elegoo Mars 5 Ultra143×90×165mm12K~200€
\n\n

Workflow: Vom Modell zum fertigen Druck

\n
    \n
  1. Slicen — Chitubox, Lychee Slicer oder Bambu Studio für Resin:
      \n
    • Supports hinzufügen (kritisch — hängende Teile brauchen Support)
    • \n
    • Druckparameter: Schichtdicke (0,05mm Standard), Belichtungszeit
    • \n
    • Anti-Aliasing aktivieren für glattere Kanten
    • \n
  2. \n
  3. Drucken — Resin-Tank befüllen, Bauplattform kalibrieren, starten
  4. \n
  5. Waschen — IPA 99% oder Wash&Cure-Station: 3–5 Minuten waschen um nicht ausgehärtetes Resin zu entfernen
  6. \n
  7. UV-Aushärten — UV-Cure-Station oder Sonnenlicht: 2–5 Minuten je Seite. Nicht überkuren — spröde!
  8. \n
  9. Support entfernen — nach dem Aushärten mit Zange/Cutter abzwicken
  10. \n
  11. Optional: Grundieren & Lackieren
  12. \n
\n\n

Sicherheit — unverzichtbar

\n
    \n
  • Nitril-Handschuhe immer beim Umgang mit flüssigem Resin — hautreizend, allergisierend
  • \n
  • Lüftung — Resin-Dämpfe sind gesundheitsschädlich, niemals in geschlossenem Raum ohne Luftzufuhr drucken
  • \n
  • Entsorgung — flüssiges Resin niemals in den Abfluss! Aushärten unter UV, dann Hausmüll
  • \n
  • IPA-Entsorgung — verbrauchtes IPA als Sondermüll (enthält unausgehärtetes Resin)
  • \n
  • Aktivkohlefilter im Drucker oder externe Abluft empfohlen
  • \n
\n\n

Resin-Typen

\n\n \n \n \n \n \n \n \n \n \n
TypEigenschaftenIdeal für
Standard ResinGünstig, sprödeFiguren, Prototypen
ABS-Like ResinZäher, weniger sprödeFunktionsteile
Water-Washable ResinMit Wasser waschbar, kein IPAEinsteiger, weniger Chemie
Tough / Engineering ResinSehr stabil, teuerBelastete Bauteile
Flexible ResinGummiartigDichtungen, weiche Griffe
8K/12K ResinOptimiert für Hochauflösungs-LCDFiguren, Schmuck
\n\n
\n\n
\n\n\n diff --git a/backup/content/posts/retraction-kalibrieren.html b/backup/content/posts/retraction-kalibrieren.html new file mode 100644 index 0000000..df34882 --- /dev/null +++ b/backup/content/posts/retraction-kalibrieren.html @@ -0,0 +1,8 @@ +--- +title: "Retraction kalibrieren: Kein Stringing mehr" +slug: "retraction-kalibrieren" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Retraction kalibrieren: Kein Stringing mehr

\n

Retraction ist die häufigste Ursache für Stringing, Blobs und Unterextrusion. Dieser Guide erklärt die Unterschiede zwischen Direct Drive und Bowden und führt dich Schritt für Schritt zur perfekten Einstellung.

\n\n

Direct Drive vs. Bowden — was ist der Unterschied?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EigenschaftDirect DriveBowden
Retraction-Distanz0.5 – 2.0 mm4.0 – 8.0 mm
Retraction-Speed25 – 45 mm/s40 – 60 mm/s
Flexible Filamente (TPU)✓ Empfohlen✗ Sehr schwierig
Stringing-AnfälligkeitNiedrigHöher
DruckgeschwindigkeitEtwas langsamer (Masse)Schneller
Beispiel-DruckerBambu X1C, Prusa MK4, VoronEnder 3, CR-10
\n\n

Retraction-Test: Schritt für Schritt

\n\n

1. Temperatur-Testturm zuerst

\n

Bevor du die Retraction anpasst: stelle sicher, dass die Drucktemperatur stimmt. Zu hohe Temperaturen verursachen Stringing, egal wie gut die Retraction ist.

\n
    \n
  • Drucke einen Temperatur-Turm (120 mm hoch, je 10 mm pro Temperaturstufe)
  • \n
  • PLA: starte bei 225 °C, gehe in 5-°C-Schritten auf 195 °C runter
  • \n
  • Wähle die niedrigste Temperatur, bei der die Layer noch gut haften
  • \n
  • Niedrigere Temp = weniger Stringing durch dünneres Schmelzgut
  • \n
\n\n

2. Retraction-Test drucken

\n

Nutze einen Retraction-Test mit mehreren Türmen (z.B. von Printables: "Retraction Test Calibration"). Die meisten Slicer haben eingebaute Retraction-Kalibrierung:

\n
    \n
  • OrcaSlicer / Bambu Studio: Calibration → Retraction
  • \n
  • Cura: Marketplace Plugin "Calibration Shapes"
  • \n
  • PrusaSlicer: Print Settings → Travel → Retraction
  • \n
\n\n

3. Startwerte je nach System

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SystemDistanz StartSpeed StartSchritt
Direct Drive (allg.)1.0 mm35 mm/s±0.2 mm
Bambu Lab (X1C, P1)0.8 mm30 mm/s±0.1 mm
Prusa MK3/MK40.6 mm35 mm/s±0.2 mm
Bowden (Ender 3)5.0 mm45 mm/s±0.5 mm
Klipper (direkt)0.4 – 0.8 mm40 mm/s±0.1 mm
\n\n

Diagnose: Was sehe ich und was bedeutet es?

\n
\n
\n

Stringing (Fäden)

\n

Retraction zu kurz ODER Temperatur zu hoch ODER Travel-Speed zu langsam

\n
\n
\n

Blobs / Zacken

\n

Retraction zu lang ODER zu schnell → Extra-Extrusion beim Start

\n
\n
\n

Unterextrusion

\n

Retraction zieht Filament zu weit zurück → Lücken nach Travel

\n
\n
\n

Verstopfung (Clog)

\n

Zu viele schnelle Retractions → Filament schleift sich im Hotend ab

\n
\n
\n\n

Advanced: Wipe & Z-Hop

\n
    \n
  • Wipe while Retracting — Düse fährt beim Zurückziehen über vorherigen Pfad: reduziert Blobs, empfohlen für alle Drucker
  • \n
  • Z-Hop — Düse hebt sich während Travel: verhindert Kratzer, ABER verlangsamt Druck deutlich (nur bei komplizierten Modellen nutzen)
  • \n
  • Combing Mode (Cura / OrcaSlicer) — Travel nur innerhalb des Modells: vermeidet sichtbare Fäden auf Außenseiten ohne Z-Hop
  • \n
  • Travel Speed erhöhen — schnellere Reisen = weniger Zeit für Fäden zu bilden (150–200 mm/s ideal)
  • \n
\n\n
\n Wichtig für PETG:\n PETG neigt viel mehr zu Stringing als PLA. Nutze niedrigere Retraction-Distanz (PETG ist viskös, zu viel Retraction führt zu Clogging). Stattdessen: höhere Travel-Speed (200+ mm/s) und Combing Mode aktivieren.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/slicer-profil-optimieren.html b/backup/content/posts/slicer-profil-optimieren.html new file mode 100644 index 0000000..ff53001 --- /dev/null +++ b/backup/content/posts/slicer-profil-optimieren.html @@ -0,0 +1,8 @@ +--- +title: "Slicer-Profil optimieren" +slug: "slicer-profil-optimieren" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Slicer

Slicer-Profil optimieren — von Standard zu perfekt

Systematisch das ideale Profil für dein Filament und deinen Drucker aufbauen.

\n

Warum Standard-Profile nicht reichen

Slicer-Profile sind universelle Ausgangspunkte — sie passen für jeden Drucker, aber für keinen perfekt. Jede Spule Filament, jede Raumtemperatur, jede Düse verhält sich anders. Ein optimiertes Profil kann Qualität und Druckzeit erheblich verbessern.

\n

Der systematische Ansatz

Goldene Regel: Immer nur 1 Parameter gleichzeitig ändern. Sonst weißt du nicht welche Änderung was bewirkt hat.
\n

Phase 1: Kalibrierung (einmalig)

  1. Extruder kalibrieren (E-Steps): 100mm Filament markieren und extrudieren. Abweichung korrigieren.
  2. Flow Rate kalibrieren: 20x20mm Würfel drucken, Wandstärke messen. Soll = 0,4mm, Ist z.B. 0,42mm → Flow auf 95,2%.
  3. Pressure Advance / Linear Advance: Reduziert Blobs an Ecken und Oozing. OrcaSlicer hat integrierten PA-Test.
  4. Resonanz-Kalibrierung: Bei Ghosting/Ringing → Input Shaper (Bambu, Klipper) oder Jerk/Acceleration senken.
\n

Phase 2: Material-spezifisches Profil

SchrittToolWas optimiert wird
Temperatur-TowerOrcaSlicer / CuraOptimale Drucktemperatur
Retraction-TestStringing-TurmRetraction Distance & Speed
Overhang-TestOverhang-FächerFan-Speed, maximaler Überhangwinkel
Bridge-TestBridge-TestmodellBridge Speed & Fan-Einstellungen
\n

Phase 3: Geschwindigkeit optimieren

Sobald Qualität stimmt, Geschwindigkeit schrittweise erhöhen:

  • Outer Wall auf 80 mm/s erhöhen — drucken — Qualität prüfen
  • Infill auf 200 mm/s — drucken — auf Geräusche/Resonanz prüfen
  • Acceleration erhöhen wenn kein Ringing auftritt
  • Jede Erhöhung in 20–30% Schritten
\n

Profil-Verwaltung

  • Profil speichern: Immer neue Profile als Kopie anlegen, nie das Original überschreiben
  • Benennung: "PLA_Bambu_20°C_Standard" statt "Mein Profil 3"
  • Backup: Profile regelmäßig exportieren (OrcaSlicer: File → Export → Config Bundle)
  • Community-Profile: GitHub, OrcaSlicer Wiki und Prusa Forum haben optimierte Community-Profile
\n
Tipp: OrcaSlicer's integrierte Kalibrierungs-Suite (Calibration-Menü) macht alle wichtigen Tests mit einem Klick. Perfekter Einstieg für systematisches Profil-Tuning.
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/speed-tower-druckgeschwindigkeit.html b/backup/content/posts/speed-tower-druckgeschwindigkeit.html new file mode 100644 index 0000000..c15a55b --- /dev/null +++ b/backup/content/posts/speed-tower-druckgeschwindigkeit.html @@ -0,0 +1,8 @@ +--- +title: "Speed Tower: Druckgeschwindigkeit optimieren" +slug: "speed-tower-druckgeschwindigkeit" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Die richtige Druckgeschwindigkeit ist eine Balance zwischen Zeitersparnis und Druckqualität. Ein Speed Tower zeigt dir genau, welche Geschwindigkeit dein Drucker und dein Filament tolerieren — ohne Qualitätseinbußen.

\n\n

Was ist ein Speed Tower?

\n

Ein Speed Tower ist ein Kalibrierdruck, bei dem jede Stufe mit einer anderen Geschwindigkeit gedruckt wird. Typisch: Stufen von 50 mm/s bis 200 mm/s in 25-mm/s-Schritten. Du kannst auf einen Blick erkennen, ab wann Stringing, Ringing oder schlechte Layerhaftung auftritt.

\n\n

Speed Tower in OrcaSlicer

\n

OrcaSlicer hat einen eingebauten Speed-Tower-Generator:

\n
    \n
  1. Menü: Kalibrierung → Speed Tower
  2. \n
  3. Start: 50 mm/s, Ende: 200 mm/s, Schrittgröße: 25 mm/s
  4. \n
  5. Temperatur wie im aktiven Profil belassen
  6. \n
  7. Drucken — OrcaSlicer ändert die Geschwindigkeit automatisch per G-Code
  8. \n
\n\n

Speed Tower in PrusaSlicer & Bambu Studio

\n

Kein eingebauter Generator — Alternative: Modifier Meshes oder separates Modell mit Geschwindigkeits-Override je Stufe:

\n
    \n
  1. Speed-Tower-STL von Printables herunterladen (z.B. "Universal Speed Tower")
  2. \n
  3. Jede Stufe als separate Ebene importieren
  4. \n
  5. Per Höhen-Modifier (Konfigurationswürfel) unterschiedliche Geschwindigkeiten setzen
  6. \n
  7. Alternativ: Geschwindigkeit manuell am Display während des Drucks anpassen (Live-Speed-Override)
  8. \n
\n\n

Geschwindigkeiten richtig einstellen

\n\n \n \n \n \n \n \n \n \n \n \n
ParameterEinsteigerFortgeschritteneMaximaler Wert
Perimeter / Außenwand40–60 mm/s60–100 mm/s150 mm/s
Innenwände60–80 mm/s80–150 mm/s250 mm/s
Infill80–100 mm/s150–250 mm/s400 mm/s
Top Surface / Ironing30–40 mm/s40–60 mm/s80 mm/s
Support40–60 mm/s60–100 mm/s150 mm/s
Travel150 mm/s200–300 mm/s500+ mm/s
Erste Schicht20–30 mm/s30–40 mm/s50 mm/s
\n\n

Symptome zu hoher Geschwindigkeit

\n\n \n \n \n \n \n \n \n \n
SymptomUrsacheLösung
Ringing / GhostingResonanzfrequenz überschrittenGeschwindigkeit reduzieren oder Input Shaping aktivieren
UnterextrusionExtruder kann Volumenstrom nicht liefernVolumenstrom-Limit berechnen und einhalten
Schlechte LayerhaftungZu wenig Zeit zum AbkühlenCooling Fan erhöhen oder Geschwindigkeit senken
StringingZu viel Druck im Hot EndRetraction erhöhen oder Temperatur senken
SchichtversatzStepper-SchrittverlustBeschleunigung (Acceleration) reduzieren
\n\n

Volumenstrom-Limit berechnen

\n

Jedes Hot End hat ein maximales Volumenstrom-Limit (mm³/s). Wenn du dieses überschreitest, kommt es zu Unterextrusion — unabhängig von anderen Einstellungen.

\n

Formel: Volumenstrom = Schichtdicke × Linienbreite × Druckgeschwindigkeit

\n

Beispiel bei 0,2 mm Schicht, 0,4 mm Breite, 150 mm/s: 0,2 × 0,4 × 150 = 12 mm³/s

\n\n\n \n \n \n \n \n \n \n \n
Hot EndMax. Volumenstrom (PLA)Max. Geschwindigkeit (0,2/0,4)
Stock Ender / CR-108–10 mm³/s~100 mm/s
Bambu X1/P1 Hot End20–32 mm³/s~250 mm/s
Volcano / High-Flow25–35 mm³/s~300 mm/s
Rapido / Dragon HF30–45 mm³/s~400 mm/s
CHT-Düse (Bambu/E3D)+20–40% BoostErheblich höher
\n\n

Acceleration & Jerk optimieren

\n

Neben der Geschwindigkeit bestimmen Acceleration (Beschleunigung) und Jerk (Sprungwert) die Druckqualität maßgeblich:

\n
    \n
  • Acceleration: Klipper nutzt hier ADXL-basiertes Input Shaping, Marlin nutzt Firmware-Werte. Typisch: 1.500–5.000 mm/s² für Perimeter, 10.000+ für Bambu-Drucker.
  • \n
  • Jerk: Definiert, wie abrupt Richtungswechsel passieren. Niedrig (1–5 mm/s) = glattere Kurven, höher = schnellere Ecken, mehr Ringing.
  • \n
  • Klipper SET_VELOCITY_LIMIT: SET_VELOCITY_LIMIT VELOCITY=200 ACCEL=3000 ACCEL_TO_DECEL=1500
  • \n
\n\n

Tipps für maximale Geschwindigkeit

\n
    \n
  • Input Shaping / Resonance Compensation aktivieren (Klipper/Bambu) — ermöglicht drastisch höhere Beschleunigungen ohne Ringing
  • \n
  • CHT-Düse oder High-Flow-Hot-End für höheren Volumenstrom
  • \n
  • Direct Drive statt Bowden — kürzerer Retraction-Weg ermöglicht höhere Travel-Speed
  • \n
  • Kühlgebläse auf 100% — bessere Kühlung kompensiert schnellere Schichten
  • \n
  • PLA für Speed-Tests bevorzugen — günstiger und schnell abkühlend
  • \n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/stringing-reduzieren.html b/backup/content/posts/stringing-reduzieren.html new file mode 100644 index 0000000..4f211dd --- /dev/null +++ b/backup/content/posts/stringing-reduzieren.html @@ -0,0 +1,8 @@ +--- +title: "Stringing reduzieren" +slug: "stringing-reduzieren" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Slicer

Stringing dauerhaft eliminieren — Retraction, Temperatur, Travel

Fadenziehen zwischen Druckteilen — systematisch diagnostizieren und dauerhaft beheben.

\n

Was ist Stringing?

Stringing (Fadenziehen) entsteht wenn die Düse zwischen zwei getrennten Bereichen verfahrt und dabei Kunststoff-Fäden hinterlässt. Ursache: Schmelze tritt unkontrolliert aus der Düse aus während sie sich bewegt.

\n

Die drei Hauptursachen

UrsacheSymptomLösung
Zu hohe TemperaturDünne, viele Fäden überallTemperatur um 5–10°C senken
Retraction zu geringDicke Fäden zwischen TürmenRetraction erhöhen
Travel-Speed zu langsamFäden hängen durchTravel-Speed auf 180+ mm/s
\n

Schritt 1: Temperatur

Hohe Temperatur macht das Filament flüssiger und es läuft leichter aus der Düse. Erste Maßnahme: Temperatur in 5°C-Schritten senken bis Stringing nachlässt. Grenze: Schichthaftung darf nicht schlechter werden.

  • PLA: 195–210°C wenn Stringing auftritt
  • PETG: 230–235°C (PETG neigt stark zu Stringing)
  • TPU: 220–228°C
\n

Schritt 2: Retraction einstellen

Retraction zieht das Filament beim Travel-Move zurück damit keine Schmelze aus der Düse tropft.

Extruder-TypStartMaximum
Direct Drive (Bambu, Prusa, Ender S1)0,8mm2,5mm
Bowden kurz (<400mm)3,5mm6mm
Bowden lang (>400mm)5mm8mm
TPU / Flexibel0,5mm1,5mm
\n
Achtung: Zu viel Retraction verursacht Unter-Extrusion und Gaps. Nie blind erhöhen — immer testen.
\n

Schritt 3: Travel-Speed und Strategien

  • Travel-Speed: 180–250 mm/s — je schneller die Düse bewegt sich, desto weniger Zeit zum Faden ziehen
  • Combing aktivieren: Düse bleibt innerhalb des Druckteils während Travel-Moves (verhindert Fäden auf Außenflächen)
  • Avoid crossing perimeters: Fährt um die Außenwand herum statt drüber
  • Wipe on retract: Düse wischt sich vor dem Travel-Move ab
\n

Slicer-spezifische Einstellungen

  • OrcaSlicer: Seam → Scarf Joint aktivieren für fast unsichtbare Naht-Position
  • PrusaSlicer: Print Settings → Speed → Travel erhöhen, Retraction → Wipe aktivieren
  • Bambu Studio: Meist schon optimiert; bei Bedarf Retraction manuell anpassen
\n

Stringing-Test

Drucke den klassischen "Stringing Test" — zwei Türme 20mm auseinander mit 10 Travel-Moves dazwischen. Damit siehst du sofort den Effekt jeder Änderung ohne ein komplexes Teil zu verschwenden.

\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/support-richtig-setzen.html b/backup/content/posts/support-richtig-setzen.html new file mode 100644 index 0000000..dbce4f2 --- /dev/null +++ b/backup/content/posts/support-richtig-setzen.html @@ -0,0 +1,8 @@ +--- +title: "Support richtig setzen" +slug: "support-richtig-setzen" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Slicer

Support richtig setzen — Tree, Normal, Organic im Vergleich

Wann welche Support-Methode, wie du Material sparst und Kontaktflächen sauber bekommst.

\n

Wann brauche ich Support?

Support ist nötig wenn Überhänge über 45–50° (je nach Drucker und Material) gedruckt werden müssen. Ohne Support sagen die Schichten durch. Ziel: so wenig Support wie nötig für saubere Ergebnisse.

\n

Support-Typen im Vergleich

TypBeschreibungIdeal fürNachteil
Normal (Grid)Gerades GitternetzEinfache, flache ÜberhangsSchwer zu entfernen
Tree / OrganicBaumstruktige StrukturenOrganische Formen, FigurenLängere Slicezeit
LightningMinimale StützpunkteEinfache Bridges, wenig KontaktNicht stabil
SnugEng anliegendPräzise KontaktflächenSchwerer zu entfernen
\n

Bauteilorientierung optimieren

Die wichtigste Support-Entscheidung ist vor dem Slicer: die Ausrichtung des Bauteils. Viele Supports lassen sich durch kluge Positionierung vermeiden:

  • Löcher horizontal drucken statt vertikal — keine Supports nötig
  • Teil um 45° kippen wenn dadurch Überhangs wegfallen
  • Flache Seiten als Druckfläche verwenden (bessere Stabilität)
  • Brücken (Bridges) bis 60mm kommen ohne Support aus
\n

Support-Einstellungen optimieren

  • Support Z-Distance: 0,2mm für leichtes Ablösen, 0,1mm für sauberere Oberflächen
  • Support Interface: 2–3 dichte Interface-Layer verbessern die Qualität der Unterseite drastisch
  • Support Density: 10–20% reicht meist aus (mehr erhöht Material ohne Qualitätsvorteil)
  • Support Speed: Kann schnell sein (100+ mm/s), da Qualität egal
\n
Tipp: Paint-on Supports — In PrusaSlicer und OrcaSlicer kannst du Supports manuell einzeichnen. Nur dort Support wo nötig, nicht automatisch überall.
\n

Support entfernen ohne Schäden

  1. Teil vollständig abkühlen lassen (mindestens 10min)
  2. Schneidzange für erste grobe Entfernung
  3. Spitze Zange oder Messer für Reste direkt an der Oberfläche
  4. Bei Schäden an der Kontaktfläche: höheren Z-Distance einstellen
  5. Support Interface aktivieren für sauberere Ablösung
\n

Slicer-Empfehlungen 2026

  • OrcaSlicer: Organic/Tree Support sehr gut, Scarf-Seam für saubere Nähte
  • PrusaSlicer: Organic Support und Paint-on sind Stärken
  • Bambu Studio: Automatische Support-Optimierung für Bambu-Drucker
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/temperaturturm-kalibrieren.html b/backup/content/posts/temperaturturm-kalibrieren.html new file mode 100644 index 0000000..e8acd15 --- /dev/null +++ b/backup/content/posts/temperaturturm-kalibrieren.html @@ -0,0 +1,8 @@ +--- +title: "Temperaturturm auswerten" +slug: "temperaturturm-kalibrieren" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Temperaturturm auswerten

\n

Der Temperaturturm ist der schnellste Weg, die optimale Drucktemperatur für ein neues Filament zu finden. In 20 Minuten weißt du, bei welcher Temperatur dein Filament sein Bestes zeigt — ohne Rätselraten.

\n\n

Was ist ein Temperaturturm?

\n

Ein Temperaturturm ist ein einzelnes Testobjekt, das in mehreren Stufen gedruckt wird. Bei jeder Stufe senkt der Drucker die Temperatur automatisch — so kannst du alle relevanten Temperaturen in einem einzigen Druck vergleichen.

\n
    \n
  • Typisch: 8–10 Etagen, je 5–10 °C Unterschied
  • \n
  • Startet meist bei 230 °C, endet bei 180 °C (PLA)
  • \n
  • Jede Etage testet gleichzeitig: Bridging, Überhänge, Details, Stringlng
  • \n
  • Ergebnis: Die beste Temperatur für dein Filament aus deinem Drucker
  • \n
\n\n

Schritt 1: Turm-Modell holen

\n
    \n
  • OrcaSlicer: Calibration → Temperature Tower — direkt eingebaut, keine Datei nötig
  • \n
  • Bambu Studio: Calibration → Filament Calibration → Temperature
  • \n
  • PrusaSlicer / Cura: Modell von Printables herunterladen (z.B. „Smart Temperature Tower")
  • \n
\n\n

Schritt 2: Temperatur-Skript einstellen

\n

Bei OrcaSlicer/Bambu Studio passiert das automatisch. Für PrusaSlicer und Cura muss ein G-Code-Skript die Temperatur pro Layer wechseln.

\n\n

PrusaSlicer — Custom G-Code

\n

Unter Filament Settings → Custom G-Code → Layer Change G-Code eintragen:

\n
\n {if layer_z < 2}M104 S230{endif}
\n {if layer_z >= 2 and layer_z < 6}M104 S225{endif}
\n {if layer_z >= 6 and layer_z < 10}M104 S220{endif}
\n {if layer_z >= 10 and layer_z < 14}M104 S215{endif}
\n {if layer_z >= 14 and layer_z < 18}M104 S210{endif}
\n {if layer_z >= 18 and layer_z < 22}M104 S205{endif}
\n {if layer_z >= 22 and layer_z < 26}M104 S200{endif}
\n {if layer_z >= 26}M104 S195{endif}\n
\n

Werte anpassen: Höhenwerte (2, 6, 10…) abhängig vom Turmmodell — die Z-Höhe je Etage steht im Modell-Download.

\n\n

Schritt 3: Turm auswerten

\n

Nach dem Druck jede Etage systematisch bewerten:

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
KriteriumZu kaltZu heißOptimal
Layer-HaftungSchichten lösen sichGutSchichten fest verbunden
StringingWenig bis kein StringingViele FädenMinimal, kaum sichtbar
OberflächeMatt, rau, Poren sichtbarGlänzend, verschmiertGleichmäßig seidig glatt
BridgingSehr gutes BridgingStark durchhängendLeicht durchhängend — ok
ÜberhängeScharf, kaum CurlWellen, Curl, AusfransungenSauber bis ~50°
\n\n

Richtwerte nach Material

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialStarttemperaturTestbereichTypisch optimal
PLA230 °C185 – 230 °C205 – 215 °C
PETG250 °C220 – 250 °C230 – 245 °C
ABS / ASA260 °C230 – 260 °C240 – 255 °C
TPU240 °C210 – 240 °C220 – 235 °C
\n\n

Häufige Fehler

\n
    \n
  • Turm dreht sich: Kühlung zu hoch → Turm „druckt sich selbst zu schnell ab", untere Layer noch warm. Lüfter auf 80 % für ersten Etagen reduzieren
  • \n
  • Keine sichtbare Verbesserung zwischen Etagen: Temperaturschritte zu klein (2–3 °C). Nutze 5–10 °C Schritte
  • \n
  • Erste Etage hält nicht: Bett-Temperatur prüfen, nicht Düse
  • \n
  • Ergebnis schwankt je nach Filament-Farbe: Normal — Pigmente beeinflussen Viskosität. Jede Farbe separat testen
  • \n
\n\n
\n Workflow:\n Temperaturturm immer vor Flow-Rate und Retraction kalibrieren. Alle anderen Parameter hängen von der richtigen Temperatur ab — falsche Temperatur macht jeden anderen Kalibrierversuch unzuverlässig.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/tpu-drucken.html b/backup/content/posts/tpu-drucken.html new file mode 100644 index 0000000..0423016 --- /dev/null +++ b/backup/content/posts/tpu-drucken.html @@ -0,0 +1,8 @@ +--- +title: "TPU drucken" +slug: "tpu-drucken" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Material

TPU erfolgreich drucken — flexibles Filament meistern

Direct Drive vs. Bowden, Retraction, Geschwindigkeit — alles was du wissen musst.

\n

Wann TPU?

TPU ist gummiartig, sehr zäh und resistent gegen Öle. Perfekt für Dichtungen, Schutzhüllen, Dämpfer, Griffe und alles was Flexibilität braucht.

Shore-Härtegrade

Shore AFlexibilitätDruckbarkeit
85A–87ASehr weichSchwierig
90A–92AWeichMittel
95AMittel — Empfehlung für EinsteigerGut
98A+Eher hartSehr gut

Direct Drive ist Pflicht

Weiches TPU (unter 95A) knickt im Bowden-Schlauch. Direct Drive ist notwendig. Bambu alle Modelle, Prusa MK4, Ender 3 S1/Neo.

Druckeinstellungen

  • Düse: 220–240°C
  • Bett: 30–60°C
  • Speed: 20–35 mm/s (Schlüssel ist Langsamkeit)
  • Retraction DD: 0,5–1,5mm (wenig!)
  • Fan: 30–60%

Häufige Probleme

  • Stringing: Retraction erhöhen, Temperatur um 5°C senken
  • Knickt im Extruder: Speed reduzieren, Direct Drive verwenden
  • Haftet nicht: Bett wärmer, erste Schicht auf 15 mm/s

Lagerung

TPU zieht Feuchtigkeit an. Nasses TPU = Bläschen und schlechte Qualität. Trocknen: 55°C, 6–8h. Danach luftdicht mit Silica-Gel lagern.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/content/posts/tpu-flexible-filamente-drucken.html b/backup/content/posts/tpu-flexible-filamente-drucken.html new file mode 100644 index 0000000..c08a68f --- /dev/null +++ b/backup/content/posts/tpu-flexible-filamente-drucken.html @@ -0,0 +1,8 @@ +--- +title: "TPU & Flexible Filamente: Der komplette Druckguide" +slug: "tpu-flexible-filamente-drucken" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Shore A 95\n \n TPU & Flex-Filamente\n Drucksettings · Shore-Härte · Extruder-Typen · Anwendungen\n MATERIAL GUIDE\n\n\n

TPU & Flexible Filamente: Der komplette Guide

\n

Flexible Filamente wie TPU, TPE oder TPC öffnen eine ganz neue Welt an Anwendungen — Dichtungen, Griffe, Dämpfer, Schuhsohlen. Das Drucken ist jedoch trickreich: Zu schnell, zu warm, falscher Extruder — und das Filament verheddert sich zur Wolle.

\n\n

Flexible Filamente im Überblick

\n\n \n \n \n \n \n \n \n \n
MaterialShore-HärteTemperaturEigenschaften
TPU 95A (Standard)Shore 95A220–240°CGummiartig, reißfest, am einfachsten zu drucken
TPU 87AShore 87A215–235°CWeicher, mehr Flex, anspruchsvoller
TPE (Thermoplast. Elastomer)60–90A210–230°CSehr weich, kaum für Bowden geeignet
TPC (Copolyester)40–60D230–260°CHalbflex, chemikalienbeständig
NinjaFlexShore 85A225–235°CPremium TPE, sehr weich, Direct Drive nötig
\n\n

Extruder-Kompatibilität

\n\n \n \n \n \n \n \n \n
Extruder-TypTPU 95ATPU 87A / TPEEmpfehlung
Direct Drive (kurz, <20mm)✅ Sehr gut✅ GutIdeal für alle Flex-Filamente
Direct Drive (Langer Pfad)⚠️ Möglich❌ ProblematischPTFE-Führung direkt am Extruder nötig
Bowden (kurz, <400mm)⚠️ Langsam möglich❌ Kaum möglichMax. 15mm/s, Filament muss straff sitzen
Bowden (lang, >400mm)❌ Nicht empfohlen❌ UnmöglichFilament buckelt im Bowden-Schlauch
\n\n

Optimale Druckparameter

\n\n \n \n \n \n \n \n \n \n \n \n
ParameterTPU 95ATPU 87AHinweis
Drucktemperatur225–235°C220–230°CHöher = mehr Fluss, aber mehr Fäden
Bett-Temperatur30–50°C25–45°CPEI ohne Haftmittel, oder Glasplatte
Druckgeschwindigkeit20–30mm/s15–25mm/sLangsam ist der Schlüssel zum Erfolg
Retraction (Direct Drive)0,5–1mm0–0,5mmWenig oder keine Retraktion!
Retraction (Bowden)1–2mmNicht empfohlenZu viel Retraction → Verstopfung
Schichtdicke0,2–0,3mm0,2mmDicker = bessere Layer-Haftung
Infill15–40%10–30%Gyroid oder Honeycomb für Flex
\n\n

Die häufigsten Probleme & Lösungen

\n\n \n \n \n \n \n \n \n \n \n
ProblemUrsacheLösung
Filament buckelt / verheddert sichZu schnell oder zu viel Bowden-StreckeGeschwindigkeit reduzieren, Direct Drive nutzen
Stringing / FädenRetraction zu hoch oder zu heißRetraction auf 0,5mm reduzieren, Temperatur senken
Schlechte SchichthaftungZu schnell oder zu kaltTemperaturen erhöhen, Lüfter reduzieren (50%)
Elefantenfuß (erste Schicht)Bett zu nahZ-Offset +0,05–0,1mm anpassen
Oberfläche uneben / wabbeligFlow-Rate zu hochFlow auf 90–95% reduzieren
DüsenverstopfungFeuchtes Filament / verbranntTrocknen, Kalt-Ziehen
\n\n

Feuchtigkeit — der größte Feind

\n

TPU ist extrem hygroskopisch — schon 24h offene Lagerung reichen für Blasen und knisterndes Drucken. Symptome: Knistern/Poppen beim Druck, blasige Oberfläche, schlechte Schichthaftung.

\n
    \n
  • Trocknen vor dem Druck: 6–8h bei 45–50°C im Dörrautomat oder Backofen
  • \n
  • Lagerung: Vakuumbeutel mit Silicagel, Dry Box beim Drucken
  • \n
  • Test: Filament kalt biegen — gibt es knackende Geräusche? → Feuchtigkeit
  • \n
\n\n

Slicer-Einstellungen (Bambu Studio / Orca)

\n
    \n
  • Lüfterkühlung: 30–60% — zu viel Kühlung = schlechte Schichthaftung
  • \n
  • Outer Wall Wipe Distance: 0mm — verhindert Fäden
  • \n
  • Avoid Crossing Walls: Aktivieren — reduziert Travels über das Modell
  • \n
  • Infill-Muster: Gyroid oder Honeycomb — erlaubt gleichmäßige Dehnung
  • \n
  • Wand-Überlappung: 20–30% statt Standard 15%
  • \n
\n\n

Anwendungsbeispiele

\n\n \n \n \n \n \n \n \n \n \n
AnwendungMaterialShore-Härte
Handyhülle, KabelschutzTPU 95AEinstieg, robust
Fahrrad-Griffe, WerkzeuggriffeTPU 87AKomfort, griffig
Dämpfer, VibrationsisolierungTPU 87A / TPCJe nach Belastung
Dichtungen, O-RingeTPC / TPU 95AChemikalienbeständigkeit prüfen
Schuhsohlen, OrthesenTPU 95A + 87A SandwichKombination möglich
RC-Crawler-ReifenTPU 87AKlassische Maker-Anwendung
\n\n
\n\n
\n\n\n diff --git a/backup/content/posts/unterextrusion-beheben.html b/backup/content/posts/unterextrusion-beheben.html new file mode 100644 index 0000000..1a1c11a --- /dev/null +++ b/backup/content/posts/unterextrusion-beheben.html @@ -0,0 +1,8 @@ +--- +title: "Unterextrusion beheben" +slug: "unterextrusion-beheben" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n

Unterextrusion beheben

\n

Unterextrusion ist eine der häufigsten Ursachen für schwache Drucke, fehlende Schichten und poröse Oberflächen. Dieser Guide zeigt dir alle Ursachen und wie du sie systematisch eliminierst.

\n\n

Was ist Unterextrusion?

\n

Unterextrusion bedeutet: der Drucker fördert weniger Filament als berechnet. Das Ergebnis:

\n
    \n
  • Lücken zwischen Perimetern und im Infill
  • \n
  • Poröse Top-Layer (Löcher in der Oberfläche)
  • \n
  • Schwache Layer-Haftung → Schichten lösen sich
  • \n
  • Sichtbare Lücken in der Wand bei dünnen Teilen
  • \n
  • Streifen oder fehlende Bahnen auf Außenwänden
  • \n
\n\n

Ursachen und Lösungen im Überblick

\n\n

1. Temperatur zu niedrig

\n

Häufigste Ursache bei hohen Druckgeschwindigkeiten. Filament schmilzt nicht schnell genug.

\n
    \n
  • Temperatur in 5-°C-Schritten erhöhen und testen
  • \n
  • PLA: 210–230 °C bei hoher Geschwindigkeit statt 195–205 °C
  • \n
  • PETG: 235–250 °C statt Standard 230 °C
  • \n
  • Thermistor kalibrieren wenn Temps ungenau erscheinen
  • \n
\n\n

2. Druckgeschwindigkeit zu hoch

\n

Der Hotend schafft nicht mehr Schmelzfluss als seine Max-Volumetric-Speed erlaubt.

\n
    \n
  • Max. Volumetric Speed (MVS) des Hotends beachten: Standard Brass = 11–15 mm³/s
  • \n
  • High-Flow Hotend (CHT, Dragon, Volcano): bis 30 mm³/s
  • \n
  • Formel: Speed × Layer Height × Line Width = Volumetric Flow
  • \n
  • In OrcaSlicer/Bambu Studio: Max Volumetric Speed direkt einstellbar
  • \n
\n\n

3. Verstopfung (Partial Clog)

\n

Partieller Clog: Drucker extrudiert, aber weniger als erwartet.

\n
    \n
  • Cold Pull durchführen: auf 90 °C (PLA) abkühlen, dann manuell ziehen
  • \n
  • Atomic Pull: 3–5 Mal wiederholen bis Filament sauber herauskommt
  • \n
  • Düse mit Reinigungsfilament (z.B. NylonX) durchpurgen
  • \n
  • Düse tauschen wenn Cold Pull nicht hilft (verschlissen oder verbranntes Material)
  • \n
\n\n

4. Fehlerhafter E-Steps / Flow-Kalibrierung

\n

Der Extruder fördert nicht so viel Filament wie der Slicer annimmt.

\n
    \n
  • 100 mm markieren, extrudieren, gemessen messen (sollte genau 100 mm sein)
  • \n
  • E-Steps = Aktuell × (100 / tatsächlich extrudiert) berechnen
  • \n
  • Flow-Kalibrierung: Single-Wall Würfel drucken, Wanddicke messen
  • \n
  • Ziel: 0.4 mm Wanddicke bei 0.4 mm Düse (±0.05 mm Toleranz)
  • \n
\n\n

5. Extruder-Schlupf

\n

Zahnrad greift nicht richtig ins Filament → rutscht durch.

\n
    \n
  • Klick-Geräusche beim Drucken = Extruder-Schlupf (zu viel Widerstand)
  • \n
  • Extruder-Spannung prüfen (bei BMG/Orbiter: Idler-Arm-Spannung)
  • \n
  • Extruder-Zahnrad reinigen (Staub und Filament-Abrieb entfernen)
  • \n
  • Extruder-Zahnrad auf Verschleiß prüfen → ggf. ersetzen
  • \n
\n\n

6. PTFE-Tube Probleme

\n

Besonders bei Bowden-Setups: Spalten oder Verformungen im PTFE.

\n
    \n
  • PTFE-Tube auf Knicke, Quetschungen und verbrannte Stellen prüfen
  • \n
  • PTFE muss bündig an der Düse anliegen — kein Spalt (Hitzekammer)
  • \n
  • Capricorn PTFE (enger Innendurchmesser) für bessere Präzision
  • \n
  • PTFE bis zur Düse durchführen bei All-Metal nicht möglich → höhere Temps nötig
  • \n
\n\n

Diagnose-Tabelle

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SymptomWahrscheinliche UrsacheErste Maßnahme
Nur bei hoher Speed schlechtTemp zu niedrig / MVS überschrittenTemp +10 °C, Speed -20 %
Klicken vom ExtruderWiderstand zu hoch (Clog / Temp)Cold Pull, dann Temp erhöhen
Immer gleichmäßig schlechtE-Steps / Flow falsch kalibriertE-Steps kalibrieren
Nach Filamentwechsel schlechterAnderes Filament, anderer FlowFlow +5 % für neues Material
Nur erste Schicht betroffenZ-Offset zu weit wegZ-Offset verkleinern
Nach längerem Druck schlechterHeat Creep (Hotend überhitzt)Hotend-Kühler prüfen, Lüfter
\n\n

Systematische Vorgehensweise

\n
    \n
  1. Temperatur-Turm drucken → optimale Temperatur finden
  2. \n
  3. E-Steps kalibrieren (falls noch nicht gemacht)
  4. \n
  5. Flow-Kalibrierung mit Single-Wall Cube durchführen
  6. \n
  7. Volumetric Speed testen (OrcaSlicer hat eingebauten Test)
  8. \n
  9. Cold Pull wenn Clog vermutet
  10. \n
  11. Extruder-Zahnrad und PTFE kontrollieren
  12. \n
\n\n
\n Profi-Tipp:\n Drucke bei Unterextrusions-Verdacht immer zuerst einen Temperatur-Turm und einen Flow-Kalibrierungs-Würfel. 80 % aller Unterextrusionsprobleme lassen sich damit lösen, ohne Hardware anzufassen.\n
\n\n
\n
\n\n\n diff --git a/backup/content/posts/verstopfte-duese-diagnose-reinigung.html b/backup/content/posts/verstopfte-duese-diagnose-reinigung.html new file mode 100644 index 0000000..a2d13ce --- /dev/null +++ b/backup/content/posts/verstopfte-duese-diagnose-reinigung.html @@ -0,0 +1,8 @@ +--- +title: "Verstopfte Düse: Diagnose & Reinigung" +slug: "verstopfte-duese-diagnose-reinigung" +type: post +excerpt: "" +--- + +\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Kalt-\n Ziehen\n → frei\n \n \n Verstopfte Düse\n Diagnose · Kalt-Ziehen · Atomar-Methode · Düse tauschen\n FEHLERANALYSE GUIDE\n\n\n

Verstopfte Düse: Diagnose & Reinigung

\n

Eine verstopfte Düse ist eine der häufigsten Ursachen für fehlgeschlagene Drucke — aber meistens lässt sie sich ohne Düsenwechsel beheben. Dieser Guide zeigt alle Methoden von einfach bis nuklear.

\n\n

Symptome einer verstopften Düse

\n
    \n
  • Unterextrusion: Dünne, lückenhafte Linien statt voller Bahnen
  • \n
  • Extruder-Klicken: Stepper-Motor "skippt" — zu viel Gegendruck
  • \n
  • Kein Filament-Austritt trotz laufendem Extruder
  • \n
  • Unregelmäßige Stränge oder "Haarige" Oberfläche
  • \n
  • Filament bricht während des Ladens ab
  • \n
\n\n

Methode 1: Kalt-Ziehen (Cold Pull)

\n

Die schonendste und meist effektivste Methode. Entfernt Verbrennungsrückstände ohne Chemie.

\n
    \n
  1. Düse auf Drucktemperatur aufheizen (z.B. 200°C für PLA)
  2. \n
  3. Filament manuell in die Düse drücken bis es austritt
  4. \n
  5. Temperatur auf 90°C (PLA) / 130°C (PETG) / 160°C (ABS) senken
  6. \n
  7. Bei dieser Temperatur das Filament mit einem kräftigen, gleichmäßigen Zug herausziehen
  8. \n
  9. Ende des Filaments prüfen: Ist es schwarz/dunkel oder hat eine Düsenform? → Verstopfung bestätigt
  10. \n
  11. 3–5× wiederholen bis das Filament sauber und heller herauskommt
  12. \n
\n

Tipp: Nylon eignet sich ideal für Kalt-Ziehen — es haftet besonders gut an Rückständen.

\n\n

Methode 2: Atomar-Methode (Atomic Pull)

\n

Variante des Kalt-Ziehens mit präziser Temperatur-Kontrolle:

\n
    \n
  1. Auf 250°C aufheizen (auch bei PLA — löst Verbrennungsrückstände besser)
  2. \n
  3. Filament einige Sekunden durchdrücken
  4. \n
  5. Temperatur auf 80–85°C senken, dann sofort mit max. Kraft herausziehen
  6. \n
  7. Das Filament sollte die exakte Form der Düsenbohrung haben
  8. \n
  9. Wiederholen bis kein schwarzes Material mehr sichtbar ist
  10. \n
\n\n

Methode 3: Nadel / Drähten (Mechanisch)

\n

Für hartnäckige Verstopfungen wenn Kalt-Ziehen nicht hilft:

\n
    \n
  1. Düse auf Drucktemperatur aufheizen
  2. \n
  3. Eine dünne Nadel (0,3–0,4mm) vorsichtig von unten in die Düsenöffnung einführen
  4. \n
  5. Sanft auf und ab bewegen — Rückstand lösen
  6. \n
  7. Danach Kalt-Ziehen durchführen um Reste zu entfernen
  8. \n
\n

Achtung: Zu viel Druck kann die Düse beschädigen. Nur bei aufgeheizter Düse!

\n\n

Methode 4: Aceton-Bad (nur ABS-Rückstände)

\n
    \n
  1. Düse vollständig abschrauben (aufgeheizt, dann abkühlen lassen)
  2. \n
  3. In Aceton einlegen — 30 Minuten bis mehrere Stunden
  4. \n
  5. Mit alter Zahnbürste reinigen
  6. \n
  7. Mit Druckluft ausblasen
  8. \n
  9. Wichtig: Nur für Messing-Düsen — keine Stahl-Düsen in Aceton!
  10. \n
\n\n

Methode 5: Düse tauschen

\n

Wenn alle Methoden scheitern oder die Düse durch Carbon-Filament, Metallic-Filament oder Übertemperatur beschädigt ist:

\n\n \n \n \n \n \n \n \n \n
DüsentypFürPreisLebensdauer
Messing (Standard)PLA, PETG, ABS1–5€100–500h
Gehärteter StahlCF, GF, Abrasive8–20€500–2000h
EdelstahlLebensmittel, Food-Safe10–25€200–800h
Ruby-TipAlles, sehr abrasiv40–100€5000h+
CHT (High-Flow)Hochgeschwindigkeit15–40€500–1500h
\n\n

Düse wechseln — Schritt für Schritt

\n
    \n
  1. Düse auf 200–220°C aufheizen (nie kalt wechseln — Gewinde klebt!)
  2. \n
  3. Filament entladen
  4. \n
  5. Heizblock mit Schraubenschlüssel fixieren (nicht verdrehen!)
  6. \n
  7. Düse mit Düsenschlüssel gegenuhrzeigersinnig herausdrehen
  8. \n
  9. Neue Düse eindrehen — fest, aber nicht übermäßig anziehen
  10. \n
  11. Z-Offset neu kalibrieren nach dem Wechsel
  12. \n
\n\n

Vorbeugen — so verstopft die Düse seltener

\n
    \n
  • Filament trocknen vor dem Druck — Feuchtigkeit verbrennt in der Düse
  • \n
  • Drucktemperatur nicht dauerhaft zu hoch setzen — Filament verbrennt
  • \n
  • Beim Materialwechsel immer purgen: PETG nach PLA mit 250°C-Purge
  • \n
  • Abrasive Filamente (CF, GF) nur mit gehärtetem Stahl drucken
  • \n
  • Drucker nicht mit eingespanntem Filament stehen lassen (Hitzeschleicher)
  • \n
\n\n
\n\n
\n\n\n diff --git a/backup/content/posts/warping-vermeiden.html b/backup/content/posts/warping-vermeiden.html new file mode 100644 index 0000000..a2b2dc0 --- /dev/null +++ b/backup/content/posts/warping-vermeiden.html @@ -0,0 +1,8 @@ +--- +title: "Warping vermeiden" +slug: "warping-vermeiden" +type: post +excerpt: "" +--- + +\n
\n\n\n\n
Fehleranalyse

Warping dauerhaft vermeiden

Warum sich Ecken abheben und wie du es ein für alle Mal löst.

\n

Ursache

Warping entsteht durch thermische Spannung: Das Filament kühlt ungleichmäßig ab. Die untere Schicht kühlt schneller als die obere, Ecken heben sich ab.

Warping-Risiko nach Material

MaterialRisikoHauptmaßnahme
PLAGeringBett reinigen
PETGMittel80°C Bett + Brim
ABSSehr hochEnclosure + Brim + 110°C
ASAHochEnclosure + Brim + 105°C

Schritt 1: Bett reinigen

  1. Druckplatte unter warmem Wasser mit Spülmittel waschen
  2. Mit Isopropanol (90%+) nachwischen
  3. Nie mehr mit bloßen Fingern auf die Druckfläche
  4. Alle 20–30 Drucke tiefenreinigen

Schritt 2: Betttemperatur

  • PLA: 60°C Standard, 65°C bei Problemen
  • PETG: 80–85°C
  • ABS: 100–110°C
  • ASA: 100–105°C

Schritt 3: Brim

  • PLA kleine Teile: 3–5mm
  • PETG, große Teile: 5–8mm
  • ABS/ASA: 8–15mm (je größer das Teil, desto mehr)

Schritt 4: Kühlung reduzieren

Zu viel Kühlung verstärkt Warping. ABS/ASA: Fan 0%. PETG: max. 40% Fan.

Schritt 5: Enclosure für ABS/ASA

Ohne Enclosure ist Warping bei ABS/ASA nahezu unvermeidbar. DIY aus Ikea Lack-Tisch oder Karton reicht für den Anfang.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
diff --git a/backup/uploads/ao_ccss/index.html b/backup/uploads/ao_ccss/index.html new file mode 100644 index 0000000..e5346ce --- /dev/null +++ b/backup/uploads/ao_ccss/index.html @@ -0,0 +1 @@ +Generated by Autoptimize \ No newline at end of file diff --git a/backup/uploads/community-logo.jpg b/backup/uploads/community-logo.jpg new file mode 100644 index 0000000..b95684a Binary files /dev/null and b/backup/uploads/community-logo.jpg differ diff --git a/backup/uploads/elementor/css/post-5.css b/backup/uploads/elementor/css/post-5.css new file mode 100644 index 0000000..55a763a --- /dev/null +++ b/backup/uploads/elementor/css/post-5.css @@ -0,0 +1 @@ +.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}} \ No newline at end of file diff --git a/backup/uploads/m3d-hero.bundle.js b/backup/uploads/m3d-hero.bundle.js new file mode 100644 index 0000000..8ee349a --- /dev/null +++ b/backup/uploads/m3d-hero.bundle.js @@ -0,0 +1,441 @@ +var $0=0,q0=1,H0=2;var X0=0,ap=1,Y0=2,Wr=3,_s=0,rt=1,$s=2,qs=0,Ht=1,zn=2,Gn=3,Wn=4,$n=5,eu=6,Xt=100,cp=101,lp=102,j0=103,Z0=104,Ni=200,up=201,hp=202,dp=203,Ir=204,Pr=205,pp=206,fp=207,mp=208,gp=209,yp=210;var Oo=0,Vo=1,ko=2,In=3,zo=4,Go=5,Wo=6,$o=7,aa=0,J0=1,Q0=2,Ri=0,K0=1,eb=2,tb=3,sb=4;var ib=6,nb=7;var tu=300,qn=301,ca=302,su=303,iu=304,nu=306,Pn=1e3,bs=1001,Dn=1002,Ue=1003,xp=1004;var $r=1005;var ct=1006,ru=1007;var Ci=1008,rb=1008,lt=1009,Hn=1010,Xn=1011,rn=1012,ut=1013,Oe=1014,Ct=1015,$e=1016,bp=1017,_p=1018,Ei=1020,ou=35902,au=35899,Tp=1021,la=1022,Lt=1023,ns=1026,Hs=1027,ua=1028,ha=1029,Ms=1030,da=1031,ob=1032,pa=1033,qr=33776,Hr=33777,Xr=33778,Yr=33779,cu=35840,lu=35841,uu=35842,hu=35843,fa=36196,ma=37492,ga=37496,ya=37488,xa=37489,jr=37490,ba=37491,_a=37808,Ta=37809,Sa=37810,va=37811,wa=37812,Ma=37813,Aa=37814,Na=37815,Ra=37816,Ca=37817,Ea=37818,Ba=37819,Fa=37820,Ia=37821,Pa=36492,ab=36494,cb=36495,Da=36283,La=36284,Zr=36285,Ua=36286;var qo=2300,ul=2301,cl=2302,Kd=2303,ep=2400,tp=2401,sp=2402;var Xs=0,lb=1,Bi="",Pt="srgb",Ho="srgb-linear",Xo="linear",ne="srgb",du="",Sp="rg",ub="ga",hb=0,Qi=7680,db=7681,pb=7682,fb=7683,mb=34055,gb=34056,yb=5386,xb=512,bb=513,_b=514,Tb=515,Sb=516,vb=517,wb=518,hl=519,vp=512,pu=513,wp=514,Jr=515,Oa=516,Mp=517,Yn=518,Ap=519,Ln=35044,Qr=35048;var Dt=2e3,Yt=2001,As={COMPUTE:"compute",RENDER:"render"};var Ys={TEXTURE_COMPARE:"depthTextureCompare"};function d1(o){for(let e=o.length-1;e>=0;--e)if(o[e]>=65535)return!0;return!1}function Kr(o){return ArrayBuffer.isView(o)&&!(o instanceof DataView)}function dl(o){return document.createElementNS("http://www.w3.org/1999/xhtml",o)}function Mb(){let o=dl("canvas");return o.style.display="block",o}var v0={},Dr=null;function pl(...o){let e="THREE."+o.shift();Dr?Dr("log",e,...o):console.log(e,...o)}function Ab(o){let e=o[0];if(typeof e=="string"&&e.startsWith("TSL:")){let t=o[1];t&&t.isStackTrace?o[0]+=" "+t.getLocation():o[1]='Stack trace not available. Enable "THREE.Node.captureStackTrace" to capture stack traces.'}return o}function z(...o){o=Ab(o);let e="THREE."+o.shift();if(Dr)Dr("warn",e,...o);else{let t=o[0];t&&t.isStackTrace?console.warn(t.getError(e)):console.warn(e,...o)}}function O(...o){o=Ab(o);let e="THREE."+o.shift();if(Dr)Dr("error",e,...o);else{let t=o[0];t&&t.isStackTrace?console.error(t.getError(e)):console.error(e,...o)}}function _e(...o){let e=o.join(" ");e in v0||(v0[e]=!0,z(...o))}var Np={[Oo]:Vo,[ko]:Wo,[zo]:$o,[In]:Go,[Vo]:Oo,[Wo]:ko,[$o]:zo,[Go]:In},Ts=class{addEventListener(e,t){this._listeners===void 0&&(this._listeners={});let s=this._listeners;s[e]===void 0&&(s[e]=[]),s[e].indexOf(t)===-1&&s[e].push(t)}hasEventListener(e,t){let s=this._listeners;return s===void 0?!1:s[e]!==void 0&&s[e].indexOf(t)!==-1}removeEventListener(e,t){let s=this._listeners;if(s===void 0)return;let i=s[e];if(i!==void 0){let n=i.indexOf(t);n!==-1&&i.splice(n,1)}}dispatchEvent(e){let t=this._listeners;if(t===void 0)return;let s=t[e.type];if(s!==void 0){e.target=this;let i=s.slice(0);for(let n=0,r=i.length;n>8&255]+mt[o>>16&255]+mt[o>>24&255]+"-"+mt[e&255]+mt[e>>8&255]+"-"+mt[e>>16&15|64]+mt[e>>24&255]+"-"+mt[t&63|128]+mt[t>>8&255]+"-"+mt[t>>16&255]+mt[t>>24&255]+mt[s&255]+mt[s>>8&255]+mt[s>>16&255]+mt[s>>24&255]).toLowerCase()}function ue(o,e,t){return Math.max(e,Math.min(t,o))}function Rp(o,e){return(o%e+e)%e}function p1(o,e,t,s,i){return s+(o-e)*(i-s)/(t-e)}function f1(o,e,t){return o!==e?(t-o)/(e-o):0}function Uo(o,e,t){return(1-t)*o+t*e}function m1(o,e,t,s){return Uo(o,e,1-Math.exp(-t*s))}function g1(o,e=1){return e-Math.abs(Rp(o,e*2)-e)}function y1(o,e,t){return o<=e?0:o>=t?1:(o=(o-e)/(t-e),o*o*(3-2*o))}function x1(o,e,t){return o<=e?0:o>=t?1:(o=(o-e)/(t-e),o*o*o*(o*(o*6-15)+10))}function b1(o,e){return o+Math.floor(Math.random()*(e-o+1))}function _1(o,e){return o+Math.random()*(e-o)}function T1(o){return o*(.5-Math.random())}function S1(o){o!==void 0&&(w0=o);let e=w0+=1831565813;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}function v1(o){return o*Lo}function w1(o){return o*Un}function M1(o){return(o&o-1)===0&&o!==0}function A1(o){return Math.pow(2,Math.ceil(Math.log(o)/Math.LN2))}function N1(o){return Math.pow(2,Math.floor(Math.log(o)/Math.LN2))}function R1(o,e,t,s,i){let n=Math.cos,r=Math.sin,a=n(t/2),c=r(t/2),l=n((e+s)/2),u=r((e+s)/2),h=n((e-s)/2),d=r((e-s)/2),p=n((s-e)/2),m=r((s-e)/2);switch(i){case"XYX":o.set(a*u,c*h,c*d,a*l);break;case"YZY":o.set(c*d,a*u,c*h,a*l);break;case"ZXZ":o.set(c*h,c*d,a*u,a*l);break;case"XZX":o.set(a*u,c*m,c*p,a*l);break;case"YXY":o.set(c*p,a*u,c*m,a*l);break;case"ZYZ":o.set(c*m,c*p,a*u,a*l);break;default:z("MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+i)}}function At(o,e){switch(e.constructor){case Float32Array:return o;case Uint32Array:return o/4294967295;case Uint16Array:return o/65535;case Uint8Array:return o/255;case Int32Array:return Math.max(o/2147483647,-1);case Int16Array:return Math.max(o/32767,-1);case Int8Array:return Math.max(o/127,-1);default:throw new Error("Invalid component type.")}}function ce(o,e){switch(e.constructor){case Float32Array:return o;case Uint32Array:return Math.round(o*4294967295);case Uint16Array:return Math.round(o*65535);case Uint8Array:return Math.round(o*255);case Int32Array:return Math.round(o*2147483647);case Int16Array:return Math.round(o*32767);case Int8Array:return Math.round(o*127);default:throw new Error("Invalid component type.")}}var Va={DEG2RAD:Lo,RAD2DEG:Un,generateUUID:wi,clamp:ue,euclideanModulo:Rp,mapLinear:p1,inverseLerp:f1,lerp:Uo,damp:m1,pingpong:g1,smoothstep:y1,smootherstep:x1,randInt:b1,randFloat:_1,randFloatSpread:T1,seededRandom:S1,degToRad:v1,radToDeg:w1,isPowerOfTwo:M1,ceilPowerOfTwo:A1,floorPowerOfTwo:N1,setQuaternionFromProperEuler:R1,normalize:ce,denormalize:At},re=class o{constructor(e=0,t=0){o.prototype.isVector2=!0,this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let t=this.x,s=this.y,i=e.elements;return this.x=i[0]*t+i[3]*s+i[6],this.y=i[1]*t+i[4]*s+i[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=ue(this.x,e.x,t.x),this.y=ue(this.y,e.y,t.y),this}clampScalar(e,t){return this.x=ue(this.x,e,t),this.y=ue(this.y,e,t),this}clampLength(e,t){let s=this.length();return this.divideScalar(s||1).multiplyScalar(ue(s,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let s=this.dot(e)/t;return Math.acos(ue(s,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,s=this.y-e.y;return t*t+s*s}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,s){return this.x=e.x+(t.x-e.x)*s,this.y=e.y+(t.y-e.y)*s,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){let s=Math.cos(t),i=Math.sin(t),n=this.x-e.x,r=this.y-e.y;return this.x=n*s-r*i+e.x,this.y=n*i+r*s+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}},Ss=class{constructor(e=0,t=0,s=0,i=1){this.isQuaternion=!0,this._x=e,this._y=t,this._z=s,this._w=i}static slerpFlat(e,t,s,i,n,r,a){let c=s[i+0],l=s[i+1],u=s[i+2],h=s[i+3],d=n[r+0],p=n[r+1],m=n[r+2],g=n[r+3];if(h!==g||c!==d||l!==p||u!==m){let y=c*d+l*p+u*m+h*g;y<0&&(d=-d,p=-p,m=-m,g=-g,y=-y);let x=1-a;if(y<.9995){let _=Math.acos(y),w=Math.sin(_);x=Math.sin(x*_)/w,a=Math.sin(a*_)/w,c=c*x+d*a,l=l*x+p*a,u=u*x+m*a,h=h*x+g*a}else{c=c*x+d*a,l=l*x+p*a,u=u*x+m*a,h=h*x+g*a;let _=1/Math.sqrt(c*c+l*l+u*u+h*h);c*=_,l*=_,u*=_,h*=_}}e[t]=c,e[t+1]=l,e[t+2]=u,e[t+3]=h}static multiplyQuaternionsFlat(e,t,s,i,n,r){let a=s[i],c=s[i+1],l=s[i+2],u=s[i+3],h=n[r],d=n[r+1],p=n[r+2],m=n[r+3];return e[t]=a*m+u*h+c*p-l*d,e[t+1]=c*m+u*d+l*h-a*p,e[t+2]=l*m+u*p+a*d-c*h,e[t+3]=u*m-a*h-c*d-l*p,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,s,i){return this._x=e,this._y=t,this._z=s,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){let s=e._x,i=e._y,n=e._z,r=e._order,a=Math.cos,c=Math.sin,l=a(s/2),u=a(i/2),h=a(n/2),d=c(s/2),p=c(i/2),m=c(n/2);switch(r){case"XYZ":this._x=d*u*h+l*p*m,this._y=l*p*h-d*u*m,this._z=l*u*m+d*p*h,this._w=l*u*h-d*p*m;break;case"YXZ":this._x=d*u*h+l*p*m,this._y=l*p*h-d*u*m,this._z=l*u*m-d*p*h,this._w=l*u*h+d*p*m;break;case"ZXY":this._x=d*u*h-l*p*m,this._y=l*p*h+d*u*m,this._z=l*u*m+d*p*h,this._w=l*u*h-d*p*m;break;case"ZYX":this._x=d*u*h-l*p*m,this._y=l*p*h+d*u*m,this._z=l*u*m-d*p*h,this._w=l*u*h+d*p*m;break;case"YZX":this._x=d*u*h+l*p*m,this._y=l*p*h+d*u*m,this._z=l*u*m-d*p*h,this._w=l*u*h-d*p*m;break;case"XZY":this._x=d*u*h-l*p*m,this._y=l*p*h-d*u*m,this._z=l*u*m+d*p*h,this._w=l*u*h+d*p*m;break;default:z("Quaternion: .setFromEuler() encountered an unknown order: "+r)}return t===!0&&this._onChangeCallback(),this}setFromAxisAngle(e,t){let s=t/2,i=Math.sin(s);return this._x=e.x*i,this._y=e.y*i,this._z=e.z*i,this._w=Math.cos(s),this._onChangeCallback(),this}setFromRotationMatrix(e){let t=e.elements,s=t[0],i=t[4],n=t[8],r=t[1],a=t[5],c=t[9],l=t[2],u=t[6],h=t[10],d=s+a+h;if(d>0){let p=.5/Math.sqrt(d+1);this._w=.25/p,this._x=(u-c)*p,this._y=(n-l)*p,this._z=(r-i)*p}else if(s>a&&s>h){let p=2*Math.sqrt(1+s-a-h);this._w=(u-c)/p,this._x=.25*p,this._y=(i+r)/p,this._z=(n+l)/p}else if(a>h){let p=2*Math.sqrt(1+a-s-h);this._w=(n-l)/p,this._x=(i+r)/p,this._y=.25*p,this._z=(c+u)/p}else{let p=2*Math.sqrt(1+h-s-a);this._w=(r-i)/p,this._x=(n+l)/p,this._y=(c+u)/p,this._z=.25*p}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let s=e.dot(t)+1;return s<1e-8?(s=0,Math.abs(e.x)>Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=s):(this._x=0,this._y=-e.z,this._z=e.y,this._w=s)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x,this._w=s),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(ue(this.dot(e),-1,1)))}rotateTowards(e,t){let s=this.angleTo(e);if(s===0)return this;let i=Math.min(1,t/s);return this.slerp(e,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x=this._x*e,this._y=this._y*e,this._z=this._z*e,this._w=this._w*e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){let s=e._x,i=e._y,n=e._z,r=e._w,a=t._x,c=t._y,l=t._z,u=t._w;return this._x=s*u+r*a+i*l-n*c,this._y=i*u+r*c+n*a-s*l,this._z=n*u+r*l+s*c-i*a,this._w=r*u-s*a-i*c-n*l,this._onChangeCallback(),this}slerp(e,t){let s=e._x,i=e._y,n=e._z,r=e._w,a=this.dot(e);a<0&&(s=-s,i=-i,n=-n,r=-r,a=-a);let c=1-t;if(a<.9995){let l=Math.acos(a),u=Math.sin(l);c=Math.sin(c*l)/u,t=Math.sin(t*l)/u,this._x=this._x*c+s*t,this._y=this._y*c+i*t,this._z=this._z*c+n*t,this._w=this._w*c+r*t,this._onChangeCallback()}else this._x=this._x*c+s*t,this._y=this._y*c+i*t,this._z=this._z*c+n*t,this._w=this._w*c+r*t,this.normalize();return this}slerpQuaternions(e,t,s){return this.copy(e).slerp(t,s)}random(){let e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),s=Math.random(),i=Math.sqrt(1-s),n=Math.sqrt(s);return this.set(i*Math.sin(e),i*Math.cos(e),n*Math.sin(t),n*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}},R=class o{constructor(e=0,t=0,s=0){o.prototype.isVector3=!0,this.x=e,this.y=t,this.z=s}set(e,t,s){return s===void 0&&(s=this.z),this.x=e,this.y=t,this.z=s,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(M0.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(M0.setFromAxisAngle(e,t))}applyMatrix3(e){let t=this.x,s=this.y,i=this.z,n=e.elements;return this.x=n[0]*t+n[3]*s+n[6]*i,this.y=n[1]*t+n[4]*s+n[7]*i,this.z=n[2]*t+n[5]*s+n[8]*i,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let t=this.x,s=this.y,i=this.z,n=e.elements,r=1/(n[3]*t+n[7]*s+n[11]*i+n[15]);return this.x=(n[0]*t+n[4]*s+n[8]*i+n[12])*r,this.y=(n[1]*t+n[5]*s+n[9]*i+n[13])*r,this.z=(n[2]*t+n[6]*s+n[10]*i+n[14])*r,this}applyQuaternion(e){let t=this.x,s=this.y,i=this.z,n=e.x,r=e.y,a=e.z,c=e.w,l=2*(r*i-a*s),u=2*(a*t-n*i),h=2*(n*s-r*t);return this.x=t+c*l+r*h-a*u,this.y=s+c*u+a*l-n*h,this.z=i+c*h+n*u-r*l,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){let t=this.x,s=this.y,i=this.z,n=e.elements;return this.x=n[0]*t+n[4]*s+n[8]*i,this.y=n[1]*t+n[5]*s+n[9]*i,this.z=n[2]*t+n[6]*s+n[10]*i,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=ue(this.x,e.x,t.x),this.y=ue(this.y,e.y,t.y),this.z=ue(this.z,e.z,t.z),this}clampScalar(e,t){return this.x=ue(this.x,e,t),this.y=ue(this.y,e,t),this.z=ue(this.z,e,t),this}clampLength(e,t){let s=this.length();return this.divideScalar(s||1).multiplyScalar(ue(s,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,s){return this.x=e.x+(t.x-e.x)*s,this.y=e.y+(t.y-e.y)*s,this.z=e.z+(t.z-e.z)*s,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){let s=e.x,i=e.y,n=e.z,r=t.x,a=t.y,c=t.z;return this.x=i*c-n*a,this.y=n*r-s*c,this.z=s*a-i*r,this}projectOnVector(e){let t=e.lengthSq();if(t===0)return this.set(0,0,0);let s=e.dot(this)/t;return this.copy(e).multiplyScalar(s)}projectOnPlane(e){return Bd.copy(this).projectOnVector(e),this.sub(Bd)}reflect(e){return this.sub(Bd.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let s=this.dot(e)/t;return Math.acos(ue(s,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,s=this.y-e.y,i=this.z-e.z;return t*t+s*s+i*i}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,s){let i=Math.sin(t)*e;return this.x=i*Math.sin(s),this.y=Math.cos(t)*e,this.z=i*Math.cos(s),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,s){return this.x=e*Math.sin(t),this.y=s,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){let t=this.setFromMatrixColumn(e,0).length(),s=this.setFromMatrixColumn(e,1).length(),i=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=s,this.z=i,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,t*4)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,t*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,t=Math.random()*2-1,s=Math.sqrt(1-t*t);return this.x=s*Math.cos(e),this.y=t,this.z=s*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}},Bd=new R,M0=new Ss,Nt=class o{constructor(e,t,s,i,n,r,a,c,l){o.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],e!==void 0&&this.set(e,t,s,i,n,r,a,c,l)}set(e,t,s,i,n,r,a,c,l){let u=this.elements;return u[0]=e,u[1]=i,u[2]=a,u[3]=t,u[4]=n,u[5]=c,u[6]=s,u[7]=r,u[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let t=this.elements,s=e.elements;return t[0]=s[0],t[1]=s[1],t[2]=s[2],t[3]=s[3],t[4]=s[4],t[5]=s[5],t[6]=s[6],t[7]=s[7],t[8]=s[8],this}extractBasis(e,t,s){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),s.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let s=e.elements,i=t.elements,n=this.elements,r=s[0],a=s[3],c=s[6],l=s[1],u=s[4],h=s[7],d=s[2],p=s[5],m=s[8],g=i[0],y=i[3],x=i[6],_=i[1],w=i[4],S=i[7],E=i[2],B=i[5],N=i[8];return n[0]=r*g+a*_+c*E,n[3]=r*y+a*w+c*B,n[6]=r*x+a*S+c*N,n[1]=l*g+u*_+h*E,n[4]=l*y+u*w+h*B,n[7]=l*x+u*S+h*N,n[2]=d*g+p*_+m*E,n[5]=d*y+p*w+m*B,n[8]=d*x+p*S+m*N,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){let e=this.elements,t=e[0],s=e[1],i=e[2],n=e[3],r=e[4],a=e[5],c=e[6],l=e[7],u=e[8];return t*r*u-t*a*l-s*n*u+s*a*c+i*n*l-i*r*c}invert(){let e=this.elements,t=e[0],s=e[1],i=e[2],n=e[3],r=e[4],a=e[5],c=e[6],l=e[7],u=e[8],h=u*r-a*l,d=a*c-u*n,p=l*n-r*c,m=t*h+s*d+i*p;if(m===0)return this.set(0,0,0,0,0,0,0,0,0);let g=1/m;return e[0]=h*g,e[1]=(i*l-u*s)*g,e[2]=(a*s-i*r)*g,e[3]=d*g,e[4]=(u*t-i*c)*g,e[5]=(i*n-a*t)*g,e[6]=p*g,e[7]=(s*c-l*t)*g,e[8]=(r*t-s*n)*g,this}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,s,i,n,r,a){let c=Math.cos(n),l=Math.sin(n);return this.set(s*c,s*l,-s*(c*r+l*a)+r+e,-i*l,i*c,-i*(-l*r+c*a)+a+t,0,0,1),this}scale(e,t){return this.premultiply(Fd.makeScale(e,t)),this}rotate(e){return this.premultiply(Fd.makeRotation(-e)),this}translate(e,t){return this.premultiply(Fd.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){let t=Math.cos(e),s=Math.sin(e);return this.set(t,-s,0,s,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){let t=this.elements,s=e.elements;for(let i=0;i<9;i++)if(t[i]!==s[i])return!1;return!0}fromArray(e,t=0){for(let s=0;s<9;s++)this.elements[s]=e[s+t];return this}toArray(e=[],t=0){let s=this.elements;return e[t]=s[0],e[t+1]=s[1],e[t+2]=s[2],e[t+3]=s[3],e[t+4]=s[4],e[t+5]=s[5],e[t+6]=s[6],e[t+7]=s[7],e[t+8]=s[8],e}clone(){return new this.constructor().fromArray(this.elements)}},Fd=new Nt,A0=new Nt().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),N0=new Nt().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);function C1(){let o={enabled:!0,workingColorSpace:Ho,spaces:{},convert:function(i,n,r){return this.enabled===!1||n===r||!n||!r||(this.spaces[n].transfer===ne&&(i.r=Mi(i.r),i.g=Mi(i.g),i.b=Mi(i.b)),this.spaces[n].primaries!==this.spaces[r].primaries&&(i.applyMatrix3(this.spaces[n].toXYZ),i.applyMatrix3(this.spaces[r].fromXYZ)),this.spaces[r].transfer===ne&&(i.r=Fr(i.r),i.g=Fr(i.g),i.b=Fr(i.b))),i},workingToColorSpace:function(i,n){return this.convert(i,this.workingColorSpace,n)},colorSpaceToWorking:function(i,n){return this.convert(i,n,this.workingColorSpace)},getPrimaries:function(i){return this.spaces[i].primaries},getTransfer:function(i){return i===Bi?Xo:this.spaces[i].transfer},getToneMappingMode:function(i){return this.spaces[i].outputColorSpaceConfig.toneMappingMode||"standard"},getLuminanceCoefficients:function(i,n=this.workingColorSpace){return i.fromArray(this.spaces[n].luminanceCoefficients)},define:function(i){Object.assign(this.spaces,i)},_getMatrix:function(i,n,r){return i.copy(this.spaces[n].toXYZ).multiply(this.spaces[r].fromXYZ)},_getDrawingBufferColorSpace:function(i){return this.spaces[i].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(i=this.workingColorSpace){return this.spaces[i].workingColorSpaceConfig.unpackColorSpace},fromWorkingColorSpace:function(i,n){return _e("ColorManagement: .fromWorkingColorSpace() has been renamed to .workingToColorSpace()."),o.workingToColorSpace(i,n)},toWorkingColorSpace:function(i,n){return _e("ColorManagement: .toWorkingColorSpace() has been renamed to .colorSpaceToWorking()."),o.colorSpaceToWorking(i,n)}},e=[.64,.33,.3,.6,.15,.06],t=[.2126,.7152,.0722],s=[.3127,.329];return o.define({[Ho]:{primaries:e,whitePoint:s,transfer:Xo,toXYZ:A0,fromXYZ:N0,luminanceCoefficients:t,workingColorSpaceConfig:{unpackColorSpace:Pt},outputColorSpaceConfig:{drawingBufferColorSpace:Pt}},[Pt]:{primaries:e,whitePoint:s,transfer:ne,toXYZ:A0,fromXYZ:N0,luminanceCoefficients:t,outputColorSpaceConfig:{drawingBufferColorSpace:Pt}}}),o}var me=C1();function Mi(o){return o<.04045?o*.0773993808:Math.pow(o*.9478672986+.0521327014,2.4)}function Fr(o){return o<.0031308?o*12.92:1.055*Math.pow(o,.41666)-.055}var br,fl=class{static getDataURL(e,t="image/png"){if(/^data:/i.test(e.src)||typeof HTMLCanvasElement>"u")return e.src;let s;if(e instanceof HTMLCanvasElement)s=e;else{br===void 0&&(br=dl("canvas")),br.width=e.width,br.height=e.height;let i=br.getContext("2d");e instanceof ImageData?i.putImageData(e,0,0):i.drawImage(e,0,0,e.width,e.height),s=br}return s.toDataURL(t)}static sRGBToLinear(e){if(typeof HTMLImageElement<"u"&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&e instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&e instanceof ImageBitmap){let t=dl("canvas");t.width=e.width,t.height=e.height;let s=t.getContext("2d");s.drawImage(e,0,0,e.width,e.height);let i=s.getImageData(0,0,e.width,e.height),n=i.data;for(let r=0;r1),this.pmremVersion=0}get width(){return this.source.getSize(Pd).x}get height(){return this.source.getSize(Pd).y}get depth(){return this.source.getSize(Pd).z}get image(){return this.source.data}set image(e=null){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}clone(){return new this.constructor().copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.renderTarget=e.renderTarget,this.isRenderTargetTexture=e.isRenderTargetTexture,this.isArrayTexture=e.isArrayTexture,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}setValues(e){for(let t in e){let s=e[t];if(s===void 0){z(`Texture.setValues(): parameter '${t}' has value of undefined.`);continue}let i=this[t];if(i===void 0){z(`Texture.setValues(): property '${t}' does not exist.`);continue}i&&s&&i.isVector2&&s.isVector2||i&&s&&i.isVector3&&s.isVector3||i&&s&&i.isMatrix3&&s.isMatrix3?i.copy(s):this[t]=s}}toJSON(e){let t=e===void 0||typeof e=="string";if(!t&&e.textures[this.uuid]!==void 0)return e.textures[this.uuid];let s={metadata:{version:4.7,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(s.userData=this.userData),t||(e.textures[this.uuid]=s),s}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(e){if(this.mapping!==tu)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case Pn:e.x=e.x-Math.floor(e.x);break;case bs:e.x=e.x<0?0:1;break;case Dn:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x=e.x-Math.floor(e.x);break}if(e.y<0||e.y>1)switch(this.wrapT){case Pn:e.y=e.y-Math.floor(e.y);break;case bs:e.y=e.y<0?0:1;break;case Dn:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y=e.y-Math.floor(e.y);break}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){e===!0&&this.pmremVersion++}};xt.DEFAULT_IMAGE=null;xt.DEFAULT_MAPPING=tu;xt.DEFAULT_ANISOTROPY=1;var Te=class o{constructor(e=0,t=0,s=0,i=1){o.prototype.isVector4=!0,this.x=e,this.y=t,this.z=s,this.w=i}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,s,i){return this.x=e,this.y=t,this.z=s,this.w=i,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w!==void 0?e.w:1,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let t=this.x,s=this.y,i=this.z,n=this.w,r=e.elements;return this.x=r[0]*t+r[4]*s+r[8]*i+r[12]*n,this.y=r[1]*t+r[5]*s+r[9]*i+r[13]*n,this.z=r[2]*t+r[6]*s+r[10]*i+r[14]*n,this.w=r[3]*t+r[7]*s+r[11]*i+r[15]*n,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,s,i,n,c=e.elements,l=c[0],u=c[4],h=c[8],d=c[1],p=c[5],m=c[9],g=c[2],y=c[6],x=c[10];if(Math.abs(u-d)<.01&&Math.abs(h-g)<.01&&Math.abs(m-y)<.01){if(Math.abs(u+d)<.1&&Math.abs(h+g)<.1&&Math.abs(m+y)<.1&&Math.abs(l+p+x-3)<.1)return this.set(1,0,0,0),this;t=Math.PI;let w=(l+1)/2,S=(p+1)/2,E=(x+1)/2,B=(u+d)/4,N=(h+g)/4,C=(m+y)/4;return w>S&&w>E?w<.01?(s=0,i=.707106781,n=.707106781):(s=Math.sqrt(w),i=B/s,n=N/s):S>E?S<.01?(s=.707106781,i=0,n=.707106781):(i=Math.sqrt(S),s=B/i,n=C/i):E<.01?(s=.707106781,i=.707106781,n=0):(n=Math.sqrt(E),s=N/n,i=C/n),this.set(s,i,n,t),this}let _=Math.sqrt((y-m)*(y-m)+(h-g)*(h-g)+(d-u)*(d-u));return Math.abs(_)<.001&&(_=1),this.x=(y-m)/_,this.y=(h-g)/_,this.z=(d-u)/_,this.w=Math.acos((l+p+x-1)/2),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this.w=t[15],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,t){return this.x=ue(this.x,e.x,t.x),this.y=ue(this.y,e.y,t.y),this.z=ue(this.z,e.z,t.z),this.w=ue(this.w,e.w,t.w),this}clampScalar(e,t){return this.x=ue(this.x,e,t),this.y=ue(this.y,e,t),this.z=ue(this.z,e,t),this.w=ue(this.w,e,t),this}clampLength(e,t){let s=this.length();return this.divideScalar(s||1).multiplyScalar(ue(s,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this.w+=(e.w-this.w)*t,this}lerpVectors(e,t,s){return this.x=e.x+(t.x-e.x)*s,this.y=e.y+(t.y-e.y)*s,this.z=e.z+(t.z-e.z)*s,this.w=e.w+(t.w-e.w)*s,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this.w=e[t+3],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e[t+3]=this.w,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this.w=e.getW(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}},bt=class extends Ts{constructor(e=1,t=1,s={}){super(),s=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:ct,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1,depth:1,multiview:!1},s),this.isRenderTarget=!0,this.width=e,this.height=t,this.depth=s.depth,this.scissor=new Te(0,0,e,t),this.scissorTest=!1,this.viewport=new Te(0,0,e,t),this.textures=[];let i={width:e,height:t,depth:s.depth},n=new xt(i),r=s.count;for(let a=0;a1);this.dispose()}this.viewport.set(0,0,e,t),this.scissor.set(0,0,e,t)}clone(){return new this.constructor().copy(this)}copy(e){this.width=e.width,this.height=e.height,this.depth=e.depth,this.scissor.copy(e.scissor),this.scissorTest=e.scissorTest,this.viewport.copy(e.viewport),this.textures.length=0;for(let t=0,s=e.textures.length;t>>0}enable(e){this.mask|=1<1){for(let t=0;t1){for(let s=0;s0&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),i.up=this.up.toArray(),this.pivot!==null&&(i.pivot=this.pivot.toArray()),this.matrixAutoUpdate===!1&&(i.matrixAutoUpdate=!1),this.morphTargetDictionary!==void 0&&(i.morphTargetDictionary=Object.assign({},this.morphTargetDictionary)),this.morphTargetInfluences!==void 0&&(i.morphTargetInfluences=this.morphTargetInfluences.slice()),this.isInstancedMesh&&(i.type="InstancedMesh",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(i.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(i.type="BatchedMesh",i.perObjectFrustumCulled=this.perObjectFrustumCulled,i.sortObjects=this.sortObjects,i.drawRanges=this._drawRanges,i.reservedRanges=this._reservedRanges,i.geometryInfo=this._geometryInfo.map(a=>({...a,boundingBox:a.boundingBox?a.boundingBox.toJSON():void 0,boundingSphere:a.boundingSphere?a.boundingSphere.toJSON():void 0})),i.instanceInfo=this._instanceInfo.map(a=>({...a})),i.availableInstanceIds=this._availableInstanceIds.slice(),i.availableGeometryIds=this._availableGeometryIds.slice(),i.nextIndexStart=this._nextIndexStart,i.nextVertexStart=this._nextVertexStart,i.geometryCount=this._geometryCount,i.maxInstanceCount=this._maxInstanceCount,i.maxVertexCount=this._maxVertexCount,i.maxIndexCount=this._maxIndexCount,i.geometryInitialized=this._geometryInitialized,i.matricesTexture=this._matricesTexture.toJSON(e),i.indirectTexture=this._indirectTexture.toJSON(e),this._colorsTexture!==null&&(i.colorsTexture=this._colorsTexture.toJSON(e)),this.boundingSphere!==null&&(i.boundingSphere=this.boundingSphere.toJSON()),this.boundingBox!==null&&(i.boundingBox=this.boundingBox.toJSON()));function n(a,c){return a[c.uuid]===void 0&&(a[c.uuid]=c.toJSON(e)),c.uuid}if(this.isScene)this.background&&(this.background.isColor?i.background=this.background.toJSON():this.background.isTexture&&(i.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(i.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=n(e.geometries,this.geometry);let a=this.geometry.parameters;if(a!==void 0&&a.shapes!==void 0){let c=a.shapes;if(Array.isArray(c))for(let l=0,u=c.length;l0){i.children=[];for(let a=0;a0){i.animations=[];for(let a=0;a0&&(s.geometries=a),c.length>0&&(s.materials=c),l.length>0&&(s.textures=l),u.length>0&&(s.images=u),h.length>0&&(s.shapes=h),d.length>0&&(s.skeletons=d),p.length>0&&(s.animations=p),m.length>0&&(s.nodes=m)}return s.object=i,s;function r(a){let c=[];for(let l in a){let u=a[l];delete u.metadata,c.push(u)}return c}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),e.pivot!==null&&(this.pivot=e.pivot.clone()),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.static=e.static,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),t===!0)for(let s=0;sp+m?(l.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:e.handedness,target:this})):!l.inputState.pinching&&d<=p-m&&(l.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:e.handedness,target:this}))}else c!==null&&e.gripSpace&&(n=t.getPose(e.gripSpace,s),n!==null&&(c.matrix.fromArray(n.transform.matrix),c.matrix.decompose(c.position,c.rotation,c.scale),c.matrixWorldNeedsUpdate=!0,n.linearVelocity?(c.hasLinearVelocity=!0,c.linearVelocity.copy(n.linearVelocity)):c.hasLinearVelocity=!1,n.angularVelocity?(c.hasAngularVelocity=!0,c.angularVelocity.copy(n.angularVelocity)):c.hasAngularVelocity=!1));a!==null&&(i=t.getPose(e.targetRaySpace,s),i===null&&n!==null&&(i=n),i!==null&&(a.matrix.fromArray(i.transform.matrix),a.matrix.decompose(a.position,a.rotation,a.scale),a.matrixWorldNeedsUpdate=!0,i.linearVelocity?(a.hasLinearVelocity=!0,a.linearVelocity.copy(i.linearVelocity)):a.hasLinearVelocity=!1,i.angularVelocity?(a.hasAngularVelocity=!0,a.angularVelocity.copy(i.angularVelocity)):a.hasAngularVelocity=!1,this.dispatchEvent(O1)))}return a!==null&&(a.visible=i!==null),c!==null&&(c.visible=n!==null),l!==null&&(l.visible=r!==null),this}_getHandJoint(e,t){if(e.joints[t.jointName]===void 0){let s=new Fn;s.matrixAutoUpdate=!1,s.visible=!1,e.joints[t.jointName]=s,e.add(s)}return e.joints[t.jointName]}},Nb={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Xi={h:0,s:0,l:0},Wc={h:0,s:0,l:0};function Ld(o,e,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?o+(e-o)*6*t:t<1/2?e:t<2/3?o+(e-o)*6*(2/3-t):o}var ge=class{constructor(e,t,s){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,t,s)}set(e,t,s){if(t===void 0&&s===void 0){let i=e;i&&i.isColor?this.copy(i):typeof i=="number"?this.setHex(i):typeof i=="string"&&this.setStyle(i)}else this.setRGB(e,t,s);return this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=Pt){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,me.colorSpaceToWorking(this,t),this}setRGB(e,t,s,i=me.workingColorSpace){return this.r=e,this.g=t,this.b=s,me.colorSpaceToWorking(this,i),this}setHSL(e,t,s,i=me.workingColorSpace){if(e=Rp(e,1),t=ue(t,0,1),s=ue(s,0,1),t===0)this.r=this.g=this.b=s;else{let n=s<=.5?s*(1+t):s+t-s*t,r=2*s-n;this.r=Ld(r,n,e+1/3),this.g=Ld(r,n,e),this.b=Ld(r,n,e-1/3)}return me.colorSpaceToWorking(this,i),this}setStyle(e,t=Pt){function s(n){n!==void 0&&parseFloat(n)<1&&z("Color: Alpha component of "+e+" will be ignored.")}let i;if(i=/^(\w+)\(([^\)]*)\)/.exec(e)){let n,r=i[1],a=i[2];switch(r){case"rgb":case"rgba":if(n=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return s(n[4]),this.setRGB(Math.min(255,parseInt(n[1],10))/255,Math.min(255,parseInt(n[2],10))/255,Math.min(255,parseInt(n[3],10))/255,t);if(n=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return s(n[4]),this.setRGB(Math.min(100,parseInt(n[1],10))/100,Math.min(100,parseInt(n[2],10))/100,Math.min(100,parseInt(n[3],10))/100,t);break;case"hsl":case"hsla":if(n=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return s(n[4]),this.setHSL(parseFloat(n[1])/360,parseFloat(n[2])/100,parseFloat(n[3])/100,t);break;default:z("Color: Unknown color model "+e)}}else if(i=/^\#([A-Fa-f\d]+)$/.exec(e)){let n=i[1],r=n.length;if(r===3)return this.setRGB(parseInt(n.charAt(0),16)/15,parseInt(n.charAt(1),16)/15,parseInt(n.charAt(2),16)/15,t);if(r===6)return this.setHex(parseInt(n,16),t);z("Color: Invalid hex color "+e)}else if(e&&e.length>0)return this.setColorName(e,t);return this}setColorName(e,t=Pt){let s=Nb[e.toLowerCase()];return s!==void 0?this.setHex(s,t):z("Color: Unknown color "+e),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=Mi(e.r),this.g=Mi(e.g),this.b=Mi(e.b),this}copyLinearToSRGB(e){return this.r=Fr(e.r),this.g=Fr(e.g),this.b=Fr(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=Pt){return me.workingToColorSpace(gt.copy(this),e),Math.round(ue(gt.r*255,0,255))*65536+Math.round(ue(gt.g*255,0,255))*256+Math.round(ue(gt.b*255,0,255))}getHexString(e=Pt){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=me.workingColorSpace){me.workingToColorSpace(gt.copy(this),t);let s=gt.r,i=gt.g,n=gt.b,r=Math.max(s,i,n),a=Math.min(s,i,n),c,l,u=(a+r)/2;if(a===r)c=0,l=0;else{let h=r-a;switch(l=u<=.5?h/(r+a):h/(2-r-a),r){case s:c=(i-n)/h+(i0&&(t.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(t.object.backgroundIntensity=this.backgroundIntensity),t.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(t.object.environmentIntensity=this.environmentIntensity),t.object.environmentRotation=this.environmentRotation.toArray(),t}},gs=new R,bi=new R,Ud=new R,_i=new R,vr=new R,wr=new R,D0=new R,Od=new R,Vd=new R,kd=new R,zd=new Te,Gd=new Te,Wd=new Te,Ki=class o{constructor(e=new R,t=new R,s=new R){this.a=e,this.b=t,this.c=s}static getNormal(e,t,s,i){i.subVectors(s,t),gs.subVectors(e,t),i.cross(gs);let n=i.lengthSq();return n>0?i.multiplyScalar(1/Math.sqrt(n)):i.set(0,0,0)}static getBarycoord(e,t,s,i,n){gs.subVectors(i,t),bi.subVectors(s,t),Ud.subVectors(e,t);let r=gs.dot(gs),a=gs.dot(bi),c=gs.dot(Ud),l=bi.dot(bi),u=bi.dot(Ud),h=r*l-a*a;if(h===0)return n.set(0,0,0),null;let d=1/h,p=(l*c-a*u)*d,m=(r*u-a*c)*d;return n.set(1-p-m,m,p)}static containsPoint(e,t,s,i){return this.getBarycoord(e,t,s,i,_i)===null?!1:_i.x>=0&&_i.y>=0&&_i.x+_i.y<=1}static getInterpolation(e,t,s,i,n,r,a,c){return this.getBarycoord(e,t,s,i,_i)===null?(c.x=0,c.y=0,"z"in c&&(c.z=0),"w"in c&&(c.w=0),null):(c.setScalar(0),c.addScaledVector(n,_i.x),c.addScaledVector(r,_i.y),c.addScaledVector(a,_i.z),c)}static getInterpolatedAttribute(e,t,s,i,n,r){return zd.setScalar(0),Gd.setScalar(0),Wd.setScalar(0),zd.fromBufferAttribute(e,t),Gd.fromBufferAttribute(e,s),Wd.fromBufferAttribute(e,i),r.setScalar(0),r.addScaledVector(zd,n.x),r.addScaledVector(Gd,n.y),r.addScaledVector(Wd,n.z),r}static isFrontFacing(e,t,s,i){return gs.subVectors(s,t),bi.subVectors(e,t),gs.cross(bi).dot(i)<0}set(e,t,s){return this.a.copy(e),this.b.copy(t),this.c.copy(s),this}setFromPointsAndIndices(e,t,s,i){return this.a.copy(e[t]),this.b.copy(e[s]),this.c.copy(e[i]),this}setFromAttributeAndIndices(e,t,s,i){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,s),this.c.fromBufferAttribute(e,i),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return gs.subVectors(this.c,this.b),bi.subVectors(this.a,this.b),gs.cross(bi).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return o.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,t){return o.getBarycoord(e,this.a,this.b,this.c,t)}getInterpolation(e,t,s,i,n){return o.getInterpolation(e,this.a,this.b,this.c,t,s,i,n)}containsPoint(e){return o.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return o.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){let s=this.a,i=this.b,n=this.c,r,a;vr.subVectors(i,s),wr.subVectors(n,s),Od.subVectors(e,s);let c=vr.dot(Od),l=wr.dot(Od);if(c<=0&&l<=0)return t.copy(s);Vd.subVectors(e,i);let u=vr.dot(Vd),h=wr.dot(Vd);if(u>=0&&h<=u)return t.copy(i);let d=c*h-u*l;if(d<=0&&c>=0&&u<=0)return r=c/(c-u),t.copy(s).addScaledVector(vr,r);kd.subVectors(e,n);let p=vr.dot(kd),m=wr.dot(kd);if(m>=0&&p<=m)return t.copy(n);let g=p*l-c*m;if(g<=0&&l>=0&&m<=0)return a=l/(l-m),t.copy(s).addScaledVector(wr,a);let y=u*m-p*h;if(y<=0&&h-u>=0&&p-m>=0)return D0.subVectors(n,i),a=(h-u)/(h-u+(p-m)),t.copy(i).addScaledVector(D0,a);let x=1/(y+g+d);return r=g*x,a=d*x,t.copy(s).addScaledVector(vr,r).addScaledVector(wr,a)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}},en=class{constructor(e=new R(1/0,1/0,1/0),t=new R(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){this.makeEmpty();for(let t=0,s=e.length;t=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y&&e.z>=this.min.z&&e.z<=this.max.z}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y&&e.max.z>=this.min.z&&e.min.z<=this.max.z}intersectsSphere(e){return this.clampPoint(e.center,ys),ys.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,s;return e.normal.x>0?(t=e.normal.x*this.min.x,s=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,s=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,s+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,s+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,s+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,s+=e.normal.z*this.min.z),t<=-e.constant&&s>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(Io),qc.subVectors(this.max,Io),Mr.subVectors(e.a,Io),Ar.subVectors(e.b,Io),Nr.subVectors(e.c,Io),Yi.subVectors(Ar,Mr),ji.subVectors(Nr,Ar),Rn.subVectors(Mr,Nr);let t=[0,-Yi.z,Yi.y,0,-ji.z,ji.y,0,-Rn.z,Rn.y,Yi.z,0,-Yi.x,ji.z,0,-ji.x,Rn.z,0,-Rn.x,-Yi.y,Yi.x,0,-ji.y,ji.x,0,-Rn.y,Rn.x,0];return!$d(t,Mr,Ar,Nr,qc)||(t=[1,0,0,0,1,0,0,0,1],!$d(t,Mr,Ar,Nr,qc))?!1:(Hc.crossVectors(Yi,ji),t=[Hc.x,Hc.y,Hc.z],$d(t,Mr,Ar,Nr,qc))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,ys).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(ys).length()*.5),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(Ti[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),Ti[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),Ti[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),Ti[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),Ti[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),Ti[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),Ti[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),Ti[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(Ti),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}toJSON(){return{min:this.min.toArray(),max:this.max.toArray()}}fromJSON(e){return this.min.fromArray(e.min),this.max.fromArray(e.max),this}},Ti=[new R,new R,new R,new R,new R,new R,new R,new R],ys=new R,$c=new en,Mr=new R,Ar=new R,Nr=new R,Yi=new R,ji=new R,Rn=new R,Io=new R,qc=new R,Hc=new R,Cn=new R;function $d(o,e,t,s,i){for(let n=0,r=o.length-3;n<=r;n+=3){Cn.fromArray(o,n);let a=i.x*Math.abs(Cn.x)+i.y*Math.abs(Cn.y)+i.z*Math.abs(Cn.z),c=e.dot(Cn),l=t.dot(Cn),u=s.dot(Cn);if(Math.max(-Math.max(c,l,u),Math.min(c,l,u))>a)return!1}return!0}var vi=V1();function V1(){let o=new ArrayBuffer(4),e=new Float32Array(o),t=new Uint32Array(o),s=new Uint32Array(512),i=new Uint32Array(512);for(let c=0;c<256;++c){let l=c-127;l<-27?(s[c]=0,s[c|256]=32768,i[c]=24,i[c|256]=24):l<-14?(s[c]=1024>>-l-14,s[c|256]=1024>>-l-14|32768,i[c]=-l-1,i[c|256]=-l-1):l<=15?(s[c]=l+15<<10,s[c|256]=l+15<<10|32768,i[c]=13,i[c|256]=13):l<128?(s[c]=31744,s[c|256]=64512,i[c]=24,i[c|256]=24):(s[c]=31744,s[c|256]=64512,i[c]=13,i[c|256]=13)}let n=new Uint32Array(2048),r=new Uint32Array(64),a=new Uint32Array(64);for(let c=1;c<1024;++c){let l=c<<13,u=0;for(;(l&8388608)===0;)l<<=1,u-=8388608;l&=-8388609,u+=947912704,n[c]=l|u}for(let c=1024;c<2048;++c)n[c]=939524096+(c-1024<<13);for(let c=1;c<31;++c)r[c]=c<<23;r[31]=1199570944,r[32]=2147483648;for(let c=33;c<63;++c)r[c]=2147483648+(c-32<<23);r[63]=3347054592;for(let c=1;c<64;++c)c!==32&&(a[c]=1024);return{floatView:e,uint32View:t,baseTable:s,shiftTable:i,mantissaTable:n,exponentTable:r,offsetTable:a}}function $t(o){Math.abs(o)>65504&&z("DataUtils.toHalfFloat(): Value out of range."),o=ue(o,-65504,65504),vi.floatView[0]=o;let e=vi.uint32View[0],t=e>>23&511;return vi.baseTable[t]+((e&8388607)>>vi.shiftTable[t])}function Xc(o){let e=o>>10;return vi.uint32View[0]=vi.mantissaTable[vi.offsetTable[e]+(o&1023)]+vi.exponentTable[e],vi.floatView[0]}var Je=new R,Yc=new re,k1=0,yt=class{constructor(e,t,s=!1){if(Array.isArray(e))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,Object.defineProperty(this,"id",{value:k1++}),this.name="",this.array=e,this.itemSize=t,this.count=e!==void 0?e.length/t:0,this.normalized=s,this.usage=Ln,this.updateRanges=[],this.gpuType=Ct,this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this.gpuType=e.gpuType,this}copyAt(e,t,s){e*=this.itemSize,s*=t.itemSize;for(let i=0,n=this.itemSize;ithis.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius=this.radius*e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;Po.subVectors(e,this.center);let t=Po.lengthSq();if(t>this.radius*this.radius){let s=Math.sqrt(t),i=(s-this.radius)*.5;this.center.addScaledVector(Po,i/s),this.radius+=i}return this}union(e){return e.isEmpty()?this:this.isEmpty()?(this.copy(e),this):(this.center.equals(e.center)===!0?this.radius=Math.max(this.radius,e.radius):(qd.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(Po.copy(e.center).add(qd)),this.expandByPoint(Po.copy(e.center).sub(qd))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}toJSON(){return{radius:this.radius,center:this.center.toArray()}}fromJSON(e){return this.radius=e.radius,this.center.fromArray(e.center),this}},G1=0,is=new de,Hd=new tt,Rr=new R,qt=new en,Do=new en,st=new R,vs=class o extends Ts{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:G1++}),this.uuid=wi(),this.name="",this.type="BufferGeometry",this.index=null,this.indirect=null,this.indirectOffset=0,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}getIndex(){return this.index}setIndex(e){return Array.isArray(e)?this.index=new(d1(e)?jo:Yo)(e,1):this.index=e,this}setIndirect(e,t=0){return this.indirect=e,this.indirectOffset=t,this}getIndirect(){return this.indirect}getAttribute(e){return this.attributes[e]}setAttribute(e,t){return this.attributes[e]=t,this}deleteAttribute(e){return delete this.attributes[e],this}hasAttribute(e){return this.attributes[e]!==void 0}addGroup(e,t,s=0){this.groups.push({start:e,count:t,materialIndex:s})}clearGroups(){this.groups=[]}setDrawRange(e,t){this.drawRange.start=e,this.drawRange.count=t}applyMatrix4(e){let t=this.attributes.position;t!==void 0&&(t.applyMatrix4(e),t.needsUpdate=!0);let s=this.attributes.normal;if(s!==void 0){let n=new Nt().getNormalMatrix(e);s.applyNormalMatrix(n),s.needsUpdate=!0}let i=this.attributes.tangent;return i!==void 0&&(i.transformDirection(e),i.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}applyQuaternion(e){return is.makeRotationFromQuaternion(e),this.applyMatrix4(is),this}rotateX(e){return is.makeRotationX(e),this.applyMatrix4(is),this}rotateY(e){return is.makeRotationY(e),this.applyMatrix4(is),this}rotateZ(e){return is.makeRotationZ(e),this.applyMatrix4(is),this}translate(e,t,s){return is.makeTranslation(e,t,s),this.applyMatrix4(is),this}scale(e,t,s){return is.makeScale(e,t,s),this.applyMatrix4(is),this}lookAt(e){return Hd.lookAt(e),Hd.updateMatrix(),this.applyMatrix4(Hd.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(Rr).negate(),this.translate(Rr.x,Rr.y,Rr.z),this}setFromPoints(e){let t=this.getAttribute("position");if(t===void 0){let s=[];for(let i=0,n=e.length;it.count&&z("BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry."),t.needsUpdate=!0}return this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new en);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){O("BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.",this),this.boundingBox.set(new R(-1/0,-1/0,-1/0),new R(1/0,1/0,1/0));return}if(e!==void 0){if(this.boundingBox.setFromBufferAttribute(e),t)for(let s=0,i=t.length;s0&&(e.userData=this.userData),this.parameters!==void 0){let c=this.parameters;for(let l in c)c[l]!==void 0&&(e[l]=c[l]);return e}e.data={attributes:{}};let t=this.index;t!==null&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});let s=this.attributes;for(let c in s){let l=s[c];e.data.attributes[c]=l.toJSON(e.data)}let i={},n=!1;for(let c in this.morphAttributes){let l=this.morphAttributes[c],u=[];for(let h=0,d=l.length;h0&&(i[c]=u,n=!0)}n&&(e.data.morphAttributes=i,e.data.morphTargetsRelative=this.morphTargetsRelative);let r=this.groups;r.length>0&&(e.data.groups=JSON.parse(JSON.stringify(r)));let a=this.boundingSphere;return a!==null&&(e.data.boundingSphere=a.toJSON()),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let t={};this.name=e.name;let s=e.index;s!==null&&this.setIndex(s.clone());let i=e.attributes;for(let l in i){let u=i[l];this.setAttribute(l,u.clone(t))}let n=e.morphAttributes;for(let l in n){let u=[],h=n[l];for(let d=0,p=h.length;d0!=e>0&&this.version++,this._alphaTest=e}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(let t in e){let s=e[t];if(s===void 0){z(`Material: parameter '${t}' has value of undefined.`);continue}let i=this[t];if(i===void 0){z(`Material: '${t}' is not a property of THREE.${this.type}.`);continue}i&&i.isColor?i.set(s):i&&i.isVector3&&s&&s.isVector3?i.copy(s):this[t]=s}}toJSON(e){let t=e===void 0||typeof e=="string";t&&(e={textures:{},images:{}});let s={metadata:{version:4.7,type:"Material",generator:"Material.toJSON"}};s.uuid=this.uuid,s.type=this.type,this.name!==""&&(s.name=this.name),this.color&&this.color.isColor&&(s.color=this.color.getHex()),this.roughness!==void 0&&(s.roughness=this.roughness),this.metalness!==void 0&&(s.metalness=this.metalness),this.sheen!==void 0&&(s.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(s.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(s.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(s.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&this.emissiveIntensity!==1&&(s.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(s.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(s.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(s.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(s.shininess=this.shininess),this.clearcoat!==void 0&&(s.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(s.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(s.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(s.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(s.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,s.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.sheenColorMap&&this.sheenColorMap.isTexture&&(s.sheenColorMap=this.sheenColorMap.toJSON(e).uuid),this.sheenRoughnessMap&&this.sheenRoughnessMap.isTexture&&(s.sheenRoughnessMap=this.sheenRoughnessMap.toJSON(e).uuid),this.dispersion!==void 0&&(s.dispersion=this.dispersion),this.iridescence!==void 0&&(s.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(s.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(s.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(s.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(s.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.anisotropy!==void 0&&(s.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(s.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(s.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(s.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(s.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(s.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(s.lightMap=this.lightMap.toJSON(e).uuid,s.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(s.aoMap=this.aoMap.toJSON(e).uuid,s.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(s.bumpMap=this.bumpMap.toJSON(e).uuid,s.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(s.normalMap=this.normalMap.toJSON(e).uuid,s.normalMapType=this.normalMapType,s.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(s.displacementMap=this.displacementMap.toJSON(e).uuid,s.displacementScale=this.displacementScale,s.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(s.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(s.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(s.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(s.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(s.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(s.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(s.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(s.combine=this.combine)),this.envMapRotation!==void 0&&(s.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(s.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(s.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(s.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(s.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(s.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(s.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(s.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(s.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(s.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(s.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(s.size=this.size),this.shadowSide!==null&&(s.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(s.sizeAttenuation=this.sizeAttenuation),this.blending!==Ht&&(s.blending=this.blending),this.side!==_s&&(s.side=this.side),this.vertexColors===!0&&(s.vertexColors=!0),this.opacity<1&&(s.opacity=this.opacity),this.transparent===!0&&(s.transparent=!0),this.blendSrc!==Ir&&(s.blendSrc=this.blendSrc),this.blendDst!==Pr&&(s.blendDst=this.blendDst),this.blendEquation!==Xt&&(s.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(s.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(s.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(s.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(s.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(s.blendAlpha=this.blendAlpha),this.depthFunc!==In&&(s.depthFunc=this.depthFunc),this.depthTest===!1&&(s.depthTest=this.depthTest),this.depthWrite===!1&&(s.depthWrite=this.depthWrite),this.colorWrite===!1&&(s.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(s.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==hl&&(s.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(s.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(s.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==Qi&&(s.stencilFail=this.stencilFail),this.stencilZFail!==Qi&&(s.stencilZFail=this.stencilZFail),this.stencilZPass!==Qi&&(s.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(s.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(s.rotation=this.rotation),this.polygonOffset===!0&&(s.polygonOffset=!0),this.polygonOffsetFactor!==0&&(s.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(s.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(s.linewidth=this.linewidth),this.dashSize!==void 0&&(s.dashSize=this.dashSize),this.gapSize!==void 0&&(s.gapSize=this.gapSize),this.scale!==void 0&&(s.scale=this.scale),this.dithering===!0&&(s.dithering=!0),this.alphaTest>0&&(s.alphaTest=this.alphaTest),this.alphaHash===!0&&(s.alphaHash=!0),this.alphaToCoverage===!0&&(s.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(s.premultipliedAlpha=!0),this.forceSinglePass===!0&&(s.forceSinglePass=!0),this.allowOverride===!1&&(s.allowOverride=!1),this.wireframe===!0&&(s.wireframe=!0),this.wireframeLinewidth>1&&(s.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(s.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(s.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(s.flatShading=!0),this.visible===!1&&(s.visible=!1),this.toneMapped===!1&&(s.toneMapped=!1),this.fog===!1&&(s.fog=!1),Object.keys(this.userData).length>0&&(s.userData=this.userData);function i(n){let r=[];for(let a in n){let c=n[a];delete c.metadata,r.push(c)}return r}if(t){let n=i(e.textures),r=i(e.images);n.length>0&&(s.textures=n),r.length>0&&(s.images=r)}return s}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;let t=e.clippingPlanes,s=null;if(t!==null){let i=t.length;s=new Array(i);for(let n=0;n!==i;++n)s[n]=t[n].clone()}return this.clippingPlanes=s,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.allowOverride=e.allowOverride,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(e){e===!0&&this.version++}},bl=class extends _t{constructor(e){super(),this.isSpriteMaterial=!0,this.type="SpriteMaterial",this.color=new ge(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.rotation=e.rotation,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}};var Si=new R,Xd=new R,jc=new R,Zi=new R,Yd=new R,Zc=new R,jd=new R,_l=class{constructor(e=new R,t=new R(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,Si)),this}closestPointToPoint(e,t){t.subVectors(e,this.origin);let s=t.dot(this.direction);return s<0?t.copy(this.origin):t.copy(this.origin).addScaledVector(this.direction,s)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){let t=Si.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(Si.copy(this.origin).addScaledVector(this.direction,t),Si.distanceToSquared(e))}distanceSqToSegment(e,t,s,i){Xd.copy(e).add(t).multiplyScalar(.5),jc.copy(t).sub(e).normalize(),Zi.copy(this.origin).sub(Xd);let n=e.distanceTo(t)*.5,r=-this.direction.dot(jc),a=Zi.dot(this.direction),c=-Zi.dot(jc),l=Zi.lengthSq(),u=Math.abs(1-r*r),h,d,p,m;if(u>0)if(h=r*c-a,d=r*a-c,m=n*u,h>=0)if(d>=-m)if(d<=m){let g=1/u;h*=g,d*=g,p=h*(h+r*d+2*a)+d*(r*h+d+2*c)+l}else d=n,h=Math.max(0,-(r*d+a)),p=-h*h+d*(d+2*c)+l;else d=-n,h=Math.max(0,-(r*d+a)),p=-h*h+d*(d+2*c)+l;else d<=-m?(h=Math.max(0,-(-r*n+a)),d=h>0?-n:Math.min(Math.max(-n,-c),n),p=-h*h+d*(d+2*c)+l):d<=m?(h=0,d=Math.min(Math.max(-n,-c),n),p=d*(d+2*c)+l):(h=Math.max(0,-(r*n+a)),d=h>0?n:Math.min(Math.max(-n,-c),n),p=-h*h+d*(d+2*c)+l);else d=r>0?-n:n,h=Math.max(0,-(r*d+a)),p=-h*h+d*(d+2*c)+l;return s&&s.copy(this.origin).addScaledVector(this.direction,h),i&&i.copy(Xd).addScaledVector(jc,d),p}intersectSphere(e,t){Si.subVectors(e.center,this.origin);let s=Si.dot(this.direction),i=Si.dot(Si)-s*s,n=e.radius*e.radius;if(i>n)return null;let r=Math.sqrt(n-i),a=s-r,c=s+r;return c<0?null:a<0?this.at(c,t):this.at(a,t)}intersectsSphere(e){return e.radius<0?!1:this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){let t=e.normal.dot(this.direction);if(t===0)return e.distanceToPoint(this.origin)===0?0:null;let s=-(this.origin.dot(e.normal)+e.constant)/t;return s>=0?s:null}intersectPlane(e,t){let s=this.distanceToPlane(e);return s===null?null:this.at(s,t)}intersectsPlane(e){let t=e.distanceToPoint(this.origin);return t===0||e.normal.dot(this.direction)*t<0}intersectBox(e,t){let s,i,n,r,a,c,l=1/this.direction.x,u=1/this.direction.y,h=1/this.direction.z,d=this.origin;return l>=0?(s=(e.min.x-d.x)*l,i=(e.max.x-d.x)*l):(s=(e.max.x-d.x)*l,i=(e.min.x-d.x)*l),u>=0?(n=(e.min.y-d.y)*u,r=(e.max.y-d.y)*u):(n=(e.max.y-d.y)*u,r=(e.min.y-d.y)*u),s>r||n>i||((n>s||isNaN(s))&&(s=n),(r=0?(a=(e.min.z-d.z)*h,c=(e.max.z-d.z)*h):(a=(e.max.z-d.z)*h,c=(e.min.z-d.z)*h),s>c||a>i)||((a>s||s!==s)&&(s=a),(c=0?s:i,t)}intersectsBox(e){return this.intersectBox(e,Si)!==null}intersectTriangle(e,t,s,i,n){Yd.subVectors(t,e),Zc.subVectors(s,e),jd.crossVectors(Yd,Zc);let r=this.direction.dot(jd),a;if(r>0){if(i)return null;a=1}else if(r<0)a=-1,r=-r;else return null;Zi.subVectors(this.origin,e);let c=a*this.direction.dot(Zc.crossVectors(Zi,Zc));if(c<0)return null;let l=a*this.direction.dot(Yd.cross(Zi));if(l<0||c+l>r)return null;let u=-a*Zi.dot(jd);return u<0?null:this.at(u/r,n)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}},ws=class extends _t{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new ge(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new jt,this.combine=aa,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},L0=new de,En=new _l,Jc=new Vn,U0=new R,Qc=new R,Kc=new R,el=new R,Zd=new R,tl=new R,O0=new R,sl=new R,Zt=class extends tt{constructor(e=new vs,t=new ws){super(),this.isMesh=!0,this.type="Mesh",this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.count=1,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),e.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=e.morphTargetInfluences.slice()),e.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary)),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}updateMorphTargets(){let t=this.geometry.morphAttributes,s=Object.keys(t);if(s.length>0){let i=t[s[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let n=0,r=i.length;n(e.far-e.near)**2))&&(L0.copy(n).invert(),En.copy(e.ray).applyMatrix4(L0),!(s.boundingBox!==null&&En.intersectsBox(s.boundingBox)===!1)&&this._computeIntersections(e,t,En)))}_computeIntersections(e,t,s){let i,n=this.geometry,r=this.material,a=n.index,c=n.attributes.position,l=n.attributes.uv,u=n.attributes.uv1,h=n.attributes.normal,d=n.groups,p=n.drawRange;if(a!==null)if(Array.isArray(r))for(let m=0,g=d.length;mt.far?null:{distance:l,point:sl.clone(),object:o}}function il(o,e,t,s,i,n,r,a,c,l){o.getVertexPosition(a,Qc),o.getVertexPosition(c,Kc),o.getVertexPosition(l,el);let u=$1(o,e,t,s,Qc,Kc,el,O0);if(u){let h=new R;Ki.getBarycoord(O0,Qc,Kc,el,h),i&&(u.uv=Ki.getInterpolatedAttribute(i,a,c,l,h,new re)),n&&(u.uv1=Ki.getInterpolatedAttribute(n,a,c,l,h,new re)),r&&(u.normal=Ki.getInterpolatedAttribute(r,a,c,l,h,new R),u.normal.dot(s.direction)>0&&u.normal.multiplyScalar(-1));let d={a,b:c,c:l,normal:new R,materialIndex:0};Ki.getNormal(Qc,Kc,el,d.normal),u.face=d,u.barycoord=h}return u}var Qo=class extends xt{constructor(e=null,t=1,s=1,i,n,r,a,c,l=Ue,u=Ue,h,d){super(null,r,a,c,l,u,i,n,h,d),this.isDataTexture=!0,this.image={data:e,width:t,height:s},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}};var Ai=class extends yt{constructor(e,t,s,i=1){super(e,t,s),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=i}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}toJSON(){let e=super.toJSON();return e.meshPerAttribute=this.meshPerAttribute,e.isInstancedBufferAttribute=!0,e}};var Jd=new R,q1=new R,H1=new Nt,xs=class{constructor(e=new R(1,0,0),t=0){this.isPlane=!0,this.normal=e,this.constant=t}set(e,t){return this.normal.copy(e),this.constant=t,this}setComponents(e,t,s,i){return this.normal.set(e,t,s),this.constant=i,this}setFromNormalAndCoplanarPoint(e,t){return this.normal.copy(e),this.constant=-t.dot(this.normal),this}setFromCoplanarPoints(e,t,s){let i=Jd.subVectors(s,t).cross(q1.subVectors(e,t)).normalize();return this.setFromNormalAndCoplanarPoint(i,e),this}copy(e){return this.normal.copy(e.normal),this.constant=e.constant,this}normalize(){let e=1/this.normal.length();return this.normal.multiplyScalar(e),this.constant*=e,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(e){return this.normal.dot(e)+this.constant}distanceToSphere(e){return this.distanceToPoint(e.center)-e.radius}projectPoint(e,t){return t.copy(e).addScaledVector(this.normal,-this.distanceToPoint(e))}intersectLine(e,t){let s=e.delta(Jd),i=this.normal.dot(s);if(i===0)return this.distanceToPoint(e.start)===0?t.copy(e.start):null;let n=-(e.start.dot(this.normal)+this.constant)/i;return n<0||n>1?null:t.copy(e.start).addScaledVector(s,n)}intersectsLine(e){let t=this.distanceToPoint(e.start),s=this.distanceToPoint(e.end);return t<0&&s>0||s<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){let s=t||H1.getNormalMatrix(e),i=this.coplanarPoint(Jd).applyMatrix4(e),n=this.normal.applyMatrix3(s).normalize();return this.constant=-i.dot(n),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}},Bn=new Vn,X1=new re(.5,.5),nl=new R,Ur=class{constructor(e=new xs,t=new xs,s=new xs,i=new xs,n=new xs,r=new xs){this.planes=[e,t,s,i,n,r]}set(e,t,s,i,n,r){let a=this.planes;return a[0].copy(e),a[1].copy(t),a[2].copy(s),a[3].copy(i),a[4].copy(n),a[5].copy(r),this}copy(e){let t=this.planes;for(let s=0;s<6;s++)t[s].copy(e.planes[s]);return this}setFromProjectionMatrix(e,t=Dt,s=!1){let i=this.planes,n=e.elements,r=n[0],a=n[1],c=n[2],l=n[3],u=n[4],h=n[5],d=n[6],p=n[7],m=n[8],g=n[9],y=n[10],x=n[11],_=n[12],w=n[13],S=n[14],E=n[15];if(i[0].setComponents(l-r,p-u,x-m,E-_).normalize(),i[1].setComponents(l+r,p+u,x+m,E+_).normalize(),i[2].setComponents(l+a,p+h,x+g,E+w).normalize(),i[3].setComponents(l-a,p-h,x-g,E-w).normalize(),s)i[4].setComponents(c,d,y,S).normalize(),i[5].setComponents(l-c,p-d,x-y,E-S).normalize();else if(i[4].setComponents(l-c,p-d,x-y,E-S).normalize(),t===Dt)i[5].setComponents(l+c,p+d,x+y,E+S).normalize();else if(t===Yt)i[5].setComponents(c,d,y,S).normalize();else throw new Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+t);return this}intersectsObject(e){if(e.boundingSphere!==void 0)e.boundingSphere===null&&e.computeBoundingSphere(),Bn.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let t=e.geometry;t.boundingSphere===null&&t.computeBoundingSphere(),Bn.copy(t.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(Bn)}intersectsSprite(e){Bn.center.set(0,0,0);let t=X1.distanceTo(e.center);return Bn.radius=.7071067811865476+t,Bn.applyMatrix4(e.matrixWorld),this.intersectsSphere(Bn)}intersectsSphere(e){let t=this.planes,s=e.center,i=-e.radius;for(let n=0;n<6;n++)if(t[n].distanceToPoint(s)0?e.max.x:e.min.x,nl.y=i.normal.y>0?e.max.y:e.min.y,nl.z=i.normal.z>0?e.max.z:e.min.z,i.distanceToPoint(nl)<0)return!1}return!0}containsPoint(e){let t=this.planes;for(let s=0;s<6;s++)if(t[s].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}},ks=new de,zs=new Ur,Tl=class o{constructor(){this.coordinateSystem=Dt}intersectsObject(e,t){if(!t.isArrayCamera||t.cameras.length===0)return!1;for(let s=0;s0?1:-1,u.push(ae.x,ae.y,ae.z),h.push(Gt/N),h.push(1-fe/C),Pe+=1}}for(let fe=0;fe0&&w(!0),t>0&&w(!1)),this.setIndex(u),this.setAttribute("position",new nt(h,3)),this.setAttribute("normal",new nt(d,3)),this.setAttribute("uv",new nt(p,2));function _(){let S=new R,E=new R,B=0,N=(t-e)/s;for(let C=0;C<=n;C++){let I=[],k=C/n,W=k*(t-e)+e;for(let X=0;X<=i;X++){let Y=X/i,ee=Y*c+a,Q=Math.sin(ee),ie=Math.cos(ee);E.x=W*Q,E.y=-k*s+y,E.z=W*ie,h.push(E.x,E.y,E.z),S.set(Q,N,ie).normalize(),d.push(S.x,S.y,S.z),p.push(Y,1-k),I.push(m++)}g.push(I)}for(let C=0;C0||I!==0)&&(u.push(k,W,Y),B+=3),(t>0||I!==n-1)&&(u.push(W,X,Y),B+=3)}l.addGroup(x,B,0),x+=B}function w(S){let E=m,B=new re,N=new R,C=0,I=S===!0?e:t,k=S===!0?1:-1;for(let X=1;X<=i;X++)h.push(0,y*k,0),d.push(0,k,0),p.push(.5,.5),m++;let W=m;for(let X=0;X<=i;X++){let ee=X/i*c+a,Q=Math.cos(ee),ie=Math.sin(ee);N.x=I*ie,N.y=y*k,N.z=I*Q,h.push(N.x,N.y,N.z),d.push(0,k,0),B.x=Q*.5+.5,B.y=ie*.5*k+.5,p.push(B.x,B.y),m++}for(let X=0;X0)&&p.push(w,S,B),(x!==s-1||c0!=e>0&&this.version++,this._anisotropy=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get dispersion(){return this._dispersion}set dispersion(e){this._dispersion>0!=e>0&&this.version++,this._dispersion=e}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:"",PHYSICAL:""},this.anisotropy=e.anisotropy,this.anisotropyRotation=e.anisotropyRotation,this.anisotropyMap=e.anisotropyMap,this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.dispersion=e.dispersion,this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}},Rl=class extends _t{constructor(e){super(),this.isMeshPhongMaterial=!0,this.type="MeshPhongMaterial",this.color=new ge(16777215),this.specular=new ge(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new ge(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Xs,this.normalScale=new re(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new jt,this.combine=aa,this.reflectivity=1,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.specular.copy(e.specular),this.shininess=e.shininess,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.envMapIntensity=e.envMapIntensity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},Cl=class extends _t{constructor(e){super(),this.isMeshToonMaterial=!0,this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new ge(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new ge(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Xs,this.normalScale=new re(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.gradientMap=e.gradientMap,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},El=class extends _t{constructor(e){super(),this.isMeshNormalMaterial=!0,this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Xs,this.normalScale=new re(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(e)}copy(e){return super.copy(e),this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.flatShading=e.flatShading,this}},Bl=class extends _t{constructor(e){super(),this.isMeshLambertMaterial=!0,this.type="MeshLambertMaterial",this.color=new ge(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new ge(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Xs,this.normalScale=new re(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new jt,this.combine=aa,this.reflectivity=1,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.envMapIntensity=e.envMapIntensity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}};var Fl=class extends _t{constructor(e){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new ge(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Xs,this.normalScale=new re(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={MATCAP:""},this.color.copy(e.color),this.matcap=e.matcap,this.map=e.map,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.flatShading=e.flatShading,this.fog=e.fog,this}},Il=class extends Ko{constructor(e){super(),this.isLineDashedMaterial=!0,this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(e)}copy(e){return super.copy(e),this.scale=e.scale,this.dashSize=e.dashSize,this.gapSize=e.gapSize,this}};function rl(o,e){return!o||o.constructor===e?o:typeof e.BYTES_PER_ELEMENT=="number"?new e(o):Array.prototype.slice.call(o)}var tn=class{constructor(e,t,s,i){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=i!==void 0?i:new t.constructor(s),this.sampleValues=t,this.valueSize=s,this.settings=null,this.DefaultSettings_={}}evaluate(e){let t=this.parameterPositions,s=this._cachedIndex,i=t[s],n=t[s-1];s:{e:{let r;t:{i:if(!(e=n)){let a=t[1];e=n)break e}r=s,s=0;break t}break s}for(;s>>1;et;)--r;if(++r,n!==0||r!==i){n>=r&&(r=Math.max(r,1),n=r-1);let a=this.getValueSize();this.times=s.slice(n,r),this.values=this.values.slice(n*a,r*a)}return this}validate(){let e=!0,t=this.getValueSize();t-Math.floor(t)!==0&&(O("KeyframeTrack: Invalid value size in track.",this),e=!1);let s=this.times,i=this.values,n=s.length;n===0&&(O("KeyframeTrack: Track is empty.",this),e=!1);let r=null;for(let a=0;a!==n;a++){let c=s[a];if(typeof c=="number"&&isNaN(c)){O("KeyframeTrack: Time is not a valid number.",this,a,c),e=!1;break}if(r!==null&&r>c){O("KeyframeTrack: Out of order keys.",this,a,c,r),e=!1;break}r=c}if(i!==void 0&&Kr(i))for(let a=0,c=i.length;a!==c;++a){let l=i[a];if(isNaN(l)){O("KeyframeTrack: Value is not a valid number.",this,a,l),e=!1;break}}return e}optimize(){let e=this.times.slice(),t=this.values.slice(),s=this.getValueSize(),i=this.getInterpolation()===cl,n=e.length-1,r=1;for(let a=1;a0){e[r]=e[n];for(let a=n*s,c=r*s,l=0;l!==s;++l)t[c+l]=t[a+l];++r}return r!==e.length?(this.times=e.slice(0,r),this.values=t.slice(0,r*s)):(this.times=e,this.values=t),this}clone(){let e=this.times.slice(),t=this.values.slice(),s=this.constructor,i=new s(this.name,e,t);return i.createInterpolant=this.createInterpolant,i}};Jt.prototype.ValueTypeName="";Jt.prototype.TimeBufferType=Float32Array;Jt.prototype.ValueBufferType=Float32Array;Jt.prototype.DefaultInterpolation=ul;var sn=class extends Jt{constructor(e,t,s){super(e,t,s)}};sn.prototype.ValueTypeName="bool";sn.prototype.ValueBufferType=Array;sn.prototype.DefaultInterpolation=qo;sn.prototype.InterpolantFactoryMethodLinear=void 0;sn.prototype.InterpolantFactoryMethodSmooth=void 0;var Ol=class extends Jt{constructor(e,t,s,i){super(e,t,s,i)}};Ol.prototype.ValueTypeName="color";var Vl=class extends Jt{constructor(e,t,s,i){super(e,t,s,i)}};Vl.prototype.ValueTypeName="number";var kl=class extends tn{constructor(e,t,s,i){super(e,t,s,i)}interpolate_(e,t,s,i){let n=this.resultBuffer,r=this.sampleValues,a=this.valueSize,c=(s-t)/(i-t),l=e*a;for(let u=l+a;l!==u;l+=4)Ss.slerpFlat(n,0,r,l-a,r,l,c);return n}},sa=class extends Jt{constructor(e,t,s,i){super(e,t,s,i)}InterpolantFactoryMethodLinear(e){return new kl(this.times,this.values,this.getValueSize(),e)}};sa.prototype.ValueTypeName="quaternion";sa.prototype.InterpolantFactoryMethodSmooth=void 0;var nn=class extends Jt{constructor(e,t,s){super(e,t,s)}};nn.prototype.ValueTypeName="string";nn.prototype.ValueBufferType=Array;nn.prototype.DefaultInterpolation=qo;nn.prototype.InterpolantFactoryMethodLinear=void 0;nn.prototype.InterpolantFactoryMethodSmooth=void 0;var zl=class extends Jt{constructor(e,t,s,i){super(e,t,s,i)}};zl.prototype.ValueTypeName="vector";var ll={enabled:!1,files:{},add:function(o,e){this.enabled!==!1&&(V0(o)||(this.files[o]=e))},get:function(o){if(this.enabled!==!1&&!V0(o))return this.files[o]},remove:function(o){delete this.files[o]},clear:function(){this.files={}}};function V0(o){try{let e=o.slice(o.indexOf(":")+1);return new URL(e).protocol==="blob:"}catch{return!1}}var Gl=class{constructor(e,t,s){let i=this,n=!1,r=0,a=0,c,l=[];this.onStart=void 0,this.onLoad=e,this.onProgress=t,this.onError=s,this._abortController=null,this.itemStart=function(u){a++,n===!1&&i.onStart!==void 0&&i.onStart(u,r,a),n=!0},this.itemEnd=function(u){r++,i.onProgress!==void 0&&i.onProgress(u,r,a),r===a&&(n=!1,i.onLoad!==void 0&&i.onLoad())},this.itemError=function(u){i.onError!==void 0&&i.onError(u)},this.resolveURL=function(u){return c?c(u):u},this.setURLModifier=function(u){return c=u,this},this.addHandler=function(u,h){return l.push(u,h),this},this.removeHandler=function(u){let h=l.indexOf(u);return h!==-1&&l.splice(h,2),this},this.getHandler=function(u){for(let h=0,d=l.length;h0){let{width:r,height:a}=e.context;t.bufferWidth=r,t.bufferHeight=a}t.lights=this.getLightsData(e.lightsNode.getLights()),this.renderObjects.set(e,t)}return t}getAttributesData(e){let t={};for(let s in e){let i=e[s];t[s]={id:i.id,version:i.version}}return t}containsNode(e){let t=e.material;for(let s in t)if(t[s]&&t[s].isNode)return!0;return!!(e.context.modelViewMatrix||e.context.modelNormalViewMatrix||e.context.getAO||e.context.getShadow)}getMaterialData(e){let t={};for(let s of this.refreshUniforms){let i=e[s];i!=null&&(typeof i=="object"&&i.clone!==void 0?i.isTexture===!0?t[s]={id:i.id,version:i.version}:t[s]=i.clone():t[s]=i)}return t}equals(e,t){let{object:s,material:i,geometry:n}=e,r=this.getRenderObjectData(e);if(r.worldMatrix.equals(s.matrixWorld)!==!0)return r.worldMatrix.copy(s.matrixWorld),!1;let a=r.material;for(let _ in a){let w=a[_],S=i[_];if(w.equals!==void 0){if(w.equals(S)===!1)return w.copy(S),!1}else if(S.isTexture===!0){if(w.id!==S.id||w.version!==S.version)return w.id=S.id,w.version=S.version,!1}else if(w!==S)return a[_]=S,!1}if(a.transmission>0){let{width:_,height:w}=e.context;if(r.bufferWidth!==_||r.bufferHeight!==w)return r.bufferWidth=_,r.bufferHeight=w,!1}let c=r.geometry,l=n.attributes,u=c.attributes,h=Object.keys(u),d=Object.keys(l);if(c.id!==n.id)return c.id=n.id,!1;if(h.length!==d.length)return r.geometry.attributes=this.getAttributesData(l),!1;for(let _ of h){let w=u[_],S=l[_];if(S===void 0)return delete u[_],!1;if(w.id!==S.id||w.version!==S.version)return w.id=S.id,w.version=S.version,!1}let p=n.index,m=c.indexId,g=c.indexVersion,y=p?p.id:null,x=p?p.version:null;if(m!==y||g!==x)return c.indexId=y,c.indexVersion=x,!1;if(c.drawRange.start!==n.drawRange.start||c.drawRange.count!==n.drawRange.count)return c.drawRange.start=n.drawRange.start,c.drawRange.count=n.drawRange.count,!1;if(r.morphTargetInfluences){let _=!1;for(let w=0;w{let s=t.match(e);if(!s)return null;let i=s[1]||s[2]||"",n=s[3].split("?")[0],r=parseInt(s[4],10),a=parseInt(s[5],10),c=n.split("/").pop();return{fn:i,file:c,line:r,column:a}}).filter(t=>t&&!nM.some(s=>s.test(t.file)))}var ke=class{constructor(e=null){this.isStackTrace=!0,this.stack=rM(e||new Error().stack)}getLocation(){if(this.stack.length===0)return"[Unknown location]";let e=this.stack[0],t=e.fn;return`${t?`"${t}()" at `:""}"${e.file}:${e.line}"`}getError(e){if(this.stack.length===0)return e;let t=this.stack.map(s=>{let i=`${s.file}:${s.line}:${s.column}`;return s.fn?` at ${s.fn} (${i})`:` at ${i}`}).join(` +`);return`${e} +${t}`}};function jy(o,e=0){let t=3735928559^e,s=1103547991^e;if(o instanceof Array)for(let i=0,n;i>>16,2246822507),t^=Math.imul(s^s>>>13,3266489909),s=Math.imul(s^s>>>16,2246822507),s^=Math.imul(t^t>>>13,3266489909),4294967296*(2097151&s)+(t>>>0)}var Ro=o=>jy(o),Ec=o=>jy(o),sc=(...o)=>jy(o),oM=new Map([[1,"float"],[2,"vec2"],[3,"vec3"],[4,"vec4"],[9,"mat3"],[16,"mat4"]]),Eb=new WeakMap;function Y_(o){return oM.get(o)}function Yu(o){if(/[iu]?vec\d/.test(o))return o.startsWith("ivec")?Int32Array:o.startsWith("uvec")?Uint32Array:Float32Array;if(/mat\d/.test(o)||/float/.test(o))return Float32Array;if(/uint/.test(o))return Uint32Array;if(/int/.test(o))return Int32Array;throw new Error(`THREE.NodeUtils: Unsupported type: ${o}`)}function j_(o){if(/float|int|uint/.test(o))return 1;if(/vec2/.test(o))return 2;if(/vec3/.test(o))return 3;if(/vec4/.test(o)||/mat2/.test(o))return 4;if(/mat3/.test(o))return 9;if(/mat4/.test(o))return 16;O(`TSL: Unsupported type: ${o}`,new ke)}function aM(o){if(/float|int|uint/.test(o))return 1;if(/vec2/.test(o))return 2;if(/vec3/.test(o))return 3;if(/vec4/.test(o)||/mat2/.test(o))return 4;if(/mat3/.test(o))return 12;if(/mat4/.test(o))return 16;O(`TSL: Unsupported type: ${o}`,new ke)}function cM(o){if(/float|int|uint/.test(o))return 4;if(/vec2/.test(o))return 8;if(/vec3/.test(o)||/vec4/.test(o))return 16;if(/mat2/.test(o))return 8;if(/mat3/.test(o)||/mat4/.test(o))return 16;O(`TSL: Unsupported type: ${o}`,new ke)}function fn(o){if(o==null)return null;let e=typeof o;return o.isNode===!0?"node":e==="number"?"float":e==="boolean"?"bool":e==="string"?"string":e==="function"?"shader":o.isVector2===!0?"vec2":o.isVector3===!0?"vec3":o.isVector4===!0?"vec4":o.isMatrix2===!0?"mat2":o.isMatrix3===!0?"mat3":o.isMatrix4===!0?"mat4":o.isColor===!0?"color":o instanceof ArrayBuffer?"ArrayBuffer":null}function Zy(o,...e){let t=o?o.slice(-4):void 0;return e.length===1&&(t==="vec2"?e=[e[0],e[0]]:t==="vec3"?e=[e[0],e[0],e[0]]:t==="vec4"&&(e=[e[0],e[0],e[0],e[0]])),o==="color"?new ge(...e):t==="vec2"?new re(...e):t==="vec3"?new R(...e):t==="vec4"?new Te(...e):t==="mat2"?new oa(...e):t==="mat3"?new Nt(...e):t==="mat4"?new de(...e):o==="bool"?e[0]||!1:o==="float"||o==="int"||o==="uint"?e[0]||0:o==="string"?e[0]||"":o==="ArrayBuffer"?uM(e[0]):null}function Z_(o){let e=Eb.get(o);return e===void 0&&(e={},Eb.set(o,e)),e}function lM(o){let e="",t=new Uint8Array(o);for(let s=0;se.charCodeAt(0)).buffer}var ec={VERTEX:"vertex",FRAGMENT:"fragment"},te={NONE:"none",FRAME:"frame",RENDER:"render",OBJECT:"object"},hM={BOOLEAN:"bool",INTEGER:"int",FLOAT:"float",VECTOR2:"vec2",VECTOR3:"vec3",VECTOR4:"vec4",MATRIX2:"mat2",MATRIX3:"mat3",MATRIX4:"mat4"},dt={READ_ONLY:"readOnly",WRITE_ONLY:"writeOnly",READ_WRITE:"readWrite"},J_=["fragment","vertex"],mf=["setup","analyze","generate"],gf=[...J_,"compute"],fr=["x","y","z","w"],dM={analyze:"setup",generate:"analyze"},pM=0,H=class o extends Ts{static get type(){return"Node"}constructor(e=null){super(),this.nodeType=e,this.updateType=te.NONE,this.updateBeforeType=te.NONE,this.updateAfterType=te.NONE,this.uuid=Va.generateUUID(),this.version=0,this.name="",this.global=!1,this.parents=!1,this.isNode=!0,this._beforeNodes=null,this._cacheKey=null,this._cacheKeyVersion=0,Object.defineProperty(this,"id",{value:pM++}),this.stackTrace=null,o.captureStackTrace===!0&&(this.stackTrace=new ke)}set needsUpdate(e){e===!0&&this.version++}get type(){return this.constructor.type}onUpdate(e,t){return this.updateType=t,this.update=e.bind(this),this}onFrameUpdate(e){return this.onUpdate(e,te.FRAME)}onRenderUpdate(e){return this.onUpdate(e,te.RENDER)}onObjectUpdate(e){return this.onUpdate(e,te.OBJECT)}onReference(e){return this.updateReference=e.bind(this),this}updateReference(){return this}isGlobal(){return this.global}*getChildren(){for(let{childNode:e}of this._getChildren())yield e}dispose(){this.dispatchEvent({type:"dispose"})}traverse(e){e(this);for(let t of this.getChildren())t.traverse(e)}_getChildren(e=new Set){let t=[];e.add(this);for(let s of Object.getOwnPropertyNames(this)){let i=this[s];if(!(s.startsWith("_")===!0||e.has(i))){if(Array.isArray(i)===!0)for(let n=0;n0&&(e.inputNodes=s)}deserialize(e){if(e.inputNodes!==void 0){let t=e.meta.nodes;for(let s in e.inputNodes)if(Array.isArray(e.inputNodes[s])){let i=[];for(let n of e.inputNodes[s])i.push(t[n]);this[s]=i}else if(typeof e.inputNodes[s]=="object"){let i={};for(let n in e.inputNodes[s]){let r=e.inputNodes[s][n];i[n]=t[r]}this[s]=i}else{let i=e.inputNodes[s];this[s]=t[i]}}}toJSON(e){let{uuid:t,type:s}=this,i=e===void 0||typeof e=="string";i&&(e={textures:{},images:{},nodes:{}});let n=e.nodes[t];n===void 0&&(n={uuid:t,type:s,meta:e,metadata:{version:4.7,type:"Node",generator:"Node.toJSON"}},i!==!0&&(e.nodes[n.uuid]=n),this.serialize(n),delete n.meta);function r(a){let c=[];for(let l in a){let u=a[l];delete u.metadata,c.push(u)}return c}if(i){let a=r(e.textures),c=r(e.images),l=r(e.nodes);a.length>0&&(n.textures=a),c.length>0&&(n.images=c),l.length>0&&(n.nodes=l)}return n}};H.captureStackTrace=!1;var Vi=class extends H{static get type(){return"ArrayElementNode"}constructor(e,t){super(),this.node=e,this.indexNode=t,this.isArrayElementNode=!0}getNodeType(e){return this.node.getElementType(e)}getMemberType(e,t){return this.node.getMemberType(e,t)}generate(e){let t=this.indexNode.getNodeType(e),s=this.node.build(e),i=this.indexNode.build(e,!e.isVector(t)&&e.isInteger(t)?t:"uint");return`${s}[ ${i} ]`}},ju=class extends H{static get type(){return"ConvertNode"}constructor(e,t){super(),this.node=e,this.convertTo=t}getNodeType(e){let t=this.node.getNodeType(e),s=null;for(let i of this.convertTo.split("|"))(s===null||e.getTypeLength(t)===e.getTypeLength(i))&&(s=i);return s}serialize(e){super.serialize(e),e.convertTo=this.convertTo}deserialize(e){super.deserialize(e),this.convertTo=e.convertTo}generate(e,t){let s=this.node,i=this.getNodeType(e),n=s.build(e,i);return e.format(n,i,t)}},Be=class extends H{static get type(){return"TempNode"}constructor(e=null){super(e),this.isTempNode=!0}hasDependencies(e){return e.getDataFromNode(this).usageCount>1}build(e,t){if(e.getBuildStage()==="generate"){let i=e.getVectorType(this.getNodeType(e,t)),n=e.getDataFromNode(this);if(n.propertyName!==void 0)return e.format(n.propertyName,i,t);if(i!=="void"&&t!=="void"&&this.hasDependencies(e)){let r=super.build(e,i),a=e.getVarFromNode(this,null,i),c=e.getPropertyName(a);return e.addLineFlowCode(`${c} = ${r}`,this),n.snippet=r,n.propertyName=c,e.format(n.propertyName,i,t)}}return super.build(e,t)}},yf=class extends Be{static get type(){return"JoinNode"}constructor(e=[],t=null){super(t),this.nodes=e}getNodeType(e){return this.nodeType!==null?e.getVectorType(this.nodeType):e.getTypeFromLength(this.nodes.reduce((t,s)=>t+e.getTypeLength(s.getNodeType(e)),0))}generate(e,t){let s=this.getNodeType(e),i=e.getTypeLength(s),n=this.nodes,r=e.getComponentType(s),a=[],c=0;for(let u of n){if(c>=i){O(`TSL: Length of parameters exceeds maximum length of function '${s}()' type.`,this.stackTrace);break}let h=u.getNodeType(e),d=e.getTypeLength(h),p;if(c+d>i&&(O(`TSL: Length of '${s}()' data exceeds maximum length of output type.`,this.stackTrace),d=i-c,h=e.getTypeFromLength(d)),c+=d,p=u.build(e,h),e.getComponentType(h)!==r){let g=e.getTypeFromLength(d,r);p=e.format(p,h,g)}a.push(p)}let l=`${e.getType(s)}( ${a.join(", ")} )`;return e.format(l,s,t)}},fM=fr.join(""),Zu=class extends H{static get type(){return"SplitNode"}constructor(e,t="x"){super(),this.node=e,this.components=t,this.isSplitNode=!0}getVectorLength(){let e=this.components.length;for(let t of this.components)e=Math.max(fr.indexOf(t)+1,e);return e}getComponentType(e){return e.getComponentType(this.node.getNodeType(e))}getNodeType(e){return e.getTypeFromLength(this.components.length,this.getComponentType(e))}getScope(){return this.node.getScope()}generate(e,t){let s=this.node,i=e.getTypeLength(s.getNodeType(e)),n=null;if(i>1){let r=null;this.getVectorLength()>=i&&(r=e.getTypeFromLength(this.getVectorLength(),this.getComponentType(e)));let c=s.build(e,r);this.components.length===i&&this.components===fM.slice(0,this.components.length)?n=e.format(c,r,t):n=e.format(`${c}.${this.components}`,this.getNodeType(e),t)}else n=s.build(e,t);return n}serialize(e){super.serialize(e),e.components=this.components}deserialize(e){super.deserialize(e),this.components=e.components}},xf=class extends Be{static get type(){return"SetNode"}constructor(e,t,s){super(),this.sourceNode=e,this.components=t,this.targetNode=s}getNodeType(e){return this.sourceNode.getNodeType(e)}generate(e){let{sourceNode:t,components:s,targetNode:i}=this,n=this.getNodeType(e),r=e.getComponentType(i.getNodeType(e)),a=e.getTypeFromLength(s.length,r),c=i.build(e,a),l=t.build(e,n),u=e.getTypeLength(n),h=[];for(let d=0;do.replace(/r|s/g,"x").replace(/g|t/g,"y").replace(/b|p/g,"z").replace(/a|q/g,"w"),Fb=o=>mM(o).split("").sort().join("");H.prototype.assign=function(...o){if(this.isStackNode!==!0)return bn!==null?bn.assign(this,...o):O("TSL: No stack defined for assign operation. Make sure the assign is inside a Fn().",new ke),this;{let e=Tf.get("assign");return this.addToStack(e(...o))}};H.prototype.toVarIntent=function(){return this};H.prototype.get=function(o){return new _f(this,o)};var ic={};function fu(o,e,t){ic[o]=ic[e]=ic[t]={get(){this._cache=this._cache||{};let r=this._cache[o];return r===void 0&&(r=new Zu(this,o),this._cache[o]=r),r},set(r){this[o].assign(q(r))}};let s=o.toUpperCase(),i=e.toUpperCase(),n=t.toUpperCase();H.prototype["set"+s]=H.prototype["set"+i]=H.prototype["set"+n]=function(r){let a=Fb(o);return new xf(this,a,q(r))},H.prototype["flip"+s]=H.prototype["flip"+i]=H.prototype["flip"+n]=function(){let r=Fb(o);return new bf(this,r)}}var js=["x","y","z","w"],Zs=["r","g","b","a"],Js=["s","t","p","q"];for(let o=0;o<4;o++){let e=js[o],t=Zs[o],s=Js[o];fu(e,t,s);for(let i=0;i<4;i++){e=js[o]+js[i],t=Zs[o]+Zs[i],s=Js[o]+Js[i],fu(e,t,s);for(let n=0;n<4;n++){e=js[o]+js[i]+js[n],t=Zs[o]+Zs[i]+Zs[n],s=Js[o]+Js[i]+Js[n],fu(e,t,s);for(let r=0;r<4;r++)e=js[o]+js[i]+js[n]+js[r],t=Zs[o]+Zs[i]+Zs[n]+Zs[r],s=Js[o]+Js[i]+Js[n]+Js[r],fu(e,t,s)}}}for(let o=0;o<32;o++)ic[o]={get(){this._cache=this._cache||{};let e=this._cache[o];return e===void 0&&(e=new Vi(this,new Ot(o,"uint")),this._cache[o]=e),e},set(e){this[o].assign(q(e))}};Object.defineProperties(H.prototype,ic);var Ib=new WeakMap,gM=function(o,e=null){let t=fn(o);return t==="node"?o:e===null&&(t==="float"||t==="boolean")||t&&t!=="shader"&&t!=="string"?q(wf(o,e)):t==="shader"?o.isFn?o:A(o):o},yM=function(o,e=null){for(let t in o)o[t]=q(o[t],e);return o},xM=function(o,e=null){let t=o.length;for(let s=0;sc?(O(`TSL: "${h}" parameter length exceeds limit.`,new ke),u.slice(0,c)):u}return e===null?n=(...u)=>i(new o(...or(l(u)))):t!==null?(t=q(t),n=(...u)=>i(new o(e,...or(l(u)),t))):n=(...u)=>i(new o(e,...or(l(u)))),n.setParameterLength=(...u)=>(u.length===1?a=c=u[0]:u.length===2&&([a,c]=u),n),n.setName=u=>(r=u,n),n},bM=function(o,...e){return new o(...or(e))},Sf=class extends H{constructor(e,t){super(),this.shaderNode=e,this.rawInputs=t,this.isShaderCallNodeInternal=!0}getNodeType(e){return this.shaderNode.nodeType||this.getOutputNode(e).getNodeType(e)}getElementType(e){return this.getOutputNode(e).getElementType(e)}getMemberType(e,t){return this.getOutputNode(e).getMemberType(e,t)}call(e){let{shaderNode:t,rawInputs:s}=this,i=e.getNodeProperties(t),n=e.getClosestSubBuild(t.subBuilds)||"",r=n||"default";if(i[r])return i[r];let a=e.subBuildFn,c=e.fnCall;e.subBuildFn=n,e.fnCall=this;let l=null;if(t.layout){let u=Ib.get(e.constructor);u===void 0&&(u=new WeakMap,Ib.set(e.constructor,u));let h=u.get(t);h===void 0&&(h=q(e.buildFunctionNode(t)),u.set(t,h)),e.addInclude(h);let d=s?_M(s):null;l=q(h.call(d))}else{let u=new Proxy(e,{get:(g,y,x)=>{let _;return Symbol.iterator===y?_=function*(){yield void 0}:_=Reflect.get(g,y,x),_}}),h=s?TM(s):null,d=Array.isArray(s)?s.length>0:s!==null,p=t.jsFunc,m=d||p.length>1?p(h,u):p(u);l=q(m)}return e.subBuildFn=a,e.fnCall=c,t.once&&(i[r]=l),l}setupOutput(e){return e.addStack(),e.stack.outputNode=this.call(e),e.removeStack()}getOutputNode(e){let t=e.getNodeProperties(this),s=e.getSubBuildOutput(this);return t[s]=t[s]||this.setupOutput(e),t[s].subBuild=e.getClosestSubBuild(this),t[s]}build(e,t=null){let s=null,i=e.getBuildStage(),n=e.getNodeProperties(this),r=e.getSubBuildOutput(this),a=this.getOutputNode(e),c=e.fnCall;if(e.fnCall=this,i==="setup"){let l=e.getSubBuildProperty("initialized",this);if(n[l]!==!0&&(n[l]=!0,n[r]=this.getOutputNode(e),n[r].build(e),this.shaderNode.subBuilds))for(let u of e.chaining){let h=e.getDataFromNode(u,"any");h.subBuilds=h.subBuilds||new Set;for(let d of this.shaderNode.subBuilds)h.subBuilds.add(d)}s=n[r]}else i==="analyze"?a.build(e,t):i==="generate"&&(s=a.build(e,t)||"");return e.fnCall=c,s}};function _M(o){let e;return id(o),o[0]&&(o[0].isNode||Object.getPrototypeOf(o[0])!==Object.prototype)?e=[...o]:e=o[0],e}function TM(o){let e=0;return id(o),new Proxy(o,{get:(t,s,i)=>{let n;if(s==="length")return n=o.length,n;if(Symbol.iterator===s)n=function*(){for(let r of o)yield q(r)};else{if(o.length>0)if(Object.getPrototypeOf(o[0])===Object.prototype){let r=o[0];r[s]===void 0?n=r[e++]:n=Reflect.get(r,s,i)}else o[0]instanceof H&&(o[s]===void 0?n=o[e++]:n=Reflect.get(o,s,i));else n=Reflect.get(t,s,i);n=q(n)}return n}})}var vf=class extends H{constructor(e,t){super(t),this.jsFunc=e,this.layout=null,this.global=!0,this.once=!1}setLayout(e){return this.layout=e,this}getLayout(){return this.layout}call(e=null){return new Sf(this,e)}setup(){return this.call()}},SM=[!1,!0],vM=[0,1,2,3],wM=[-1,-2],K_=[.5,1.5,1/3,1e-6,1e6,Math.PI,Math.PI*2,1/Math.PI,2/Math.PI,1/(Math.PI*2),Math.PI/2],Jy=new Map;for(let o of SM)Jy.set(o,new Ot(o));var Qy=new Map;for(let o of vM)Qy.set(o,new Ot(o,"uint"));var Ky=new Map([...Qy].map(o=>new Ot(o.value,"int")));for(let o of wM)Ky.set(o,new Ot(o,"int"));var td=new Map([...Ky].map(o=>new Ot(o.value)));for(let o of K_)td.set(o,new Ot(o));for(let o of K_)td.set(-o,new Ot(-o));var sd={bool:Jy,uint:Qy,ints:Ky,float:td},Pb=new Map([...Jy,...td]),wf=(o,e)=>Pb.has(o)?Pb.get(o):o.isNode===!0?o:new Ot(o,e),et=function(o,e=null){return(...t)=>{for(let i of t)if(i===void 0)return O(`TSL: Invalid parameter for the type "${o}".`,new ke),new Ot(0,o);if((t.length===0||!["bool","float","int","uint"].includes(o)&&t.every(i=>{let n=typeof i;return n!=="object"&&n!=="function"}))&&(t=[Zy(o,...t)]),t.length===1&&e!==null&&e.has(t[0]))return tc(e.get(t[0]));if(t.length===1){let i=wf(t[0],o);return i.nodeType===o?tc(i):tc(new ju(i,o))}let s=t.map(i=>wf(i));return tc(new yf(s,o))}},dc=o=>typeof o=="object"&&o!==null?o.value:o,eT=o=>o!=null?o.nodeType||o.convertTo||(typeof o=="string"?o:null):null;function ho(o,e){return new vf(o,e)}var q=(o,e=null)=>gM(o,e),tc=(o,e=null)=>q(o,e).toVarIntent(),id=(o,e=null)=>new yM(o,e),or=(o,e=null)=>new xM(o,e),oe=(o,e=null,t=null,s=null)=>new Q_(o,e,t,s),G=(o,...e)=>new bM(o,...e),V=(o,e=null,t=null,s={})=>new Q_(o,e,t,{...s,intent:!0}),MM=0,Mf=class extends H{constructor(e,t=null){super();let s=null;t!==null&&(typeof t=="object"?s=t.return:(typeof t=="string"?s=t:O("TSL: Invalid layout type.",new ke),t=null)),this.shaderNode=new ho(e,s),t!==null&&this.setLayout(t),this.isFn=!0}setLayout(e){let t=this.shaderNode.nodeType;if(typeof e.inputs!="object"){let s={name:"fn"+MM++,type:t,inputs:[]};for(let i in e)i!=="return"&&s.inputs.push({name:i,type:e[i]});e=s}return this.shaderNode.setLayout(e),this}getNodeType(e){return this.shaderNode.getNodeType(e)||"float"}call(...e){let t=this.shaderNode.call(e);return this.shaderNode.nodeType==="void"&&t.toStack(),t.toVarIntent()}once(e=null){return this.shaderNode.once=!0,this.shaderNode.subBuilds=e,this}generate(e){let t=this.getNodeType(e);return O('TSL: "Fn()" was declared but not invoked. Try calling it like "Fn()( ...params )".',this.stackTrace),e.generateConst(t)}};function A(o,e=null){let t=new Mf(o,e);return new Proxy(()=>{},{apply(s,i,n){return t.call(...n)},get(s,i,n){return Reflect.get(t,i,n)},set(s,i,n,r){return Reflect.set(t,i,n,r)}})}var pc=o=>{bn=o},ex=()=>bn,K=(...o)=>bn.If(...o),AM=(...o)=>bn.Switch(...o);function nd(o){return bn&&bn.addToStack(o),o}P("toStack",nd);var tT=new et("color"),b=new et("float",sd.float),T=new et("int",sd.ints),D=new et("uint",sd.uint),hs=new et("bool",sd.bool),U=new et("vec2"),Qe=new et("ivec2"),tx=new et("uvec2"),sT=new et("bvec2"),v=new et("vec3"),sx=new et("ivec3"),mr=new et("uvec3"),ix=new et("bvec3"),Z=new et("vec4"),nx=new et("ivec4"),rx=new et("uvec4"),iT=new et("bvec4"),rd=new et("mat2"),at=new et("mat3"),gn=new et("mat4"),NM=(o="")=>new Ot(o,"string"),RM=o=>new Ot(o,"ArrayBuffer");P("toColor",tT);P("toFloat",b);P("toInt",T);P("toUint",D);P("toBool",hs);P("toVec2",U);P("toIVec2",Qe);P("toUVec2",tx);P("toBVec2",sT);P("toVec3",v);P("toIVec3",sx);P("toUVec3",mr);P("toBVec3",ix);P("toVec4",Z);P("toIVec4",nx);P("toUVec4",rx);P("toBVec4",iT);P("toMat2",rd);P("toMat3",at);P("toMat4",gn);var nT=oe(Vi).setParameterLength(2),rT=(o,e)=>new ju(q(o),e),CM=(o,e)=>new Zu(q(o),e);P("element",nT);P("convert",rT);var EM=o=>(z("TSL: append() has been renamed to Stack().",new ke),nd(o));P("append",o=>(z("TSL: .append() has been renamed to .toStack().",new ke),nd(o)));var be=class extends H{static get type(){return"PropertyNode"}constructor(e,t=null,s=!1){super(e),this.name=t,this.varying=s,this.isPropertyNode=!0,this.global=!0}customCacheKey(){return Ro(this.type+":"+(this.name||"")+":"+(this.varying?"1":"0"))}getHash(e){return this.name||super.getHash(e)}generate(e){let t;return this.varying===!0?(t=e.getVaryingFromNode(this,this.name),t.needsInterpolation=!0):t=e.getVarFromNode(this,this.name),e.getPropertyName(t)}},Ui=(o,e)=>new be(o,e),fc=(o,e)=>new be(o,e,!0),we=G(be,"vec4","DiffuseColor"),er=G(be,"vec3","DiffuseContribution"),Af=G(be,"vec3","EmissiveColor"),ii=G(be,"float","Roughness"),Li=G(be,"float","Metalness"),Ju=G(be,"float","Clearcoat"),po=G(be,"float","ClearcoatRoughness"),Kt=G(be,"vec3","Sheen"),ln=G(be,"float","SheenRoughness"),od=G(be,"float","Iridescence"),Qu=G(be,"float","IridescenceIOR"),Ku=G(be,"float","IridescenceThickness"),eh=G(be,"float","AlphaT"),cn=G(be,"float","Anisotropy"),nc=G(be,"vec3","AnisotropyT"),ar=G(be,"vec3","AnisotropyB"),_n=G(be,"color","SpecularColor"),sr=G(be,"color","SpecularColorBlended"),ir=G(be,"float","SpecularF90"),th=G(be,"float","Shininess"),fo=G(be,"vec4","Output"),$u=G(be,"float","dashSize"),Nf=G(be,"float","gapSize"),BM=G(be,"float","pointWidth"),rc=G(be,"float","IOR"),sh=G(be,"float","Transmission"),ox=G(be,"float","Thickness"),ax=G(be,"float","AttenuationDistance"),cx=G(be,"color","AttenuationColor"),lx=G(be,"float","Dispersion"),ih=class extends H{static get type(){return"UniformGroupNode"}constructor(e,t=!1,s=1){super("string"),this.name=e,this.shared=t,this.order=s,this.isUniformGroup=!0}serialize(e){super.serialize(e),e.name=this.name,e.version=this.version,e.shared=this.shared}deserialize(e){super.deserialize(e),this.name=e.name,this.version=e.version,this.shared=e.shared}},oT=o=>new ih(o),ad=(o,e=0)=>new ih(o,!0,e),aT=ad("frame"),J=ad("render"),ux=oT("object"),lr=class extends hc{static get type(){return"UniformNode"}constructor(e,t=null){super(e,t),this.isUniformNode=!0,this.name="",this.groupNode=ux}setName(e){return this.name=e,this}label(e){return z('TSL: "label()" has been deprecated. Use "setName()" instead.',new ke),this.setName(e)}setGroup(e){return this.groupNode=e,this}getGroup(){return this.groupNode}getUniformHash(e){return this.getHash(e)}onUpdate(e,t){return e=e.bind(this),super.onUpdate(s=>{let i=e(s,this);i!==void 0&&(this.value=i)},t)}getInputType(e){let t=super.getInputType(e);return t==="bool"&&(t="uint"),t}generate(e,t){let s=this.getNodeType(e),i=this.getUniformHash(e),n=e.getNodeFromHash(i);n===void 0&&(e.setHashNode(this,i),n=this);let r=n.getInputType(e),a=e.getUniformFromNode(n,r,e.shaderStage,this.name||e.context.nodeName),c=e.getPropertyName(a);e.context.nodeName!==void 0&&delete e.context.nodeName;let l=c;if(s==="bool"){let u=e.getDataFromNode(this),h=u.propertyName;if(h===void 0){let d=e.getVarFromNode(this,null,"bool");h=e.getPropertyName(d),u.propertyName=h,l=e.format(c,r,s),e.addLineFlowCode(`${h} = ${l}`,this)}l=h}return e.format(l,s,t)}},j=(o,e)=>{let t=eT(e||o);if(t===o&&(o=Zy(t)),o&&o.isNode===!0){let s=o.value;o.traverse(i=>{i.isConstNode===!0&&(s=i.value)}),o=s}return new lr(o,t)},nh=class extends Be{static get type(){return"ArrayNode"}constructor(e,t,s=null){super(e),this.count=t,this.values=s,this.isArrayNode=!0}getArrayCount(){return this.count}getNodeType(e){return this.nodeType===null?this.values[0].getNodeType(e):this.nodeType}getElementType(e){return this.getNodeType(e)}getMemberType(e,t){return this.nodeType===null?this.values[0].getMemberType(e,t):super.getMemberType(e,t)}generate(e){let t=this.getNodeType(e);return e.generateArray(t,this.count,this.values)}},cT=(...o)=>{let e;if(o.length===1){let t=o[0];e=new nh(null,t.length,t)}else{let t=o[0],s=o[1];e=new nh(t,s)}return q(e)};P("toArray",(o,e)=>cT(Array(e).fill(o)));var Rf=class extends Be{static get type(){return"AssignNode"}constructor(e,t){super(),this.targetNode=e,this.sourceNode=t,this.isAssignNode=!0}hasDependencies(){return!1}getNodeType(e,t){return t!=="void"?this.targetNode.getNodeType(e):"void"}needsSplitAssign(e){let{targetNode:t}=this;if(e.isAvailable("swizzleAssign")===!1&&t.isSplitNode&&t.components.length>1){let s=e.getTypeLength(t.node.getNodeType(e));return fr.join("").slice(0,s)!==t.components}return!1}setup(e){let{targetNode:t,sourceNode:s}=this,i=t.getScope(),n=e.getDataFromNode(i);n.assign=!0;let r=e.getNodeProperties(this);r.sourceNode=s,r.targetNode=t.context({assign:!0})}generate(e,t){let{targetNode:s,sourceNode:i}=e.getNodeProperties(this),n=this.needsSplitAssign(e),r=s.build(e),a=s.getNodeType(e),c=i.build(e,a),l=i.getNodeType(e),u=e.getDataFromNode(this),h;if(u.initialized===!0)t!=="void"&&(h=r);else if(n){let d=e.getVarFromNode(this,null,a),p=e.getPropertyName(d);e.addLineFlowCode(`${p} = ${c}`,this);let m=s.node,y=m.node.context({assign:!0}).build(e);for(let x=0;x{let u=l.type,h=u==="pointer",d;return h?d="&"+c.build(e):d=c.build(e,u),d};if(Array.isArray(n)){if(n.length>i.length)O("TSL: The number of provided parameters exceeds the expected number of inputs in 'Fn()'."),n.length=i.length;else if(n.length(e=e.length>1||e[0]&&e[0].isNode===!0?or(e):id(e[0]),new Cf(q(o),e));P("call",uT);var FM={"==":"equal","!=":"notEqual","<":"lessThan",">":"greaterThan","<=":"lessThanEqual",">=":"greaterThanEqual","%":"mod"},We=class o extends Be{static get type(){return"OperatorNode"}constructor(e,t,s,...i){if(super(),i.length>0){let n=new o(e,t,s);for(let r=0;r>"||s==="<<")return e.getIntegerType(r);if(s==="!"||s==="&&"||s==="||"||s==="^^")return"bool";if(s==="=="||s==="!="||s==="<"||s===">"||s==="<="||s===">="){let c=Math.max(e.getTypeLength(r),e.getTypeLength(a));return c>1?`bvec${c}`:"bool"}else{if(e.isMatrix(r)){if(a==="float")return r;if(e.isVector(a))return e.getVectorFromMatrix(r);if(e.isMatrix(a))return r}else if(e.isMatrix(a)){if(r==="float")return a;if(e.isVector(r))return e.getVectorFromMatrix(a)}return e.getTypeLength(a)>e.getTypeLength(r)?a:r}}generate(e,t){let s=this.op,{aNode:i,bNode:n}=this,r=this.getNodeType(e,t),a=null,c=null;r!=="void"?(a=i.getNodeType(e),c=n?n.getNodeType(e):null,s==="<"||s===">"||s==="<="||s===">="||s==="=="||s==="!="?e.isVector(a)?c=a:e.isVector(c)?a=c:a!==c&&(a=c="float"):s===">>"||s==="<<"?(a=r,c=e.changeComponentType(c,"uint")):s==="%"?(a=r,c=e.isInteger(a)&&e.isInteger(c)?c:a):e.isMatrix(a)?c==="float"?c="float":e.isVector(c)?c=e.getVectorFromMatrix(a):e.isMatrix(c)||(a=c=r):e.isMatrix(c)?a==="float"?a="float":e.isVector(a)?a=e.getVectorFromMatrix(c):a=c=r:a=c=r):a=c=r;let l=i.build(e,a),u=n?n.build(e,c):null,h=e.getFunctionOperator(s);if(t!=="void"){let d=e.renderer.coordinateSystem===Dt;if(s==="=="||s==="!="||s==="<"||s===">"||s==="<="||s===">=")return d?e.isVector(a)?e.format(`${this.getOperatorMethod(e,t)}( ${l}, ${u} )`,r,t):e.format(`( ${l} ${s} ${u} )`,r,t):e.format(`( ${l} ${s} ${u} )`,r,t);if(s==="%")return e.isInteger(c)?e.format(`( ${l} % ${u} )`,r,t):e.format(`${this.getOperatorMethod(e,r)}( ${l}, ${u} )`,r,t);if(s==="!"||s==="~")return e.format(`(${s}${l})`,a,t);if(h)return e.format(`${h}( ${l}, ${u} )`,r,t);if(e.isMatrix(a)&&c==="float")return e.format(`( ${u} ${s} ${l} )`,r,t);if(a==="float"&&e.isMatrix(c))return e.format(`${l} ${s} ${u}`,r,t);{let p=`( ${l} ${s} ${u} )`;return!d&&r==="bool"&&e.isVector(a)&&e.isVector(c)&&(p=`all${p}`),e.format(p,r,t)}}else if(a!=="void")return h?e.format(`${h}( ${l}, ${u} )`,r,t):e.isMatrix(a)&&c==="float"?e.format(`${u} ${s} ${l}`,r,t):e.format(`${l} ${s} ${u}`,r,t)}serialize(e){super.serialize(e),e.op=this.op}deserialize(e){super.deserialize(e),this.op=e.op}},Ye=V(We,"+").setParameterLength(2,1/0).setName("add"),he=V(We,"-").setParameterLength(2,1/0).setName("sub"),se=V(We,"*").setParameterLength(2,1/0).setName("mul"),ss=V(We,"/").setParameterLength(2,1/0).setName("div"),Bc=V(We,"%").setParameterLength(2).setName("mod"),hT=V(We,"==").setParameterLength(2).setName("equal"),dT=V(We,"!=").setParameterLength(2).setName("notEqual"),pT=V(We,"<").setParameterLength(2).setName("lessThan"),hx=V(We,">").setParameterLength(2).setName("greaterThan"),fT=V(We,"<=").setParameterLength(2).setName("lessThanEqual"),mT=V(We,">=").setParameterLength(2).setName("greaterThanEqual"),gT=V(We,"&&").setParameterLength(2,1/0).setName("and"),yT=V(We,"||").setParameterLength(2,1/0).setName("or"),xT=V(We,"!").setParameterLength(1).setName("not"),bT=V(We,"^^").setParameterLength(2).setName("xor"),_T=V(We,"&").setParameterLength(2).setName("bitAnd"),TT=V(We,"~").setParameterLength(1).setName("bitNot"),ST=V(We,"|").setParameterLength(2).setName("bitOr"),vT=V(We,"^").setParameterLength(2).setName("bitXor"),wT=V(We,"<<").setParameterLength(2).setName("shiftLeft"),MT=V(We,">>").setParameterLength(2).setName("shiftRight"),AT=A(([o])=>(o.addAssign(1),o)),NT=A(([o])=>(o.subAssign(1),o)),RT=A(([o])=>{let e=T(o).toConst();return o.addAssign(1),e}),CT=A(([o])=>{let e=T(o).toConst();return o.subAssign(1),e});P("add",Ye);P("sub",he);P("mul",se);P("div",ss);P("mod",Bc);P("equal",hT);P("notEqual",dT);P("lessThan",pT);P("greaterThan",hx);P("lessThanEqual",fT);P("greaterThanEqual",mT);P("and",gT);P("or",yT);P("not",xT);P("xor",bT);P("bitAnd",_T);P("bitNot",TT);P("bitOr",ST);P("bitXor",vT);P("shiftLeft",wT);P("shiftRight",MT);P("incrementBefore",AT);P("decrementBefore",NT);P("increment",RT);P("decrement",CT);var ET=(o,e)=>(z('TSL: "modInt()" is deprecated. Use "mod( int( ... ) )" instead.',new ke),Bc(T(o),T(e)));P("modInt",ET);var F=class o extends Be{static get type(){return"MathNode"}constructor(e,t,s=null,i=null){if(super(),(e===o.MAX||e===o.MIN)&&arguments.length>3){let n=new o(e,t,s);for(let r=2;rr&&n>a?t:r>a?s:a>n?i:t}getNodeType(e){let t=this.method;return t===o.LENGTH||t===o.DISTANCE||t===o.DOT?"float":t===o.CROSS?"vec3":t===o.ALL||t===o.ANY?"bool":t===o.EQUALS?e.changeComponentType(this.aNode.getNodeType(e),"bool"):this.getInputType(e)}setup(e){let{aNode:t,bNode:s,method:i}=this,n=null;if(i===o.ONE_MINUS)n=he(1,t);else if(i===o.RECIPROCAL)n=ss(1,t);else if(i===o.DIFFERENCE)n=Ee(he(t,s));else if(i===o.TRANSFORM_DIRECTION){let r=t,a=s;e.isMatrix(r.getNodeType(e))?a=Z(v(a),0):r=Z(v(r),0);let c=se(r,a).xyz;n=Ut(c)}return n!==null?n:super.setup(e)}generate(e,t){if(e.getNodeProperties(this).outputNode)return super.generate(e,t);let i=this.method,n=this.getNodeType(e),r=this.getInputType(e),a=this.aNode,c=this.bNode,l=this.cNode,u=e.renderer.coordinateSystem;if(i===o.NEGATE)return e.format("( - "+a.build(e,r)+" )",n,t);{let h=[];return i===o.CROSS?h.push(a.build(e,n),c.build(e,n)):u===Dt&&i===o.STEP?h.push(a.build(e,e.getTypeLength(a.getNodeType(e))===1?"float":r),c.build(e,r)):u===Dt&&(i===o.MIN||i===o.MAX)?h.push(a.build(e,r),c.build(e,e.getTypeLength(c.getNodeType(e))===1?"float":r)):i===o.REFRACT?h.push(a.build(e,r),c.build(e,r),l.build(e,"float")):i===o.MIX?h.push(a.build(e,r),c.build(e,r),l.build(e,e.getTypeLength(l.getNodeType(e))===1?"float":r)):(u===Yt&&i===o.ATAN&&c!==null&&(i="atan2"),e.shaderStage!=="fragment"&&(i===o.DFDX||i===o.DFDY)&&(z(`TSL: '${i}' is not supported in the ${e.shaderStage} stage.`,this.stackTrace),i="/*"+i+"*/"),h.push(a.build(e,r)),c!==null&&h.push(c.build(e,r)),l!==null&&h.push(l.build(e,r))),e.format(`${e.getMethod(i,n)}( ${h.join(", ")} )`,n,t)}}serialize(e){super.serialize(e),e.method=this.method}deserialize(e){super.deserialize(e),this.method=e.method}};F.ALL="all";F.ANY="any";F.RADIANS="radians";F.DEGREES="degrees";F.EXP="exp";F.EXP2="exp2";F.LOG="log";F.LOG2="log2";F.SQRT="sqrt";F.INVERSE_SQRT="inversesqrt";F.FLOOR="floor";F.CEIL="ceil";F.NORMALIZE="normalize";F.FRACT="fract";F.SIN="sin";F.COS="cos";F.TAN="tan";F.ASIN="asin";F.ACOS="acos";F.ATAN="atan";F.ABS="abs";F.SIGN="sign";F.LENGTH="length";F.NEGATE="negate";F.ONE_MINUS="oneMinus";F.DFDX="dFdx";F.DFDY="dFdy";F.ROUND="round";F.RECIPROCAL="reciprocal";F.TRUNC="trunc";F.FWIDTH="fwidth";F.TRANSPOSE="transpose";F.DETERMINANT="determinant";F.INVERSE="inverse";F.EQUALS="equals";F.MIN="min";F.MAX="max";F.STEP="step";F.REFLECT="reflect";F.DISTANCE="distance";F.DIFFERENCE="difference";F.DOT="dot";F.CROSS="cross";F.POW="pow";F.TRANSFORM_DIRECTION="transformDirection";F.MIX="mix";F.CLAMP="clamp";F.REFRACT="refract";F.SMOOTHSTEP="smoothstep";F.FACEFORWARD="faceforward";var dx=b(1e-6),IM=b(1e6),rh=b(Math.PI),PM=b(Math.PI*2),DM=b(Math.PI*2),LM=b(Math.PI*.5),BT=V(F,F.ALL).setParameterLength(1),FT=V(F,F.ANY).setParameterLength(1),IT=V(F,F.RADIANS).setParameterLength(1),PT=V(F,F.DEGREES).setParameterLength(1),px=V(F,F.EXP).setParameterLength(1),bo=V(F,F.EXP2).setParameterLength(1),cd=V(F,F.LOG).setParameterLength(1),ri=V(F,F.LOG2).setParameterLength(1),It=V(F,F.SQRT).setParameterLength(1),fx=V(F,F.INVERSE_SQRT).setParameterLength(1),oi=V(F,F.FLOOR).setParameterLength(1),ld=V(F,F.CEIL).setParameterLength(1),Ut=V(F,F.NORMALIZE).setParameterLength(1),Es=V(F,F.FRACT).setParameterLength(1),Bt=V(F,F.SIN).setParameterLength(1),Rs=V(F,F.COS).setParameterLength(1),DT=V(F,F.TAN).setParameterLength(1),LT=V(F,F.ASIN).setParameterLength(1),mx=V(F,F.ACOS).setParameterLength(1),gx=V(F,F.ATAN).setParameterLength(1,2),Ee=V(F,F.ABS).setParameterLength(1),yx=V(F,F.SIGN).setParameterLength(1),ai=V(F,F.LENGTH).setParameterLength(1),xx=V(F,F.NEGATE).setParameterLength(1),UT=V(F,F.ONE_MINUS).setParameterLength(1),bx=V(F,F.DFDX).setParameterLength(1),_x=V(F,F.DFDY).setParameterLength(1),OT=V(F,F.ROUND).setParameterLength(1),VT=V(F,F.RECIPROCAL).setParameterLength(1),Tx=V(F,F.TRUNC).setParameterLength(1),Sx=V(F,F.FWIDTH).setParameterLength(1),kT=V(F,F.TRANSPOSE).setParameterLength(1),zT=V(F,F.DETERMINANT).setParameterLength(1),GT=V(F,F.INVERSE).setParameterLength(1),Vt=V(F,F.MIN).setParameterLength(2,1/0),ze=V(F,F.MAX).setParameterLength(2,1/0),ur=V(F,F.STEP).setParameterLength(2),WT=V(F,F.REFLECT).setParameterLength(2),$T=V(F,F.DISTANCE).setParameterLength(2),qT=V(F,F.DIFFERENCE).setParameterLength(2),ds=V(F,F.DOT).setParameterLength(2),ki=V(F,F.CROSS).setParameterLength(2),cs=V(F,F.POW).setParameterLength(2),vx=o=>se(o,o),HT=o=>se(o,o,o),wx=o=>se(o,o,o,o),XT=V(F,F.TRANSFORM_DIRECTION).setParameterLength(2),YT=o=>se(yx(o),cs(Ee(o),1/3)),Mx=o=>ds(o,o),le=V(F,F.MIX).setParameterLength(3),Bs=(o,e=0,t=1)=>new F(F.CLAMP,q(o),q(e),q(t)),ud=o=>Bs(o),Ax=V(F,F.REFRACT).setParameterLength(3),Fs=V(F,F.SMOOTHSTEP).setParameterLength(3),Nx=V(F,F.FACEFORWARD).setParameterLength(3),jT=A(([o])=>{let s=43758.5453,i=ds(o.xy,U(12.9898,78.233)),n=Bc(i,rh);return Es(Bt(n).mul(s))}),ZT=(o,e,t)=>le(e,t,o),JT=(o,e,t)=>Fs(e,t,o),QT=(o,e)=>ur(e,o),UM=Nx,OM=fx;P("all",BT);P("any",FT);P("radians",IT);P("degrees",PT);P("exp",px);P("exp2",bo);P("log",cd);P("log2",ri);P("sqrt",It);P("inverseSqrt",fx);P("floor",oi);P("ceil",ld);P("normalize",Ut);P("fract",Es);P("sin",Bt);P("cos",Rs);P("tan",DT);P("asin",LT);P("acos",mx);P("atan",gx);P("abs",Ee);P("sign",yx);P("length",ai);P("lengthSq",Mx);P("negate",xx);P("oneMinus",UT);P("dFdx",bx);P("dFdy",_x);P("round",OT);P("reciprocal",VT);P("trunc",Tx);P("fwidth",Sx);P("min",Vt);P("max",ze);P("step",QT);P("reflect",WT);P("distance",$T);P("dot",ds);P("cross",ki);P("pow",cs);P("pow2",vx);P("pow3",HT);P("pow4",wx);P("transformDirection",XT);P("mix",ZT);P("clamp",Bs);P("refract",Ax);P("smoothstep",JT);P("faceForward",Nx);P("difference",qT);P("saturate",ud);P("cbrt",YT);P("transpose",kT);P("determinant",zT);P("inverse",GT);P("rand",jT);var Ef=class extends H{static get type(){return"ConditionalNode"}constructor(e,t,s=null){super(),this.condNode=e,this.ifNode=t,this.elseNode=s}getNodeType(e){let{ifNode:t,elseNode:s}=e.getNodeProperties(this);if(t===void 0)return e.flowBuildStage(this,"setup"),this.getNodeType(e);let i=t.getNodeType(e);if(s!==null){let n=s.getNodeType(e);if(e.getTypeLength(n)>e.getTypeLength(i))return n}return i}setup(e){let t=this.condNode,s=this.ifNode.isolate(),i=this.elseNode?this.elseNode.isolate():null,n=e.context.nodeBlock;e.getDataFromNode(s).parentNodeBlock=n,i!==null&&(e.getDataFromNode(i).parentNodeBlock=n);let r=e.context.uniformFlow,a=e.getNodeProperties(this);a.condNode=t,a.ifNode=r?s:s.context({nodeBlock:s}),a.elseNode=i?r?i:i.context({nodeBlock:i}):null}generate(e,t){let s=this.getNodeType(e),i=e.getDataFromNode(this);if(i.nodeProperty!==void 0)return i.nodeProperty;let{condNode:n,ifNode:r,elseNode:a}=e.getNodeProperties(this),c=e.currentFunctionNode,l=t!=="void",u=l?Ui(s).build(e):"";i.nodeProperty=u;let h=n.build(e,"bool");if(e.context.uniformFlow&&a!==null){let m=r.build(e,s),g=a.build(e,s),y=e.getTernary(h,m,g);return e.format(y,s,t)}e.addFlowCode(` +${e.tab}if ( ${h} ) { + +`).addFlowTab();let p=r.build(e,s);if(p&&(l?p=u+" = "+p+";":(p="return "+p+";",c===null&&(z("TSL: Return statement used in an inline 'Fn()'. Define a layout struct to allow return values.",this.stackTrace),p="// "+p))),e.removeFlowTab().addFlowCode(e.tab+" "+p+` + +`+e.tab+"}"),a!==null){e.addFlowCode(` else { + +`).addFlowTab();let m=a.build(e,s);m&&(l?m=u+" = "+m+";":(m="return "+m+";",c===null&&(z("TSL: Return statement used in an inline 'Fn()'. Define a layout struct to allow return values.",this.stackTrace),m="// "+m))),e.removeFlowTab().addFlowCode(e.tab+" "+m+` + +`+e.tab+`} + +`)}else e.addFlowCode(` + +`);return e.format(u,s,t)}},vt=oe(Ef).setParameterLength(2,3);P("select",vt);var oh=class extends H{static get type(){return"ContextNode"}constructor(e=null,t={}){super(),this.isContextNode=!0,this.node=e,this.value=t}getScope(){return this.node.getScope()}getNodeType(e){return this.node.getNodeType(e)}getFlowContextData(){let e=[];return this.traverse(t=>{t.isContextNode===!0&&e.push(t.value)}),Object.assign({},...e)}getMemberType(e,t){return this.node.getMemberType(e,t)}analyze(e){let t=e.addContext(this.value);this.node.build(e),e.setContext(t)}setup(e){let t=e.addContext(this.value);this.node.build(e),e.setContext(t)}generate(e,t){let s=e.addContext(this.value),i=this.node.build(e,t);return e.setContext(s),i}},$i=(o=null,e={})=>{let t=o;return(t===null||t.isNode!==!0)&&(e=t||e,t=null),new oh(t,e)},KT=o=>$i(o,{uniformFlow:!0}),Rx=(o,e)=>$i(o,{nodeName:e});function eS(o,e,t=null){return $i(t,{getShadow:({light:s,shadowColorNode:i})=>e===s?i.mul(o):i})}function tS(o,e=null){return $i(e,{getAO:(t,{material:s})=>s.transparent===!0?t:t!==null?t.mul(o):o})}function sS(o,e){return z('TSL: "label()" has been deprecated. Use "setName()" instead.'),Rx(o,e)}P("context",$i);P("label",sS);P("uniformFlow",KT);P("setName",Rx);P("builtinShadowContext",(o,e,t)=>eS(e,t,o));P("builtinAOContext",(o,e)=>tS(e,o));var mo=class extends H{static get type(){return"VarNode"}constructor(e,t=null,s=!1){super(),this.node=e,this.name=t,this.global=!0,this.isVarNode=!0,this.readOnly=s,this.parents=!0,this.intent=!1}setIntent(e){return this.intent=e,this}isIntent(e){return e.getDataFromNode(this).forceDeclaration===!0?!1:this.intent}getIntent(){return this.intent}getMemberType(e,t){return this.node.getMemberType(e,t)}getElementType(e){return this.node.getElementType(e)}getNodeType(e){return this.node.getNodeType(e)}getArrayCount(e){return this.node.getArrayCount(e)}isAssign(e){return e.getDataFromNode(this).assign}build(...e){let t=e[0];if(this._hasStack(t)===!1&&t.buildStage==="setup"&&(t.context.nodeLoop||t.context.nodeBlock)){let s=!1;if(this.node.isShaderCallNodeInternal&&this.node.shaderNode.getLayout()===null&&t.fnCall&&t.fnCall.shaderNode&&t.getDataFromNode(this.node.shaderNode).hasLoop){let r=t.getDataFromNode(this);r.forceDeclaration=!0,s=!0}let i=t.getBaseStack();s?i.addToStackBefore(this):i.addToStack(this)}return this.isIntent(t)&&this.isAssign(t)!==!0?this.node.build(...e):super.build(...e)}generate(e){let{node:t,name:s,readOnly:i}=this,{renderer:n}=e,r=n.backend.isWebGPUBackend===!0,a=!1,c=!1;i&&(a=e.isDeterministic(t),c=r?i:a);let l=this.getNodeType(e);if(l=="void")return this.isIntent(e)!==!0&&O('TSL: ".toVar()" can not be used with void type.',this.stackTrace),t.build(e);let u=e.getVectorType(l),h=t.build(e,u),d=e.getVarFromNode(this,s,u,void 0,c),p=e.getPropertyName(d),m=p;if(c)if(r)m=a?`const ${p}`:`let ${p}`;else{let g=t.getArrayCount(e);m=`const ${e.getVar(d.type,p,g)}`}return e.addLineFlowCode(`${m} = ${h}`,this),p}_hasStack(e){return e.getDataFromNode(this).stack!==void 0}},Cx=oe(mo),iS=(o,e=null)=>Cx(o,e).toStack(),nS=(o,e=null)=>Cx(o,e,!0).toStack(),rS=o=>Cx(o).setIntent(!0).toStack();P("toVar",iS);P("toConst",nS);P("toVarIntent",rS);var Bf=class extends H{static get type(){return"SubBuild"}constructor(e,t,s=null){super(s),this.node=e,this.name=t,this.isSubBuildNode=!0}getNodeType(e){if(this.nodeType!==null)return this.nodeType;e.addSubBuild(this.name);let t=this.node.getNodeType(e);return e.removeSubBuild(),t}build(e,...t){e.addSubBuild(this.name);let s=this.node.build(e,...t);return e.removeSubBuild(),s}},cr=(o,e,t=null)=>new Bf(q(o),e,t),Ff=class extends H{static get type(){return"VaryingNode"}constructor(e,t=null){super(),this.node=cr(e,"VERTEX"),this.name=t,this.isVaryingNode=!0,this.interpolationType=null,this.interpolationSampling=null,this.global=!0}setInterpolation(e,t=null){return this.interpolationType=e,this.interpolationSampling=t,this}getHash(e){return this.name||super.getHash(e)}getNodeType(e){return this.node.getNodeType(e)}setupVarying(e){let t=e.getNodeProperties(this),s=t.varying;if(s===void 0){let i=this.name,n=this.getNodeType(e),r=this.interpolationType,a=this.interpolationSampling;t.varying=s=e.getVaryingFromNode(this,i,n,r,a),t.node=cr(this.node,"VERTEX")}return s.needsInterpolation||(s.needsInterpolation=e.shaderStage==="fragment"),s}setup(e){this.setupVarying(e),e.flowNodeFromShaderStage(ec.VERTEX,this.node)}analyze(e){this.setupVarying(e),e.flowNodeFromShaderStage(ec.VERTEX,this.node)}generate(e){let t=e.getSubBuildProperty("property",e.currentStack),s=e.getNodeProperties(this),i=this.setupVarying(e);if(s[t]===void 0){let n=this.getNodeType(e),r=e.getPropertyName(i,ec.VERTEX);e.flowNodeFromShaderStage(ec.VERTEX,s.node,n,r),s[t]=r}return e.getPropertyName(i)}},Sn=oe(Ff).setParameterLength(1,2),oS=o=>Sn(o);P("toVarying",Sn);P("toVertexStage",oS);var aS=A(([o])=>{let e=o.mul(.9478672986).add(.0521327014).pow(2.4),t=o.mul(.0773993808),s=o.lessThanEqual(.04045);return le(e,t,s)}).setLayout({name:"sRGBTransferEOTF",type:"vec3",inputs:[{name:"color",type:"vec3"}]}),cS=A(([o])=>{let e=o.pow(.41666).mul(1.055).sub(.055),t=o.mul(12.92),s=o.lessThanEqual(.0031308);return le(e,t,s)}).setLayout({name:"sRGBTransferOETF",type:"vec3",inputs:[{name:"color",type:"vec3"}]}),Ex="WorkingColorSpace",VM="OutputColorSpace",mc=class extends Be{static get type(){return"ColorSpaceNode"}constructor(e,t,s){super("vec4"),this.colorNode=e,this.source=t,this.target=s}resolveColorSpace(e,t){return t===Ex?me.workingColorSpace:t===VM?e.context.outputColorSpace||e.renderer.outputColorSpace:t}setup(e){let{colorNode:t}=this,s=this.resolveColorSpace(e,this.source),i=this.resolveColorSpace(e,this.target),n=t;return me.enabled===!1||s===i||!s||!i||(me.getTransfer(s)===ne&&(n=Z(aS(n.rgb),n.a)),me.getPrimaries(s)!==me.getPrimaries(i)&&(n=Z(at(me._getMatrix(new Nt,s,i)).mul(n.rgb),n.a)),me.getTransfer(i)===ne&&(n=Z(cS(n.rgb),n.a))),n}},lS=(o,e)=>new mc(q(o),Ex,e),hd=(o,e)=>new mc(q(o),e,Ex),kM=(o,e,t)=>new mc(q(o),e,t);P("workingToColorSpace",lS);P("colorSpaceToWorking",hd);var zM=class extends Vi{static get type(){return"ReferenceElementNode"}constructor(e,t){super(e,t),this.referenceNode=e,this.isReferenceElementNode=!0}getNodeType(){return this.referenceNode.uniformType}generate(e){let t=super.generate(e),s=this.referenceNode.getNodeType(),i=this.getNodeType();return e.format(t,s,i)}},ah=class extends H{static get type(){return"ReferenceBaseNode"}constructor(e,t,s=null,i=null){super(),this.property=e,this.uniformType=t,this.object=s,this.count=i,this.properties=e.split("."),this.reference=s,this.node=null,this.group=null,this.updateType=te.OBJECT}setGroup(e){return this.group=e,this}element(e){return new zM(this,q(e))}setNodeType(e){let t=j(null,e);this.group!==null&&t.setGroup(this.group),this.node=t}getNodeType(e){return this.node===null&&(this.updateReference(e),this.updateValue()),this.node.getNodeType(e)}getValueFromReference(e=this.reference){let{properties:t}=this,s=e[t[0]];for(let i=1;inew ah(o,e,t),If=class extends ah{static get type(){return"RendererReferenceNode"}constructor(e,t,s=null){super(e,t,s),this.renderer=s,this.setGroup(J)}updateReference(e){return this.reference=this.renderer!==null?this.renderer:e.renderer,this.reference}},uS=(o,e,t=null)=>new If(o,e,t),Pf=class extends Be{static get type(){return"ToneMappingNode"}constructor(e,t=dS,s=null){super("vec3"),this._toneMapping=e,this.exposureNode=t,this.colorNode=s}customCacheKey(){return sc(this._toneMapping)}setToneMapping(e){return this._toneMapping=e,this}getToneMapping(){return this._toneMapping}setup(e){let t=this.colorNode||e.context.color,s=this._toneMapping;if(s===Ri)return t;let i=null,n=e.renderer.library.getToneMappingFunction(s);return n!==null?i=Z(n(t.rgb,this.exposureNode),t.a):(O("ToneMappingNode: Unsupported Tone Mapping configuration.",s),i=t),i}},hS=(o,e,t)=>new Pf(o,q(e),q(t)),dS=uS("toneMappingExposure","float");P("toneMapping",(o,e,t)=>hS(e,t,o));var Db=new WeakMap;function Lb(o,e){let t=Db.get(o);return t===void 0&&(t=new Jo(o,e),Db.set(o,t)),t}var ti=class extends hc{static get type(){return"BufferAttributeNode"}constructor(e,t=null,s=0,i=0){super(e,t),this.isBufferNode=!0,this.bufferType=t,this.bufferStride=s,this.bufferOffset=i,this.usage=Ln,this.instanced=!1,this.attribute=null,this.global=!0,e&&e.isBufferAttribute===!0&&e.itemSize<=4&&(this.attribute=e,this.usage=e.usage,this.instanced=e.isInstancedBufferAttribute)}getHash(e){if(this.bufferStride===0&&this.bufferOffset===0){let t=e.globalCache.getData(this.value);return t===void 0&&(t={node:this},e.globalCache.setData(this.value,t)),t.node.uuid}return this.uuid}getNodeType(e){return this.bufferType===null&&(this.bufferType=e.getTypeFromAttribute(this.attribute)),this.bufferType}setup(e){if(this.attribute!==null)return;let t=this.getNodeType(e),s=e.getTypeLength(t),i=this.value,n=this.bufferStride||s,r=this.bufferOffset,a;i.isInterleavedBuffer===!0?a=i:i.isBufferAttribute===!0?a=Lb(i.array,n):a=Lb(i,n);let c=new xl(a,s,r);a.setUsage(this.usage),this.attribute=c,this.attribute.isInstancedBufferAttribute=this.instanced}generate(e){let t=this.getNodeType(e),s=e.getBufferAttributeFromNode(this,t),i=e.getPropertyName(s),n=null;return e.shaderStage==="vertex"||e.shaderStage==="compute"?(this.name=i,n=i):n=Sn(this).build(e,t),n}getInputType(){return"bufferAttribute"}setUsage(e){return this.usage=e,this.attribute&&this.attribute.isBufferAttribute===!0&&(this.attribute.usage=e),this}setInstanced(e){return this.instanced=e,this}};function dd(o,e=null,t=0,s=0,i=Ln,n=!1){return e==="mat3"||e===null&&o.itemSize===9?at(new ti(o,"vec3",9,0).setUsage(i).setInstanced(n),new ti(o,"vec3",9,3).setUsage(i).setInstanced(n),new ti(o,"vec3",9,6).setUsage(i).setInstanced(n)):e==="mat4"||e===null&&o.itemSize===16?gn(new ti(o,"vec4",16,0).setUsage(i).setInstanced(n),new ti(o,"vec4",16,4).setUsage(i).setInstanced(n),new ti(o,"vec4",16,8).setUsage(i).setInstanced(n),new ti(o,"vec4",16,12).setUsage(i).setInstanced(n)):new ti(o,e,t,s).setUsage(i)}var Bx=(o,e=null,t=0,s=0)=>dd(o,e,t,s),WM=(o,e=null,t=0,s=0)=>dd(o,e,t,s,Qr),ch=(o,e=null,t=0,s=0)=>dd(o,e,t,s,Ln,!0),Df=(o,e=null,t=0,s=0)=>dd(o,e,t,s,Qr,!0);P("toAttribute",o=>Bx(o.value));var Lf=class extends H{static get type(){return"ComputeNode"}constructor(e,t){super("void"),this.isComputeNode=!0,this.computeNode=e,this.workgroupSize=t,this.count=null,this.version=1,this.name="",this.updateBeforeType=te.OBJECT,this.onInitFunction=null}setCount(e){return this.count=e,this}getCount(){return this.count}dispose(){this.dispatchEvent({type:"dispose"})}setName(e){return this.name=e,this}label(e){return z('TSL: "label()" has been deprecated. Use "setName()" instead.',new ke),this.setName(e)}onInit(e){return this.onInitFunction=e,this}updateBefore({renderer:e}){e.compute(this)}setup(e){let t=this.computeNode.build(e);if(t){let s=e.getNodeProperties(this);s.outputComputeNode=t.outputNode,t.outputNode=null}return t}generate(e,t){let{shaderStage:s}=e;if(s==="compute"){let i=this.computeNode.build(e,"void");i!==""&&e.addLineFlowCode(i,this)}else{let n=e.getNodeProperties(this).outputComputeNode;if(n)return n.build(e,t)}}},Fx=(o,e=[64])=>{(e.length===0||e.length>3)&&O("TSL: compute() workgroupSize must have 1, 2, or 3 elements",new ke);for(let t=0;tFx(o,t).setCount(e);P("compute",pS);P("computeKernel",Fx);var Uf=class extends H{static get type(){return"IsolateNode"}constructor(e,t=!0){super(),this.node=e,this.parent=t,this.isIsolateNode=!0}getNodeType(e){let t=e.getCache(),s=e.getCacheFromNode(this,this.parent);e.setCache(s);let i=this.node.getNodeType(e);return e.setCache(t),i}build(e,...t){let s=e.getCache(),i=e.getCacheFromNode(this,this.parent);e.setCache(i);let n=this.node.build(e,...t);return e.setCache(s),n}setParent(e){return this.parent=e,this}getParent(){return this.parent}},go=o=>new Uf(q(o));function fS(o,e=!0){return z('TSL: "cache()" has been deprecated. Use "isolate()" instead.'),go(o).setParent(e)}P("cache",fS);P("isolate",go);var Of=class extends H{static get type(){return"BypassNode"}constructor(e,t){super(),this.isBypassNode=!0,this.outputNode=e,this.callNode=t}getNodeType(e){return this.outputNode.getNodeType(e)}generate(e){let t=this.callNode.build(e,"void");return t!==""&&e.addLineFlowCode(t,this),this.outputNode.build(e)}},mS=oe(Of).setParameterLength(2);P("bypass",mS);var lh=class extends H{static get type(){return"RemapNode"}constructor(e,t,s,i=b(0),n=b(1)){super(),this.node=e,this.inLowNode=t,this.inHighNode=s,this.outLowNode=i,this.outHighNode=n,this.doClamp=!0}setup(){let{node:e,inLowNode:t,inHighNode:s,outLowNode:i,outHighNode:n,doClamp:r}=this,a=e.sub(t).div(s.sub(t));return r===!0&&(a=a.clamp()),a.mul(n.sub(i)).add(i)}},gS=oe(lh,null,null,{doClamp:!1}).setParameterLength(3,5),yS=oe(lh).setParameterLength(3,5);P("remap",gS);P("remapClamp",yS);var yo=class extends H{static get type(){return"ExpressionNode"}constructor(e="",t="void"){super(t),this.snippet=e}generate(e,t){let s=this.getNodeType(e),i=this.snippet;if(s==="void")e.addLineFlowCode(i,this);else return e.format(i,s,t)}},ts=oe(yo).setParameterLength(1,2),xS=o=>(o?vt(o,ts("discard")):ts("discard")).toStack(),$M=()=>ts("return").toStack();P("discard",xS);var Vf=class extends Be{static get type(){return"RenderOutputNode"}constructor(e,t,s){super("vec4"),this.colorNode=e,this._toneMapping=t,this.outputColorSpace=s,this.isRenderOutputNode=!0}setToneMapping(e){return this._toneMapping=e,this}getToneMapping(){return this._toneMapping}setup({context:e}){let t=this.colorNode||e.color,s=(this._toneMapping!==null?this._toneMapping:e.toneMapping)||Ri,i=(this.outputColorSpace!==null?this.outputColorSpace:e.outputColorSpace)||Bi;return s!==Ri&&(t=t.toneMapping(s)),i!==Bi&&i!==me.workingColorSpace&&(t=t.workingToColorSpace(i)),t}},Ix=(o,e=null,t=null)=>new Vf(q(o),e,t);P("renderOutput",Ix);var kf=class extends Be{static get type(){return"DebugNode"}constructor(e,t=null){super(),this.node=e,this.callback=t}getNodeType(e){return this.node.getNodeType(e)}setup(e){return this.node.build(e)}analyze(e){return this.node.build(e)}generate(e){let t=this.callback,s=this.node.build(e);if(t!==null)t(e,s);else{let i="--- TSL debug - "+e.shaderStage+" shader ---",n="-".repeat(i.length),r="";r+="// #"+i+`# +`,r+=e.flow.code.replace(/^\t/mg,"")+` +`,r+="/* ... */ "+s+` /* ... */ +`,r+="// #"+n+`# +`,pl(r)}return s}},bS=(o,e=null)=>new kf(q(o),e).toStack();P("debug",bS);var uh=class{constructor(){this._renderer=null,this.currentFrame=null}get nodeFrame(){return this._renderer._nodes.nodeFrame}setRenderer(e){return this._renderer=e,this}getRenderer(){return this._renderer}init(){}begin(){}finish(){}inspect(){}computeAsync(){}beginCompute(){}finishCompute(){}beginRender(){}finishRender(){}copyTextureToTexture(){}copyFramebufferToTexture(){}},zf=class extends H{static get type(){return"InspectorNode"}constructor(e,t="",s=null){super(),this.node=e,this.name=t,this.callback=s,this.updateType=te.FRAME,this.isInspectorNode=!0}getName(){return this.name||this.node.name}update(e){e.renderer.inspector.inspect(this)}getNodeType(e){return this.node.getNodeType(e)}setup(e){let t=this.node;return e.context.inspector===!0&&this.callback!==null&&(t=this.callback(t)),e.renderer.backend.isWebGPUBackend!==!0&&e.renderer.inspector.constructor!==uh&&_e('TSL: ".toInspector()" is only available with WebGPU.'),t}};function _S(o,e="",t=null){return o=q(o),o.before(new zf(o,e,t))}P("toInspector",_S);function qM(o){z("TSL: AddNodeElement has been removed in favor of tree-shaking. Trying add",o)}var hh=class extends H{static get type(){return"AttributeNode"}constructor(e,t=null){super(t),this.global=!0,this._attributeName=e}getHash(e){return this.getAttributeName(e)}getNodeType(e){let t=this.nodeType;if(t===null){let s=this.getAttributeName(e);if(e.hasGeometryAttribute(s)){let i=e.geometry.getAttribute(s);t=e.getTypeFromAttribute(i)}else t="float"}return t}setAttributeName(e){return this._attributeName=e,this}getAttributeName(){return this._attributeName}generate(e){let t=this.getAttributeName(e),s=this.getNodeType(e);if(e.hasGeometryAttribute(t)===!0){let n=e.geometry.getAttribute(t),r=e.getTypeFromAttribute(n),a=e.getAttribute(t,r);return e.shaderStage==="vertex"?e.format(a.name,r,s):Sn(this).build(e,s)}else return z(`AttributeNode: Vertex attribute "${t}" not found on geometry.`),e.generateConst(s)}serialize(e){super.serialize(e),e.global=this.global,e._attributeName=this._attributeName}deserialize(e){super.deserialize(e),this.global=e.global,this._attributeName=e._attributeName}},zi=(o,e=null)=>new hh(o,e),Re=(o=0)=>zi("uv"+(o>0?o:""),"vec2"),Gf=class extends H{static get type(){return"TextureSizeNode"}constructor(e,t=null){super("uvec2"),this.isTextureSizeNode=!0,this.textureNode=e,this.levelNode=t}generate(e,t){let s=this.textureNode.build(e,"property"),i=this.levelNode===null?"0":this.levelNode.build(e,"int");return e.format(`${e.getMethod("textureDimensions")}( ${s}, ${i} )`,this.getNodeType(e),t)}},yn=oe(Gf).setParameterLength(1,2),Wf=class extends lr{static get type(){return"MaxMipLevelNode"}constructor(e){super(0),this._textureNode=e,this.updateType=te.FRAME}get textureNode(){return this._textureNode}get texture(){return this._textureNode.value}update(){let e=this.texture,t=e.images,s=t&&t.length>0?t[0]&&t[0].image||t[0]:e.image;if(s&&s.width!==void 0){let{width:i,height:n}=s;this.value=Math.log2(Math.max(i,n))}}},Px=oe(Wf).setParameterLength(1),dh=class extends Error{constructor(e,t=null){super(e),this.name="NodeError",this.stackTrace=t}},Dx=new xt,ps=class extends lr{static get type(){return"TextureNode"}constructor(e=Dx,t=null,s=null,i=null){super(e),this.isTextureNode=!0,this.uvNode=t,this.levelNode=s,this.biasNode=i,this.compareNode=null,this.depthNode=null,this.gradNode=null,this.offsetNode=null,this.sampler=!0,this.updateMatrix=!1,this.updateType=te.NONE,this.referenceNode=null,this._value=e,this._matrixUniform=null,this._flipYUniform=null,this.setUpdateMatrix(t===null)}set value(e){this.referenceNode?this.referenceNode.value=e:this._value=e}get value(){return this.referenceNode?this.referenceNode.value:this._value}getUniformHash(){return this.value.uuid}getNodeType(){return this.value.isDepthTexture===!0?"float":this.value.type===Oe?"uvec4":this.value.type===ut?"ivec4":"vec4"}getInputType(){return"texture"}getDefaultUV(){return Re(this.value.channel)}updateReference(){return this.value}getTransformedUV(e){return this._matrixUniform===null&&(this._matrixUniform=j(this.value.matrix)),this._matrixUniform.mul(v(e,1)).xy}setUpdateMatrix(e){return this.updateMatrix=e,this}setupUV(e,t){return e.isFlipY()&&(this._flipYUniform===null&&(this._flipYUniform=j(!1)),t=t.toVar(),this.sampler?t=this._flipYUniform.select(t.flipY(),t):t=this._flipYUniform.select(t.setY(T(yn(this,this.levelNode).y).sub(t.y).sub(1)),t)),t}setup(e){let t=e.getNodeProperties(this);t.referenceNode=this.referenceNode;let s=this.value;if(!s||s.isTexture!==!0)throw new dh("THREE.TSL: `texture( value )` function expects a valid instance of THREE.Texture().",this.stackTrace);let i=A(()=>{let c=this.uvNode;return(c===null||e.context.forceUVContext===!0)&&e.context.getUV&&(c=e.context.getUV(this,e)),c||(c=this.getDefaultUV()),this.updateMatrix===!0&&(c=this.getTransformedUV(c)),c=this.setupUV(e,c),this.updateType=this._matrixUniform!==null||this._flipYUniform!==null?te.OBJECT:te.NONE,c})(),n=this.levelNode;n===null&&e.context.getTextureLevel&&(n=e.context.getTextureLevel(this));let r=null,a=null;if(this.compareNode!==null)if(e.renderer.hasCompatibility(Ys.TEXTURE_COMPARE))r=this.compareNode;else{let c=s.compareFunction;c===null||c===pu||c===Jr||c===Oa||c===Yn?a=this.compareNode:(r=this.compareNode,_e('TSL: Only "LessCompare", "LessEqualCompare", "GreaterCompare" and "GreaterEqualCompare" are supported for depth texture comparison fallback.'))}t.uvNode=i,t.levelNode=n,t.biasNode=this.biasNode,t.compareNode=r,t.compareStepNode=a,t.gradNode=this.gradNode,t.depthNode=this.depthNode,t.offsetNode=this.offsetNode}generateUV(e,t){return t.build(e,this.sampler===!0?"vec2":"ivec2")}generateOffset(e,t){return t.build(e,"ivec2")}generateSnippet(e,t,s,i,n,r,a,c,l){let u=this.value,h;return n?h=e.generateTextureBias(u,t,s,n,r,l):c?h=e.generateTextureGrad(u,t,s,c,r,l):a?h=e.generateTextureCompare(u,t,s,a,r,l):this.sampler===!1?h=e.generateTextureLoad(u,t,s,i,r,l):i?h=e.generateTextureLevel(u,t,s,i,r,l):h=e.generateTexture(u,t,s,r,l),h}generate(e,t){let s=this.value,i=e.getNodeProperties(this),n=super.generate(e,"property");if(/^sampler/.test(t))return n+"_sampler";if(e.isReference(t))return n;{let r=e.getDataFromNode(this),a=this.getNodeType(e),c=r.propertyName;if(c===void 0){let{uvNode:u,levelNode:h,biasNode:d,compareNode:p,compareStepNode:m,depthNode:g,gradNode:y,offsetNode:x}=i,_=this.generateUV(e,u),w=h?h.build(e,"float"):null,S=d?d.build(e,"float"):null,E=g?g.build(e,"int"):null,B=p?p.build(e,"float"):null,N=m?m.build(e,"float"):null,C=y?[y[0].build(e,"vec2"),y[1].build(e,"vec2")]:null,I=x?this.generateOffset(e,x):null,k=e.getVarFromNode(this);c=e.getPropertyName(k);let W=this.generateSnippet(e,n,_,w,S,E,B,C,I);if(N!==null){let X=s.compareFunction;X===Oa||X===Yn?W=ur(ts(W,a),ts(N,"float")).build(e,a):W=ur(ts(N,"float"),ts(W,a)).build(e,a)}e.addLineFlowCode(`${c} = ${W}`,this),r.snippet=W,r.propertyName=c}let l=c;return e.needsToWorkingColorSpace(s)&&(l=hd(ts(l,a),s.colorSpace).setup(e).build(e,a)),e.format(l,a,t)}}setSampler(e){return this.sampler=e,this}getSampler(){return this.sampler}sample(e){let t=this.clone();return t.uvNode=q(e),t.referenceNode=this.getBase(),q(t)}load(e){return this.sample(e).setSampler(!1)}blur(e){let t=this.clone();t.biasNode=q(e).mul(Px(t)),t.referenceNode=this.getBase();let s=t.value;return t.generateMipmaps===!1&&(s&&s.generateMipmaps===!1||s.minFilter===Ue||s.magFilter===Ue)&&(z("TSL: texture().blur() requires mipmaps and sampling. Use .generateMipmaps=true and .minFilter/.magFilter=THREE.LinearFilter in the Texture."),t.biasNode=null),q(t)}level(e){let t=this.clone();return t.levelNode=q(e),t.referenceNode=this.getBase(),q(t)}size(e){return yn(this,e)}bias(e){let t=this.clone();return t.biasNode=q(e),t.referenceNode=this.getBase(),q(t)}getBase(){return this.referenceNode?this.referenceNode.getBase():this}compare(e){let t=this.clone();return t.compareNode=q(e),t.referenceNode=this.getBase(),q(t)}grad(e,t){let s=this.clone();return s.gradNode=[q(e),q(t)],s.referenceNode=this.getBase(),q(s)}depth(e){let t=this.clone();return t.depthNode=q(e),t.referenceNode=this.getBase(),q(t)}offset(e){let t=this.clone();return t.offsetNode=q(e),t.referenceNode=this.getBase(),q(t)}serialize(e){super.serialize(e),e.value=this.value.toJSON(e.meta).uuid,e.sampler=this.sampler,e.updateMatrix=this.updateMatrix,e.updateType=this.updateType}deserialize(e){super.deserialize(e),this.value=e.meta.textures[e.value],this.sampler=e.sampler,this.updateMatrix=e.updateMatrix,this.updateType=e.updateType}update(){let e=this.value,t=this._matrixUniform;t!==null&&(t.value=e.matrix),e.matrixAutoUpdate===!0&&e.updateMatrix();let s=this._flipYUniform;s!==null&&(s.value=e.image instanceof ImageBitmap&&e.flipY===!0||e.isRenderTargetTexture===!0||e.isFramebufferTexture===!0||e.isDepthTexture===!0)}clone(){let e=new this.constructor(this.value,this.uvNode,this.levelNode,this.biasNode);return e.sampler=this.sampler,e.depthNode=this.depthNode,e.compareNode=this.compareNode,e.gradNode=this.gradNode,e.offsetNode=this.offsetNode,e}},HM=oe(ps).setParameterLength(1,4).setName("texture"),xe=(o=Dx,e=null,t=null,s=null)=>{let i;return o&&o.isTextureNode===!0?(i=q(o.clone()),i.referenceNode=o.getBase(),e!==null&&(i.uvNode=q(e)),t!==null&&(i.levelNode=q(t)),s!==null&&(i.biasNode=q(s))):i=HM(o,e,t,s),i},XM=(o=Dx)=>xe(o),Ge=(...o)=>xe(...o).setSampler(!1),YM=(o,e,t)=>xe(o,e).level(t),jM=o=>(o.isNode===!0?o:xe(o)).convert("sampler"),ZM=o=>(o.isNode===!0?o:xe(o)).convert("samplerComparison"),gc=class extends lr{static get type(){return"BufferNode"}constructor(e,t,s=0){super(e,t),this.isBufferNode=!0,this.bufferType=t,this.bufferCount=s,this.updateRanges=[]}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}getElementType(e){return this.getNodeType(e)}getInputType(){return"buffer"}},Fc=(o,e,t)=>new gc(o,e,t),$f=class extends Vi{static get type(){return"UniformArrayElementNode"}constructor(e,t){super(e,t),this.isArrayBufferElementNode=!0}generate(e){let t=super.generate(e),s=this.getNodeType(),i=this.node.getPaddedType();return e.format(t,i,s)}},qf=class extends gc{static get type(){return"UniformArrayNode"}constructor(e,t=null){super(null),this.array=e,this.elementType=t===null?fn(e[0]):t,this.paddedType=this.getPaddedType(),this.updateType=te.RENDER,this.isArrayBufferNode=!0}getNodeType(){return this.paddedType}getElementType(){return this.elementType}getPaddedType(){let e=this.elementType,t="vec4";return e==="mat2"?t="mat2":/mat/.test(e)===!0?t="mat4":e.charAt(0)==="i"?t="ivec4":e.charAt(0)==="u"&&(t="uvec4"),t}update(){let{array:e,value:t}=this,s=this.elementType;if(s==="float"||s==="int"||s==="uint")for(let i=0;inew qf(o,e),Hf=class extends H{constructor(e){super("float"),this.name=e,this.isBuiltinNode=!0}generate(){return this.name}},qi=oe(Hf).setParameterLength(1),ka,za,pt=class o extends H{static get type(){return"ScreenNode"}constructor(e){super(),this.scope=e,this._output=null,this.isViewportNode=!0}getNodeType(){return this.scope===o.DPR?"float":this.scope===o.VIEWPORT?"vec4":"vec2"}getUpdateType(){let e=te.NONE;return(this.scope===o.SIZE||this.scope===o.VIEWPORT||this.scope===o.DPR)&&(e=te.RENDER),this.updateType=e,e}update({renderer:e}){let t=e.getRenderTarget();this.scope===o.VIEWPORT?t!==null?za.copy(t.viewport):(e.getViewport(za),za.multiplyScalar(e.getPixelRatio())):this.scope===o.DPR?this._output.value=e.getPixelRatio():t!==null?(ka.width=t.width,ka.height=t.height):e.getDrawingBufferSize(ka)}setup(){let e=this.scope,t=null;return e===o.SIZE?t=j(ka||(ka=new re)):e===o.VIEWPORT?t=j(za||(za=new Te)):e===o.DPR?t=j(1):t=U(gr.div(hr)),this._output=t,t}generate(e){if(this.scope===o.COORDINATE){let t=e.getFragCoord();if(e.isFlipY()){let s=e.getNodeProperties(hr).outputNode.build(e);t=`${e.getType("vec2")}( ${t}.x, ${s}.y - ${t}.y )`}return t}return super.generate(e)}};pt.COORDINATE="coordinate";pt.VIEWPORT="viewport";pt.SIZE="size";pt.UV="uv";pt.DPR="dpr";var TS=G(pt,pt.DPR),ci=G(pt,pt.UV),hr=G(pt,pt.SIZE),gr=G(pt,pt.COORDINATE),Lx=G(pt,pt.VIEWPORT),Ux=Lx.zw,SS=gr.sub(Lx.xy),JM=SS.div(Ux),QM=A(()=>(z('TSL: "viewportResolution" is deprecated. Use "screenSize" instead.',new ke),hr),"vec2").once()(),Fp=null,mu=null,Ip=null,gu=null,Pp=null,yu=null,Dp=null,xu=null,Lp=null,bu=null,Up=null,_u=null,Op=null,Tu=null,vn=j(0,"uint").setName("u_cameraIndex").setGroup(ad("cameraIndex")).toVarying("v_cameraIndex"),un=j("float").setName("cameraNear").setGroup(J).onRenderUpdate(({camera:o})=>o.near),hn=j("float").setName("cameraFar").setGroup(J).onRenderUpdate(({camera:o})=>o.far),Oi=A(({camera:o})=>{let e;if(o.isArrayCamera&&o.cameras.length>0){let t=[];for(let s of o.cameras)t.push(s.projectionMatrix);mu===null?mu=St(t).setGroup(J).setName("cameraProjectionMatrices"):mu.array=t,e=mu.element(o.isMultiViewCamera?qi("gl_ViewID_OVR"):vn).toConst("cameraProjectionMatrix")}else Fp===null&&(Fp=j(o.projectionMatrix).setName("cameraProjectionMatrix").setGroup(J).onRenderUpdate(({camera:t})=>t.projectionMatrix)),e=Fp;return e}).once()(),vS=A(({camera:o})=>{let e;if(o.isArrayCamera&&o.cameras.length>0){let t=[];for(let s of o.cameras)t.push(s.projectionMatrixInverse);gu===null?gu=St(t).setGroup(J).setName("cameraProjectionMatricesInverse"):gu.array=t,e=gu.element(o.isMultiViewCamera?qi("gl_ViewID_OVR"):vn).toConst("cameraProjectionMatrixInverse")}else Ip===null&&(Ip=j(o.projectionMatrixInverse).setName("cameraProjectionMatrixInverse").setGroup(J).onRenderUpdate(({camera:t})=>t.projectionMatrixInverse)),e=Ip;return e}).once()(),fs=A(({camera:o})=>{let e;if(o.isArrayCamera&&o.cameras.length>0){let t=[];for(let s of o.cameras)t.push(s.matrixWorldInverse);yu===null?yu=St(t).setGroup(J).setName("cameraViewMatrices"):yu.array=t,e=yu.element(o.isMultiViewCamera?qi("gl_ViewID_OVR"):vn).toConst("cameraViewMatrix")}else Pp===null&&(Pp=j(o.matrixWorldInverse).setName("cameraViewMatrix").setGroup(J).onRenderUpdate(({camera:t})=>t.matrixWorldInverse)),e=Pp;return e}).once()(),KM=A(({camera:o})=>{let e;if(o.isArrayCamera&&o.cameras.length>0){let t=[];for(let s of o.cameras)t.push(s.matrixWorld);xu===null?xu=St(t).setGroup(J).setName("cameraWorldMatrices"):xu.array=t,e=xu.element(o.isMultiViewCamera?qi("gl_ViewID_OVR"):vn).toConst("cameraWorldMatrix")}else Dp===null&&(Dp=j(o.matrixWorld).setName("cameraWorldMatrix").setGroup(J).onRenderUpdate(({camera:t})=>t.matrixWorld)),e=Dp;return e}).once()(),eA=A(({camera:o})=>{let e;if(o.isArrayCamera&&o.cameras.length>0){let t=[];for(let s of o.cameras)t.push(s.normalMatrix);bu===null?bu=St(t).setGroup(J).setName("cameraNormalMatrices"):bu.array=t,e=bu.element(o.isMultiViewCamera?qi("gl_ViewID_OVR"):vn).toConst("cameraNormalMatrix")}else Lp===null&&(Lp=j(o.normalMatrix).setName("cameraNormalMatrix").setGroup(J).onRenderUpdate(({camera:t})=>t.normalMatrix)),e=Lp;return e}).once()(),wS=A(({camera:o})=>{let e;if(o.isArrayCamera&&o.cameras.length>0){let t=[];for(let s=0,i=o.cameras.length;s{let n=s.cameras,r=i.array;for(let a=0,c=n.length;as.value.setFromMatrixPosition(t.matrixWorld))),e=Up;return e}).once()(),tA=A(({camera:o})=>{let e;if(o.isArrayCamera&&o.cameras.length>0){let t=[];for(let s of o.cameras)t.push(s.viewport);Tu===null?Tu=St(t,"vec4").setGroup(J).setName("cameraViewports"):Tu.array=t,e=Tu.element(vn).toConst("cameraViewport")}else Op===null&&(Op=Z(0,0,hr.x,hr.y).toConst("cameraViewport")),e=Op;return e}).once()(),Ub=new Vn,je=class o extends H{static get type(){return"Object3DNode"}constructor(e,t=null){super(),this.scope=e,this.object3d=t,this.updateType=te.OBJECT,this.uniformNode=new lr(null)}getNodeType(){let e=this.scope;if(e===o.WORLD_MATRIX)return"mat4";if(e===o.POSITION||e===o.VIEW_POSITION||e===o.DIRECTION||e===o.SCALE)return"vec3";if(e===o.RADIUS)return"float"}update(e){let t=this.object3d,s=this.uniformNode,i=this.scope;if(i===o.WORLD_MATRIX)s.value=t.matrixWorld;else if(i===o.POSITION)s.value=s.value||new R,s.value.setFromMatrixPosition(t.matrixWorld);else if(i===o.SCALE)s.value=s.value||new R,s.value.setFromMatrixScale(t.matrixWorld);else if(i===o.DIRECTION)s.value=s.value||new R,t.getWorldDirection(s.value);else if(i===o.VIEW_POSITION){let n=e.camera;s.value=s.value||new R,s.value.setFromMatrixPosition(t.matrixWorld),s.value.applyMatrix4(n.matrixWorldInverse)}else if(i===o.RADIUS){let n=e.object.geometry;n.boundingSphere===null&&n.computeBoundingSphere(),Ub.copy(n.boundingSphere).applyMatrix4(t.matrixWorld),s.value=Ub.radius}}generate(e){let t=this.scope;return t===o.WORLD_MATRIX?this.uniformNode.nodeType="mat4":t===o.POSITION||t===o.VIEW_POSITION||t===o.DIRECTION||t===o.SCALE?this.uniformNode.nodeType="vec3":t===o.RADIUS&&(this.uniformNode.nodeType="float"),this.uniformNode.build(e)}serialize(e){super.serialize(e),e.scope=this.scope}deserialize(e){super.deserialize(e),this.scope=e.scope}};je.WORLD_MATRIX="worldMatrix";je.POSITION="position";je.SCALE="scale";je.VIEW_POSITION="viewPosition";je.DIRECTION="direction";je.RADIUS="radius";var sA=oe(je,je.DIRECTION).setParameterLength(1),iA=oe(je,je.WORLD_MATRIX).setParameterLength(1),nA=oe(je,je.POSITION).setParameterLength(1),rA=oe(je,je.SCALE).setParameterLength(1),oA=oe(je,je.VIEW_POSITION).setParameterLength(1),aA=oe(je,je.RADIUS).setParameterLength(1),kt=class extends je{static get type(){return"ModelNode"}constructor(e){super(e)}update(e){this.object3d=e.object,super.update(e)}},cA=G(kt,kt.DIRECTION),ls=G(kt,kt.WORLD_MATRIX),lA=G(kt,kt.POSITION),uA=G(kt,kt.SCALE),hA=G(kt,kt.VIEW_POSITION),dA=G(kt,kt.RADIUS),MS=j(new Nt).onObjectUpdate(({object:o},e)=>e.value.getNormalMatrix(o.matrixWorld)),pA=j(new de).onObjectUpdate(({object:o},e)=>e.value.copy(o.matrixWorld).invert()),wn=A(o=>o.context.modelViewMatrix||AS).once()().toVar("modelViewMatrix"),AS=fs.mul(ls),Xf=A(o=>(o.context.isHighPrecisionModelViewMatrix=!0,j("mat4").onObjectUpdate(({object:e,camera:t})=>e.modelViewMatrix.multiplyMatrices(t.matrixWorldInverse,e.matrixWorld)))).once()().toVar("highpModelViewMatrix"),Yf=A(o=>{let e=o.context.isHighPrecisionModelViewMatrix;return j("mat3").onObjectUpdate(({object:t,camera:s})=>(e!==!0&&t.modelViewMatrix.multiplyMatrices(s.matrixWorldInverse,t.matrixWorld),t.normalMatrix.getNormalMatrix(t.modelViewMatrix)))}).once()().toVar("highpModelNormalViewMatrix"),NS=A(o=>o.shaderStage!=="fragment"?(_e("TSL: `clipSpace` is only available in fragment stage."),Z()):o.context.clipSpace.toVarying("v_clipSpace")).once()(),Ic=zi("position","vec3"),Ve=Ic.toVarying("positionLocal"),_o=Ic.toVarying("positionPrevious"),li=A(o=>ls.mul(Ve).xyz.toVarying(o.getSubBuildProperty("v_positionWorld")),"vec3").once(["POSITION"])(),Ox=A(()=>Ve.transformDirection(ls).toVarying("v_positionWorldDirection").normalize().toVar("positionWorldDirection"),"vec3").once(["POSITION"])(),qe=A(o=>{if(o.shaderStage==="fragment"&&o.material.vertexNode){let e=vS.mul(NS);return e.xyz.div(e.w).toVar("positionView")}return o.context.setupPositionView().toVarying("v_positionView")},"vec3").once(["POSITION","VERTEX"])(),Ce=A(o=>{let e;return o.camera.isOrthographicCamera?e=v(0,0,1):e=qe.negate().toVarying("v_positionViewDirection").normalize(),e.toVar("positionViewDirection")},"vec3").once(["POSITION"])(),jf=class extends H{static get type(){return"FrontFacingNode"}constructor(){super("bool"),this.isFrontFacingNode=!0}generate(e){if(e.shaderStage!=="fragment")return"true";let{material:t}=e;return t.side===rt?"false":e.getFrontFacing()}},RS=G(jf),Vx=b(RS).mul(2).sub(1),Co=A(([o],{material:e})=>{let t=e.side;return t===rt?o=o.mul(-1):t===$s&&(o=o.mul(Vx)),o}),pd=zi("normal","vec3"),zt=A(o=>o.geometry.hasAttribute("normal")===!1?(z('TSL: Vertex attribute "normal" not found on geometry.'),v(0,1,0)):pd,"vec3").once()().toVar("normalLocal"),CS=qe.dFdx().cross(qe.dFdy()).normalize().toVar("normalFlat"),To=A(o=>{let e;return o.isFlatShading()?e=CS:e=kx(zt).toVarying("v_normalViewGeometry").normalize(),e},"vec3").once()().toVar("normalViewGeometry"),ES=A(o=>{let e=To.transformDirection(fs);return o.isFlatShading()!==!0&&(e=e.toVarying("v_normalWorldGeometry")),e.normalize().toVar("normalWorldGeometry")},"vec3").once()(),ye=A(o=>{let e;return o.subBuildFn==="NORMAL"||o.subBuildFn==="VERTEX"?(e=To,o.isFlatShading()!==!0&&(e=Co(e))):e=o.context.setupNormal().context({getUV:null,getTextureLevel:null}),e},"vec3").once(["NORMAL","VERTEX"])().toVar("normalView"),Mn=ye.transformDirection(fs).toVar("normalWorld"),dn=A(({subBuildFn:o,context:e})=>{let t;return o==="NORMAL"||o==="VERTEX"?t=ye:t=e.setupClearcoatNormal().context({getUV:null,getTextureLevel:null}),t},"vec3").once(["NORMAL","VERTEX"])().toVar("clearcoatNormalView"),BS=A(([o,e=ls])=>{let t=at(e),s=o.div(v(t[0].dot(t[0]),t[1].dot(t[1]),t[2].dot(t[2])));return t.mul(s).xyz}),kx=A(([o],e)=>{let t=e.context.modelNormalViewMatrix;if(t)return t.transformDirection(o);let s=MS.mul(o);return fs.transformDirection(s)}),fA=A(()=>(z('TSL: "transformedNormalView" is deprecated. Use "normalView" instead.'),ye)).once(["NORMAL","VERTEX"])(),mA=A(()=>(z('TSL: "transformedNormalWorld" is deprecated. Use "normalWorld" instead.'),Mn)).once(["NORMAL","VERTEX"])(),gA=A(()=>(z('TSL: "transformedClearcoatNormalView" is deprecated. Use "clearcoatNormalView" instead.'),dn)).once(["NORMAL","VERTEX"])(),Ob=new jt,Vp=new de,FS=j(0).onReference(({material:o})=>o).onObjectUpdate(({material:o})=>o.refractionRatio),qu=j(1).onReference(({material:o})=>o).onObjectUpdate(function({material:o,scene:e}){return o.envMap?o.envMapIntensity:e.environmentIntensity}),zx=j(new de).onReference(function(o){return o.material}).onObjectUpdate(function({material:o,scene:e}){let t=e.environment!==null&&o.envMap===null?e.environmentRotation:o.envMapRotation;return t?(Ob.copy(t),Vp.makeRotationFromEuler(Ob)):Vp.identity(),Vp}),IS=Ce.negate().reflect(ye),PS=Ce.negate().refract(ye,FS),DS=IS.transformDirection(fs).toVar("reflectVector"),LS=PS.transformDirection(fs).toVar("reflectVector"),US=new kn,Zf=class extends ps{static get type(){return"CubeTextureNode"}constructor(e,t=null,s=null,i=null){super(e,t,s,i),this.isCubeTextureNode=!0}getInputType(){return this.value.isDepthTexture===!0?"cubeDepthTexture":"cubeTexture"}getDefaultUV(){let e=this.value;return e.mapping===qn?DS:e.mapping===ca?LS:(O('CubeTextureNode: Mapping "%s" not supported.',e.mapping),v(0,0,0))}setUpdateMatrix(){}setupUV(e,t){let s=this.value;return s.isDepthTexture===!0?e.renderer.coordinateSystem===Yt?v(t.x,t.y.negate(),t.z):t:((e.renderer.coordinateSystem===Yt||!s.isRenderTargetTexture)&&(t=v(t.x.negate(),t.yz)),zx.mul(t))}generateUV(e,t){return t.build(e,this.sampler===!0?"vec3":"ivec3")}},Gx=oe(Zf).setParameterLength(1,4).setName("cubeTexture"),Ft=(o=US,e=null,t=null,s=null)=>{let i;return o&&o.isCubeTextureNode===!0?(i=q(o.clone()),i.referenceNode=o,e!==null&&(i.uvNode=q(e)),t!==null&&(i.levelNode=q(t)),s!==null&&(i.biasNode=q(s))):i=Gx(o,e,t,s),i},yA=(o=US)=>Gx(o),Jf=class extends Vi{static get type(){return"ReferenceElementNode"}constructor(e,t){super(e,t),this.referenceNode=e,this.isReferenceElementNode=!0}getNodeType(){return this.referenceNode.uniformType}generate(e){let t=super.generate(e),s=this.referenceNode.getNodeType(),i=this.getNodeType();return e.format(t,s,i)}},So=class extends H{static get type(){return"ReferenceNode"}constructor(e,t,s=null,i=null){super(),this.property=e,this.uniformType=t,this.object=s,this.count=i,this.properties=e.split("."),this.reference=s,this.node=null,this.group=null,this.name=null,this.updateType=te.OBJECT}element(e){return new Jf(this,q(e))}setGroup(e){return this.group=e,this}setName(e){return this.name=e,this}label(e){return z('TSL: "label()" has been deprecated. Use "setName()" instead.'),this.setName(e)}setNodeType(e){let t=null;this.count!==null?t=Fc(null,e,this.count):Array.isArray(this.getValueFromReference())?t=St(null,e):e==="texture"?t=xe(null):e==="cubeTexture"?t=Ft(null):t=j(null,e),this.group!==null&&t.setGroup(this.group),this.name!==null&&t.setName(this.name),this.node=t}getNodeType(e){return this.node===null&&(this.updateReference(e),this.updateValue()),this.node.getNodeType(e)}getValueFromReference(e=this.reference){let{properties:t}=this,s=e[t[0]];for(let i=1;inew So(o,e,t),Qf=(o,e,t,s)=>new So(o,e,s,t),Kf=class extends So{static get type(){return"MaterialReferenceNode"}constructor(e,t,s=null){super(e,t,s),this.material=s,this.isMaterialReferenceNode=!0}updateReference(e){return this.reference=this.material!==null?this.material:e.material,this.reference}},Di=(o,e,t=null)=>new Kf(o,e,t),OS=Re(),xA=qe.dFdx(),bA=qe.dFdy(),VS=OS.dFdx(),kS=OS.dFdy(),zS=ye,GS=bA.cross(zS),WS=zS.cross(xA),em=GS.mul(VS.x).add(WS.mul(kS.x)),tm=GS.mul(VS.y).add(WS.mul(kS.y)),Vb=em.dot(em).max(tm.dot(tm)),$S=Vb.equal(0).select(0,Vb.inverseSqrt()),_A=em.mul($S).toVar("tangentViewFrame"),TA=tm.mul($S).toVar("bitangentViewFrame"),fd=zi("tangent","vec4"),vo=fd.xyz.toVar("tangentLocal"),md=A(o=>{let e;return o.subBuildFn==="VERTEX"||o.geometry.hasAttribute("tangent")?e=wn.mul(Z(vo,0)).xyz.toVarying("v_tangentView").normalize():e=_A,o.isFlatShading()!==!0&&(e=Co(e)),e},"vec3").once(["NORMAL","VERTEX"])().toVar("tangentView"),qS=md.transformDirection(fs).toVarying("v_tangentWorld").normalize().toVar("tangentWorld"),gd=A(([o,e],t)=>{let s=o.mul(fd.w).xyz;return t.subBuildFn==="NORMAL"&&t.isFlatShading()!==!0&&(s=s.toVarying(e)),s}).once(["NORMAL"]),SA=gd(pd.cross(fd),"v_bitangentGeometry").normalize().toVar("bitangentGeometry"),vA=gd(zt.cross(vo),"v_bitangentLocal").normalize().toVar("bitangentLocal"),HS=A(o=>{let e;return o.subBuildFn==="VERTEX"||o.geometry.hasAttribute("tangent")?e=gd(ye.cross(md),"v_bitangentView").normalize():e=TA,o.isFlatShading()!==!0&&(e=Co(e)),e},"vec3").once(["NORMAL","VERTEX"])().toVar("bitangentView"),wA=gd(Mn.cross(qS),"v_bitangentWorld").normalize().toVar("bitangentWorld"),nr=at(md,HS,ye).toVar("TBNViewMatrix"),XS=Ce.mul(nr),MA=(o,e)=>o.sub(XS.mul(e)),YS=A(()=>{let o=ar.cross(Ce);return o=o.cross(ar).normalize(),o=le(o,ye,cn.mul(ii.oneMinus()).oneMinus().pow2().pow2()).normalize(),o}).once()(),jS=o=>q(o).mul(.5).add(.5),AA=o=>q(o).mul(2).sub(1),sm=o=>v(o,It(ud(b(1).sub(ds(o,o))))),im=class extends Be{static get type(){return"NormalMapNode"}constructor(e,t=null){super("vec3"),this.node=e,this.scaleNode=t,this.normalMapType=Xs,this.unpackNormalMode=du}setup(e){let{normalMapType:t,scaleNode:s,unpackNormalMode:i}=this,n=this.node.mul(2).sub(1);if(t===Xs?i===Sp?n=sm(n.xy):i===ub?n=sm(n.yw):i!==du&&console.error(`THREE.NodeMaterial: Unexpected unpack normal mode: ${i}`):i!==du&&console.error(`THREE.NodeMaterial: Normal map type '${t}' is not compatible with unpack normal mode '${i}'`),s!==null){let a=s;e.isFlatShading()===!0&&(a=Co(a)),n=v(n.xy.mul(a),n.z)}let r=null;return t===lb?r=kx(n):t===Xs?r=nr.mul(n).normalize():(O(`NodeMaterial: Unsupported normal map type: ${t}`),r=ye),r}},nm=oe(im).setParameterLength(1,2),NA=A(({textureNode:o,bumpScale:e})=>{let t=i=>o.isolate().context({getUV:n=>i(n.uvNode||Re()),forceUVContext:!0}),s=b(t(i=>i));return U(b(t(i=>i.add(i.dFdx()))).sub(s),b(t(i=>i.add(i.dFdy()))).sub(s)).mul(e)}),RA=A(o=>{let{surf_pos:e,surf_norm:t,dHdxy:s}=o,i=e.dFdx().normalize(),n=e.dFdy().normalize(),r=t,a=n.cross(r),c=r.cross(i),l=i.dot(a).mul(Vx),u=l.sign().mul(s.x.mul(a).add(s.y.mul(c)));return l.abs().mul(t).sub(u).normalize()}),rm=class extends Be{static get type(){return"BumpMapNode"}constructor(e,t=null){super("vec3"),this.textureNode=e,this.scaleNode=t}setup(){let e=this.scaleNode!==null?this.scaleNode:1,t=NA({textureNode:this.textureNode,bumpScale:e});return RA({surf_pos:qe,surf_norm:ye,dHdxy:t})}},Wx=oe(rm).setParameterLength(1,2),kb=new Map,L=class o extends H{static get type(){return"MaterialNode"}constructor(e){super(),this.scope=e}getCache(e,t){let s=kb.get(e);return s===void 0&&(s=Di(e,t),kb.set(e,s)),s}getFloat(e){return this.getCache(e,"float")}getColor(e){return this.getCache(e,"color")}getTexture(e){return this.getCache(e==="map"?"map":e+"Map","texture")}setup(e){let t=e.context.material,s=this.scope,i=null;if(s===o.COLOR){let n=t.color!==void 0?this.getColor(s):v();t.map&&t.map.isTexture===!0?i=n.mul(this.getTexture("map")):i=n}else if(s===o.OPACITY){let n=this.getFloat(s);t.alphaMap&&t.alphaMap.isTexture===!0?i=n.mul(this.getTexture("alpha")):i=n}else if(s===o.SPECULAR_STRENGTH)t.specularMap&&t.specularMap.isTexture===!0?i=this.getTexture("specular").r:i=b(1);else if(s===o.SPECULAR_INTENSITY){let n=this.getFloat(s);t.specularIntensityMap&&t.specularIntensityMap.isTexture===!0?i=n.mul(this.getTexture(s).a):i=n}else if(s===o.SPECULAR_COLOR){let n=this.getColor(s);t.specularColorMap&&t.specularColorMap.isTexture===!0?i=n.mul(this.getTexture(s).rgb):i=n}else if(s===o.ROUGHNESS){let n=this.getFloat(s);t.roughnessMap&&t.roughnessMap.isTexture===!0?i=n.mul(this.getTexture(s).g):i=n}else if(s===o.METALNESS){let n=this.getFloat(s);t.metalnessMap&&t.metalnessMap.isTexture===!0?i=n.mul(this.getTexture(s).b):i=n}else if(s===o.EMISSIVE){let n=this.getFloat("emissiveIntensity"),r=this.getColor(s).mul(n);t.emissiveMap&&t.emissiveMap.isTexture===!0?i=r.mul(this.getTexture(s)):i=r}else if(s===o.NORMAL)t.normalMap?(i=nm(this.getTexture("normal"),this.getCache("normalScale","vec2")),i.normalMapType=t.normalMapType,(t.normalMap.format==Ms||t.normalMap.format==Zr||t.normalMap.format==jr)&&(i.unpackNormalMode=Sp)):t.bumpMap?i=Wx(this.getTexture("bump").r,this.getFloat("bumpScale")):i=ye;else if(s===o.CLEARCOAT){let n=this.getFloat(s);t.clearcoatMap&&t.clearcoatMap.isTexture===!0?i=n.mul(this.getTexture(s).r):i=n}else if(s===o.CLEARCOAT_ROUGHNESS){let n=this.getFloat(s);t.clearcoatRoughnessMap&&t.clearcoatRoughnessMap.isTexture===!0?i=n.mul(this.getTexture(s).r):i=n}else if(s===o.CLEARCOAT_NORMAL)t.clearcoatNormalMap?i=nm(this.getTexture(s),this.getCache(s+"Scale","vec2")):i=ye;else if(s===o.SHEEN){let n=this.getColor("sheenColor").mul(this.getFloat("sheen"));t.sheenColorMap&&t.sheenColorMap.isTexture===!0?i=n.mul(this.getTexture("sheenColor").rgb):i=n}else if(s===o.SHEEN_ROUGHNESS){let n=this.getFloat(s);t.sheenRoughnessMap&&t.sheenRoughnessMap.isTexture===!0?i=n.mul(this.getTexture(s).a):i=n,i=i.clamp(1e-4,1)}else if(s===o.ANISOTROPY)if(t.anisotropyMap&&t.anisotropyMap.isTexture===!0){let n=this.getTexture(s);i=rd(lo.x,lo.y,lo.y.negate(),lo.x).mul(n.rg.mul(2).sub(U(1)).normalize().mul(n.b))}else i=lo;else if(s===o.IRIDESCENCE_THICKNESS){let n=Ie("1","float",t.iridescenceThicknessRange);if(t.iridescenceThicknessMap){let r=Ie("0","float",t.iridescenceThicknessRange);i=n.sub(r).mul(this.getTexture(s).g).add(r)}else i=n}else if(s===o.TRANSMISSION){let n=this.getFloat(s);t.transmissionMap?i=n.mul(this.getTexture(s).r):i=n}else if(s===o.THICKNESS){let n=this.getFloat(s);t.thicknessMap?i=n.mul(this.getTexture(s).g):i=n}else if(s===o.IOR)i=this.getFloat(s);else if(s===o.LIGHT_MAP)i=this.getTexture(s).rgb.mul(this.getFloat("lightMapIntensity"));else if(s===o.AO)i=this.getTexture(s).r.sub(1).mul(this.getFloat("aoMapIntensity")).add(1);else if(s===o.LINE_DASH_OFFSET)i=t.dashOffset?this.getFloat(s):b(0);else{let n=this.getNodeType(e);i=this.getCache(s,n)}return i}};L.ALPHA_TEST="alphaTest";L.COLOR="color";L.OPACITY="opacity";L.SHININESS="shininess";L.SPECULAR="specular";L.SPECULAR_STRENGTH="specularStrength";L.SPECULAR_INTENSITY="specularIntensity";L.SPECULAR_COLOR="specularColor";L.REFLECTIVITY="reflectivity";L.ROUGHNESS="roughness";L.METALNESS="metalness";L.NORMAL="normal";L.CLEARCOAT="clearcoat";L.CLEARCOAT_ROUGHNESS="clearcoatRoughness";L.CLEARCOAT_NORMAL="clearcoatNormal";L.EMISSIVE="emissive";L.ROTATION="rotation";L.SHEEN="sheen";L.SHEEN_ROUGHNESS="sheenRoughness";L.ANISOTROPY="anisotropy";L.IRIDESCENCE="iridescence";L.IRIDESCENCE_IOR="iridescenceIOR";L.IRIDESCENCE_THICKNESS="iridescenceThickness";L.IOR="ior";L.TRANSMISSION="transmission";L.THICKNESS="thickness";L.ATTENUATION_DISTANCE="attenuationDistance";L.ATTENUATION_COLOR="attenuationColor";L.LINE_SCALE="scale";L.LINE_DASH_SIZE="dashSize";L.LINE_GAP_SIZE="gapSize";L.LINE_WIDTH="linewidth";L.LINE_DASH_OFFSET="dashOffset";L.POINT_SIZE="size";L.DISPERSION="dispersion";L.LIGHT_MAP="light";L.AO="ao";var ZS=G(L,L.ALPHA_TEST),JS=G(L,L.COLOR),QS=G(L,L.SHININESS),KS=G(L,L.EMISSIVE),$x=G(L,L.OPACITY),ev=G(L,L.SPECULAR),om=G(L,L.SPECULAR_INTENSITY),tv=G(L,L.SPECULAR_COLOR),oc=G(L,L.SPECULAR_STRENGTH),Hu=G(L,L.REFLECTIVITY),sv=G(L,L.ROUGHNESS),iv=G(L,L.METALNESS),nv=G(L,L.NORMAL),rv=G(L,L.CLEARCOAT),ov=G(L,L.CLEARCOAT_ROUGHNESS),av=G(L,L.CLEARCOAT_NORMAL),cv=G(L,L.ROTATION),lv=G(L,L.SHEEN),uv=G(L,L.SHEEN_ROUGHNESS),hv=G(L,L.ANISOTROPY),dv=G(L,L.IRIDESCENCE),pv=G(L,L.IRIDESCENCE_IOR),fv=G(L,L.IRIDESCENCE_THICKNESS),mv=G(L,L.TRANSMISSION),gv=G(L,L.THICKNESS),yv=G(L,L.IOR),xv=G(L,L.ATTENUATION_DISTANCE),bv=G(L,L.ATTENUATION_COLOR),_v=G(L,L.LINE_SCALE),Tv=G(L,L.LINE_DASH_SIZE),Sv=G(L,L.LINE_GAP_SIZE),CA=G(L,L.LINE_WIDTH),vv=G(L,L.LINE_DASH_OFFSET),wv=G(L,L.POINT_SIZE),Mv=G(L,L.DISPERSION),qx=G(L,L.LIGHT_MAP),Av=G(L,L.AO),lo=j(new re).onReference(function(o){return o.material}).onRenderUpdate(function({material:o}){this.value.set(o.anisotropy*Math.cos(o.anisotropyRotation),o.anisotropy*Math.sin(o.anisotropyRotation))}),Nv=A(o=>o.context.setupModelViewProjection(),"vec4").once()().toVarying("v_modelViewProjection"),am=class extends Vi{static get type(){return"StorageArrayElementNode"}constructor(e,t){super(e,t),this.isStorageArrayElementNode=!0}set storageBufferNode(e){this.node=e}get storageBufferNode(){return this.node}getMemberType(e,t){let s=this.storageBufferNode.structTypeNode;return s?s.getMemberType(e,t):"void"}setup(e){return e.isAvailable("storageBuffer")===!1&&this.node.isPBO===!0&&e.setupPBO(this.node),super.setup(e)}generate(e,t){let s,i=e.context.assign;if(e.isAvailable("storageBuffer")===!1?this.node.isPBO===!0&&i!==!0&&(this.node.value.isInstancedBufferAttribute||e.shaderStage!=="compute")?s=e.generatePBO(this):s=this.node.build(e):s=super.generate(e),i!==!0){let n=this.getNodeType(e);s=e.format(s,n,t)}return s}},EA=oe(am).setParameterLength(2),cm=class extends gc{static get type(){return"StorageBufferNode"}constructor(e,t=null,s=0){let i,n=null;t&&t.isStruct?(i="struct",n=t.layout,(e.isStorageBufferAttribute||e.isStorageInstancedBufferAttribute)&&(s=e.count)):t===null&&(e.isStorageBufferAttribute||e.isStorageInstancedBufferAttribute)?(i=Y_(e.itemSize),s=e.count):i=t,super(e,i,s),this.isStorageBufferNode=!0,this.structTypeNode=n,this.access=dt.READ_WRITE,this.isAtomic=!1,this.isPBO=!1,this._attribute=null,this._varying=null,this.global=!0,e.isStorageBufferAttribute!==!0&&e.isStorageInstancedBufferAttribute!==!0&&(e.isInstancedBufferAttribute?e.isStorageInstancedBufferAttribute=!0:e.isStorageBufferAttribute=!0)}getHash(e){if(this.bufferCount===0){let t=e.globalCache.getData(this.value);return t===void 0&&(t={node:this},e.globalCache.setData(this.value,t)),t.node.uuid}return this.uuid}getInputType(){return this.value.isIndirectStorageBufferAttribute?"indirectStorageBuffer":"storageBuffer"}element(e){return EA(this,e)}setPBO(e){return this.isPBO=e,this}getPBO(){return this.isPBO}setAccess(e){return this.access=e,this}toReadOnly(){return this.setAccess(dt.READ_ONLY)}setAtomic(e){return this.isAtomic=e,this}toAtomic(){return this.setAtomic(!0)}getAttributeData(){return this._attribute===null&&(this._attribute=Bx(this.value),this._varying=Sn(this._attribute)),{attribute:this._attribute,varying:this._varying}}getNodeType(e){if(this.structTypeNode!==null)return this.structTypeNode.getNodeType(e);if(e.isAvailable("storageBuffer")||e.isAvailable("indirectStorageBuffer"))return super.getNodeType(e);let{attribute:t}=this.getAttributeData();return t.getNodeType(e)}getMemberType(e,t){return this.structTypeNode!==null?this.structTypeNode.getMemberType(e,t):"void"}generate(e){if(this.structTypeNode!==null&&this.structTypeNode.build(e),e.isAvailable("storageBuffer")||e.isAvailable("indirectStorageBuffer"))return super.generate(e);let{attribute:t,varying:s}=this.getAttributeData(),i=s.build(e);return e.registerTransform(i,t),i}},xn=(o,e=null,t=0)=>new cm(o,e,t),Ke=class o extends H{static get type(){return"IndexNode"}constructor(e){super("uint"),this.scope=e,this.isIndexNode=!0}generate(e){let t=this.getNodeType(e),s=this.scope,i;if(s===o.VERTEX)i=e.getVertexIndex();else if(s===o.INSTANCE)i=e.getInstanceIndex();else if(s===o.DRAW)i=e.getDrawIndex();else if(s===o.INVOCATION_LOCAL)i=e.getInvocationLocalIndex();else if(s===o.INVOCATION_SUBGROUP)i=e.getInvocationSubgroupIndex();else if(s===o.SUBGROUP)i=e.getSubgroupIndex();else throw new Error("THREE.IndexNode: Unknown scope: "+s);let n;return e.shaderStage==="vertex"||e.shaderStage==="compute"?n=i:n=Sn(this).build(e,t),n}};Ke.VERTEX="vertex";Ke.INSTANCE="instance";Ke.SUBGROUP="subgroup";Ke.INVOCATION_LOCAL="invocationLocal";Ke.INVOCATION_SUBGROUP="invocationSubgroup";Ke.DRAW="draw";var Rv=G(Ke,Ke.VERTEX),ui=G(Ke,Ke.INSTANCE),BA=G(Ke,Ke.SUBGROUP),FA=G(Ke,Ke.INVOCATION_SUBGROUP),IA=G(Ke,Ke.INVOCATION_LOCAL),Cv=G(Ke,Ke.DRAW),ph=class extends H{static get type(){return"InstanceNode"}constructor(e,t,s=null){super("void"),this.count=e,this.instanceMatrix=t,this.instanceColor=s,this.instanceMatrixNode=null,this.instanceColorNode=null,this.updateType=te.FRAME,this.buffer=null,this.bufferColor=null,this.previousInstanceMatrixNode=null}get isStorageMatrix(){let{instanceMatrix:e}=this;return e&&e.isStorageInstancedBufferAttribute===!0}get isStorageColor(){let{instanceColor:e}=this;return e&&e.isStorageInstancedBufferAttribute===!0}setup(e){let{instanceMatrixNode:t,instanceColorNode:s}=this;t===null&&(t=this._createInstanceMatrixNode(!0,e),this.instanceMatrixNode=t);let{instanceColor:i,isStorageColor:n}=this;if(i&&s===null){if(n)s=xn(i,"vec3",Math.max(i.count,1)).element(ui);else{let a=new Ai(i.array,3),c=i.usage===Qr?Df:ch;this.bufferColor=a,s=v(c(a,"vec3",3,0))}this.instanceColorNode=s}let r=t.mul(Ve).xyz;if(Ve.assign(r),e.needsPreviousData()&&_o.assign(this.getPreviousInstancedPosition(e)),e.hasGeometryAttribute("normal")){let a=BS(zt,t);zt.assign(a)}this.instanceColorNode!==null&&fc("vec3","vInstanceColor").assign(this.instanceColorNode)}update(e){this.buffer!==null&&this.isStorageMatrix!==!0&&(this.buffer.clearUpdateRanges(),this.buffer.updateRanges.push(...this.instanceMatrix.updateRanges),this.instanceMatrix.version!==this.buffer.version&&(this.buffer.version=this.instanceMatrix.version)),this.instanceColor&&this.bufferColor!==null&&this.isStorageColor!==!0&&(this.bufferColor.clearUpdateRanges(),this.bufferColor.updateRanges.push(...this.instanceColor.updateRanges),this.instanceColor.version!==this.bufferColor.version&&(this.bufferColor.version=this.instanceColor.version)),this.previousInstanceMatrixNode!==null&&e.object.previousInstanceMatrix.array.set(this.instanceMatrix.array)}getPreviousInstancedPosition(e){let t=e.object;return this.previousInstanceMatrixNode===null&&(t.previousInstanceMatrix=this.instanceMatrix.clone(),this.previousInstanceMatrixNode=this._createInstanceMatrixNode(!1,e)),this.previousInstanceMatrixNode.mul(_o).xyz}_createInstanceMatrixNode(e,t){let s,{instanceMatrix:i}=this,{count:n}=i;if(this.isStorageMatrix)s=xn(i,"mat4",Math.max(n,1)).element(ui);else if(n*16*4<=t.getUniformBufferLimit())s=Fc(i.array,"mat4",Math.max(n,1)).element(ui);else{let a=new Kl(i.array,16,1);e===!0&&(this.buffer=a);let c=i.usage===Qr?Df:ch,l=[c(a,"vec4",16,0),c(a,"vec4",16,4),c(a,"vec4",16,8),c(a,"vec4",16,12)];s=gn(...l)}return s}},PA=oe(ph).setParameterLength(2,3),lm=class extends ph{static get type(){return"InstancedMeshNode"}constructor(e){let{count:t,instanceMatrix:s,instanceColor:i}=e;super(t,s,i),this.instancedMesh=e}},Ev=oe(lm).setParameterLength(1),um=class extends H{static get type(){return"BatchNode"}constructor(e){super("void"),this.batchMesh=e,this.batchingIdNode=null}setup(e){this.batchingIdNode===null&&(e.getDrawIndex()===null?this.batchingIdNode=ui:this.batchingIdNode=Cv);let s=A(([m])=>{let g=T(yn(Ge(this.batchMesh._indirectTexture),0).x).toConst(),y=T(m).mod(g).toConst(),x=T(m).div(g).toConst();return Ge(this.batchMesh._indirectTexture,Qe(y,x)).x}).setLayout({name:"getIndirectIndex",type:"uint",inputs:[{name:"id",type:"int"}]})(T(this.batchingIdNode)),i=this.batchMesh._matricesTexture,n=T(yn(Ge(i),0).x).toConst(),r=b(s).mul(4).toInt().toConst(),a=r.mod(n).toConst(),c=r.div(n).toConst(),l=gn(Ge(i,Qe(a,c)),Ge(i,Qe(a.add(1),c)),Ge(i,Qe(a.add(2),c)),Ge(i,Qe(a.add(3),c))),u=this.batchMesh._colorsTexture;if(u!==null){let g=A(([y])=>{let x=T(yn(Ge(u),0).x).toConst(),_=y,w=_.mod(x).toConst(),S=_.div(x).toConst();return Ge(u,Qe(w,S)).rgb}).setLayout({name:"getBatchingColor",type:"vec3",inputs:[{name:"id",type:"int"}]})(s);fc("vec3","vBatchColor").assign(g)}let h=at(l);Ve.assign(l.mul(Ve));let d=zt.div(v(h[0].dot(h[0]),h[1].dot(h[1]),h[2].dot(h[2]))),p=h.mul(d).xyz;zt.assign(p),e.hasGeometryAttribute("tangent")&&vo.mulAssign(h)}},Bv=oe(um).setParameterLength(1),zb=new WeakMap,fh=class extends H{static get type(){return"SkinningNode"}constructor(e){super("void"),this.skinnedMesh=e,this.updateType=te.OBJECT,this.skinIndexNode=zi("skinIndex","uvec4"),this.skinWeightNode=zi("skinWeight","vec4"),this.bindMatrixNode=Ie("bindMatrix","mat4"),this.bindMatrixInverseNode=Ie("bindMatrixInverse","mat4"),this.boneMatricesNode=Qf("skeleton.boneMatrices","mat4",e.skeleton.bones.length),this.positionNode=Ve,this.toPositionNode=Ve,this.previousBoneMatricesNode=null}getSkinnedPosition(e=this.boneMatricesNode,t=this.positionNode){let{skinIndexNode:s,skinWeightNode:i,bindMatrixNode:n,bindMatrixInverseNode:r}=this,a=e.element(s.x),c=e.element(s.y),l=e.element(s.z),u=e.element(s.w),h=n.mul(t),d=Ye(a.mul(i.x).mul(h),c.mul(i.y).mul(h),l.mul(i.z).mul(h),u.mul(i.w).mul(h));return r.mul(d).xyz}getSkinnedNormalAndTangent(e=this.boneMatricesNode,t=zt,s=vo){let{skinIndexNode:i,skinWeightNode:n,bindMatrixNode:r,bindMatrixInverseNode:a}=this,c=e.element(i.x),l=e.element(i.y),u=e.element(i.z),h=e.element(i.w),d=Ye(n.x.mul(c),n.y.mul(l),n.z.mul(u),n.w.mul(h));d=a.mul(d).mul(r);let p=d.transformDirection(t).xyz,m=d.transformDirection(s).xyz;return{skinNormal:p,skinTangent:m}}getPreviousSkinnedPosition(e){let t=e.object;return this.previousBoneMatricesNode===null&&(t.skeleton.previousBoneMatrices=new Float32Array(t.skeleton.boneMatrices),this.previousBoneMatricesNode=Qf("skeleton.previousBoneMatrices","mat4",t.skeleton.bones.length)),this.getSkinnedPosition(this.previousBoneMatricesNode,_o)}setup(e){e.needsPreviousData()&&_o.assign(this.getPreviousSkinnedPosition(e));let t=this.getSkinnedPosition();if(this.toPositionNode&&this.toPositionNode.assign(t),e.hasGeometryAttribute("normal")){let{skinNormal:s,skinTangent:i}=this.getSkinnedNormalAndTangent();zt.assign(s),e.hasGeometryAttribute("tangent")&&vo.assign(i)}return t}generate(e,t){if(t!=="void")return super.generate(e,t)}update(e){let t=e.object&&e.object.skeleton?e.object.skeleton:this.skinnedMesh.skeleton;zb.get(t)!==e.frameId&&(zb.set(t,e.frameId),this.previousBoneMatricesNode!==null&&(t.previousBoneMatrices===null&&(t.previousBoneMatrices=new Float32Array(t.boneMatrices)),t.previousBoneMatrices.set(t.boneMatrices)),t.update())}},Fv=o=>new fh(o),DA=(o,e=null)=>{let t=new fh(o);return t.positionNode=xn(new Ai(o.geometry.getAttribute("position").array,3),"vec3").setPBO(!0).toReadOnly().element(ui).toVar(),t.skinIndexNode=xn(new Ai(new Uint32Array(o.geometry.getAttribute("skinIndex").array),4),"uvec4").setPBO(!0).toReadOnly().element(ui).toVar(),t.skinWeightNode=xn(new Ai(o.geometry.getAttribute("skinWeight").array,4),"vec4").setPBO(!0).toReadOnly().element(ui).toVar(),t.bindMatrixNode=j(o.bindMatrix,"mat4"),t.bindMatrixInverseNode=j(o.bindMatrixInverse,"mat4"),t.boneMatricesNode=Fc(o.skeleton.boneMatrices,"mat4",o.skeleton.bones.length),t.toPositionNode=e,q(t)},hm=class extends H{static get type(){return"LoopNode"}constructor(e=[]){super("void"),this.params=e}getVarName(e){return String.fromCharCode(105+e)}getProperties(e){let t=e.getNodeProperties(this);if(t.stackNode!==void 0)return t;let s={};for(let a=0,c=this.params.length-1;aNumber(h)?m=">=":m="<"));let y;if(l)y=`while ( ${h} )`;else{let x={start:u,end:h},_=x.start,w=x.end,S,E=()=>m.includes("<")?"+=":"-=";if(g!=null)switch(typeof g){case"function":S=e.flowStagesNode(t.updateNode,"void").code.replace(/\t|;/g,"");break;case"number":S=d+" "+E()+" "+e.generateConst(p,g);break;case"string":S=d+" "+g;break;default:g.isNode?S=d+" "+E()+" "+g.build(e):(O("TSL: 'Loop( { update: ... } )' is not a function, string or number.",this.stackTrace),S="break /* invalid update */")}else p==="int"||p==="uint"?g=m.includes("<")?"++":"--":g=E()+" 1.",S=d+" "+g;let B=e.getVar(p,d)+" = "+_,N=d+" "+m+" "+w;y=`for ( ${B}; ${N}; ${S} )`}e.addFlowCode((r===0?` +`:"")+e.tab+y+` { + +`).addFlowTab()}let n=i.build(e,"void");t.returnsNode.build(e,"void"),e.removeFlowTab().addFlowCode(` +`+e.tab+n);for(let r=0,a=this.params.length-1;rnew hm(or(o,"int")).toStack(),LA=()=>ts("continue").toStack(),Iv=()=>ts("break").toStack(),kp=new WeakMap,Qt=new Te,Gb=A(({bufferMap:o,influence:e,stride:t,width:s,depth:i,offset:n})=>{let r=T(Rv).mul(t).add(n),a=r.div(s),c=r.sub(a.mul(s));return Ge(o,Qe(c,a)).depth(i).xyz.mul(e)});function UA(o){let e=o.morphAttributes.position!==void 0,t=o.morphAttributes.normal!==void 0,s=o.morphAttributes.color!==void 0,i=o.morphAttributes.position||o.morphAttributes.normal||o.morphAttributes.color,n=i!==void 0?i.length:0,r=kp.get(o);if(r===void 0||r.count!==n){let x=function(){g.dispose(),kp.delete(o),o.removeEventListener("dispose",x)};r!==void 0&&r.texture.dispose();let a=o.morphAttributes.position||[],c=o.morphAttributes.normal||[],l=o.morphAttributes.color||[],u=0;e===!0&&(u=1),t===!0&&(u=2),s===!0&&(u=3);let h=o.attributes.position.count*u,d=1,p=4096;h>p&&(d=Math.ceil(h/p),h=p);let m=new Float32Array(h*d*4*n),g=new ml(m,h,d,n);g.type=Ct,g.needsUpdate=!0;let y=u*4;for(let _=0;_{let d=b(0).toVar();this.mesh.count>1&&this.mesh.morphTexture!==null&&this.mesh.morphTexture!==void 0?d.assign(Ge(this.mesh.morphTexture,Qe(T(h).add(1),T(ui))).r):d.assign(Ie("morphTargetInfluences","float").element(h).toVar()),K(d.notEqual(0),()=>{s===!0&&Ve.addAssign(Gb({bufferMap:a,influence:d,stride:c,width:u,depth:h,offset:T(0)})),i===!0&&zt.addAssign(Gb({bufferMap:a,influence:d,stride:c,width:u,depth:h,offset:T(1)}))})})}update(){let e=this.morphBaseInfluence;this.mesh.geometry.morphTargetsRelative?e.value=1:e.value=1-this.mesh.morphTargetInfluences.reduce((t,s)=>t+s,0)}},Pv=oe(dm).setParameterLength(1),Tn=class extends H{static get type(){return"LightingNode"}constructor(){super("vec3"),this.isLightingNode=!0}},pm=class extends Tn{static get type(){return"AONode"}constructor(e=null){super(),this.aoNode=e}setup(e){e.context.ambientOcclusion.mulAssign(this.aoNode)}},fm=class extends oh{static get type(){return"LightingContextNode"}constructor(e,t=null,s=null,i=null){super(e),this.lightingModel=t,this.backdropNode=s,this.backdropAlphaNode=i,this._value=null}getContext(){let{backdropNode:e,backdropAlphaNode:t}=this,s=v().toVar("directDiffuse"),i=v().toVar("directSpecular"),n=v().toVar("indirectDiffuse"),r=v().toVar("indirectSpecular"),a={directDiffuse:s,directSpecular:i,indirectDiffuse:n,indirectSpecular:r};return{radiance:v().toVar("radiance"),irradiance:v().toVar("irradiance"),iblIrradiance:v().toVar("iblIrradiance"),ambientOcclusion:b(1).toVar("ambientOcclusion"),reflectedLight:a,backdrop:e,backdropAlpha:t}}setup(e){return this.value=this._value||(this._value=this.getContext()),this.value.lightingModel=this.lightingModel||e.context.lightingModel,super.setup(e)}},Dv=oe(fm),mm=class extends Tn{static get type(){return"IrradianceNode"}constructor(e){super(),this.node=e}setup(e){e.context.irradiance.addAssign(this.node)}},eo=new re,wo=class extends ps{static get type(){return"ViewportTextureNode"}constructor(e=ci,t=null,s=null){let i=null;s===null?(i=new Or,i.minFilter=Ci,s=i):i=s,super(s,e,t),this.generateMipmaps=!1,this.defaultFramebuffer=i,this.isOutputTextureNode=!0,this.updateBeforeType=te.RENDER,this._cacheTextures=new WeakMap}getTextureForReference(e=null){let t,s;if(this.referenceNode?(t=this.referenceNode.defaultFramebuffer,s=this.referenceNode._cacheTextures):(t=this.defaultFramebuffer,s=this._cacheTextures),e===null)return t;if(s.has(e)===!1){let i=t.clone();s.set(e,i)}return s.get(e)}updateReference(e){let t=e.renderer.getRenderTarget();return this.value=this.getTextureForReference(t),this.value}updateBefore(e){let t=e.renderer,s=t.getRenderTarget();s===null?t.getDrawingBufferSize(eo):eo.set(s.width,s.height);let i=this.getTextureForReference(s);(i.image.width!==eo.width||i.image.height!==eo.height)&&(i.image.width=eo.width,i.image.height=eo.height,i.needsUpdate=!0);let n=i.generateMipmaps;i.generateMipmaps=this.generateMipmaps,t.copyFramebufferToTexture(i),i.generateMipmaps=n}clone(){let e=new this.constructor(this.uvNode,this.levelNode,this.value);return e.generateMipmaps=this.generateMipmaps,e}},OA=oe(wo).setParameterLength(0,3),Hx=oe(wo,null,null,{generateMipmaps:!0}).setParameterLength(0,3),VA=Hx(),Lv=(o=ci,e=null)=>VA.sample(o,e),Su=null,gm=class extends wo{static get type(){return"ViewportDepthTextureNode"}constructor(e=ci,t=null){Su===null&&(Su=new Rt),super(e,t,Su)}getTextureForReference(){return Su}},Xx=oe(gm).setParameterLength(0,2),Is=class o extends H{static get type(){return"ViewportDepthNode"}constructor(e,t=null){super("float"),this.scope=e,this.valueNode=t,this.isViewportDepthNode=!0}generate(e){let{scope:t}=this;return t===o.DEPTH_BASE?e.getFragDepth():super.generate(e)}setup({camera:e}){let{scope:t}=this,s=this.valueNode,i=null;if(t===o.DEPTH_BASE)s!==null&&(i=Ov().assign(s));else if(t===o.DEPTH)e.isPerspectiveCamera?i=Yx(qe.z,un,hn):i=xo(qe.z,un,hn);else if(t===o.LINEAR_DEPTH)if(s!==null)if(e.isPerspectiveCamera){let n=jx(s,un,hn);i=xo(n,un,hn)}else i=s;else i=xo(qe.z,un,hn);return i}};Is.DEPTH_BASE="depthBase";Is.DEPTH="depth";Is.LINEAR_DEPTH="linearDepth";var xo=(o,e,t)=>o.add(e).div(e.sub(t)),kA=(o,e,t)=>o.add(t).div(t.sub(e)),zA=A(([o,e,t],s)=>s.renderer.reversedDepthBuffer===!0?t.sub(e).mul(o).sub(t):e.sub(t).mul(o).sub(e)),Yx=(o,e,t)=>e.add(o).mul(t).div(t.sub(e).mul(o)),Uv=(o,e,t)=>e.mul(o.add(t)).div(o.mul(e.sub(t))),jx=A(([o,e,t],s)=>s.renderer.reversedDepthBuffer===!0?e.mul(t).div(e.sub(t).mul(o).sub(e)):e.mul(t).div(t.sub(e).mul(o).sub(t))),Zx=(o,e,t)=>{e=e.max(1e-6).toVar();let s=ri(o.negate().div(e)),i=ri(t.div(e));return s.div(i)},GA=(o,e,t)=>{let s=o.mul(cd(t.div(e)));return b(Math.E).pow(s).mul(e).negate()},Ov=oe(Is,Is.DEPTH_BASE),Jx=G(Is,Is.DEPTH),mh=oe(Is,Is.LINEAR_DEPTH).setParameterLength(0,1),WA=mh(Xx());Jx.assign=o=>Ov(o);var di=class o extends H{static get type(){return"ClippingNode"}constructor(e=o.DEFAULT){super(),this.scope=e}setup(e){super.setup(e);let t=e.clippingContext,{intersectionPlanes:s,unionPlanes:i}=t;return this.hardwareClipping=e.material.hardwareClipping,this.scope===o.ALPHA_TO_COVERAGE?this.setupAlphaToCoverage(s,i):this.scope===o.HARDWARE?this.setupHardwareClipping(i,e):this.setupDefault(s,i)}setupAlphaToCoverage(e,t){return A(()=>{let s=b().toVar("distanceToPlane"),i=b().toVar("distanceToGradient"),n=b(1).toVar("clipOpacity"),r=t.length;if(this.hardwareClipping===!1&&r>0){let c=St(t).setGroup(J);Me(r,({i:l})=>{let u=c.element(l);s.assign(qe.dot(u.xyz).negate().add(u.w)),i.assign(s.fwidth().div(2)),n.mulAssign(Fs(i.negate(),i,s))})}let a=e.length;if(a>0){let c=St(e).setGroup(J),l=b(1).toVar("intersectionClipOpacity");Me(a,({i:u})=>{let h=c.element(u);s.assign(qe.dot(h.xyz).negate().add(h.w)),i.assign(s.fwidth().div(2)),l.mulAssign(Fs(i.negate(),i,s).oneMinus())}),n.mulAssign(l.oneMinus())}we.a.mulAssign(n),we.a.equal(0).discard()})()}setupDefault(e,t){return A(()=>{let s=t.length;if(this.hardwareClipping===!1&&s>0){let n=St(t).setGroup(J);Me(s,({i:r})=>{let a=n.element(r);qe.dot(a.xyz).greaterThan(a.w).discard()})}let i=e.length;if(i>0){let n=St(e).setGroup(J),r=hs(!0).toVar("clipped");Me(i,({i:a})=>{let c=n.element(a);r.assign(qe.dot(c.xyz).greaterThan(c.w).and(r))}),r.discard()}})()}setupHardwareClipping(e,t){let s=e.length;return t.enableHardwareClipping(s),A(()=>{let i=St(e).setGroup(J),n=qi(t.getClipDistance());Me(s,({i:r})=>{let a=i.element(r),c=qe.dot(a.xyz).sub(a.w).negate();n.element(r).assign(c)})})()}};di.ALPHA_TO_COVERAGE="alphaToCoverage";di.DEFAULT="default";di.HARDWARE="hardware";var $A=()=>new di,qA=()=>new di(di.ALPHA_TO_COVERAGE),HA=()=>new di(di.HARDWARE),XA=.05,Wb=A(([o])=>Es(se(1e4,Bt(se(17,o.x).add(se(.1,o.y)))).mul(Ye(.1,Ee(Bt(se(13,o.y).add(o.x))))))),$b=A(([o])=>Wb(U(Wb(o.xy),o.z))),YA=A(([o])=>{let e=ze(ai(bx(o.xyz)),ai(_x(o.xyz))),t=b(1).div(b(XA).mul(e)).toVar("pixScale"),s=U(bo(oi(ri(t))),bo(ld(ri(t)))),i=U($b(oi(s.x.mul(o.xyz))),$b(oi(s.y.mul(o.xyz)))),n=Es(ri(t)),r=Ye(se(n.oneMinus(),i.x),se(n,i.y)),a=Vt(n,n.oneMinus()),c=v(r.mul(r).div(se(2,a).mul(he(1,a))),r.sub(se(.5,a)).div(he(1,a)),he(1,he(1,r).mul(he(1,r)).div(se(2,a).mul(he(1,a))))),l=r.lessThan(a.oneMinus()).select(r.lessThan(a).select(c.x,c.y),c.z);return Bs(l,1e-6,1)}).setLayout({name:"getAlphaHashThreshold",type:"float",inputs:[{name:"position",type:"vec3"}]}),ym=class extends hh{static get type(){return"VertexColorNode"}constructor(e){super(null,"vec4"),this.isVertexColorNode=!0,this.index=e}getAttributeName(){let e=this.index;return"color"+(e>0?e:"")}generate(e){let t=this.getAttributeName(e),s=e.hasGeometryAttribute(t),i;return s===!0?i=super.generate(e):i=e.generateConst(this.nodeType,new Te(1,1,1,1)),i}serialize(e){super.serialize(e),e.index=this.index}deserialize(e){super.deserialize(e),this.index=e.index}},Vv=(o=0)=>new ym(o),jA=A(([o,e])=>Vt(1,o.oneMinus().div(e)).oneMinus()).setLayout({name:"blendBurn",type:"vec3",inputs:[{name:"base",type:"vec3"},{name:"blend",type:"vec3"}]}),ZA=A(([o,e])=>Vt(o.div(e.oneMinus()),1)).setLayout({name:"blendDodge",type:"vec3",inputs:[{name:"base",type:"vec3"},{name:"blend",type:"vec3"}]}),JA=A(([o,e])=>o.oneMinus().mul(e.oneMinus()).oneMinus()).setLayout({name:"blendScreen",type:"vec3",inputs:[{name:"base",type:"vec3"},{name:"blend",type:"vec3"}]}),QA=A(([o,e])=>le(o.mul(2).mul(e),o.oneMinus().mul(2).mul(e.oneMinus()).oneMinus(),ur(.5,o))).setLayout({name:"blendOverlay",type:"vec3",inputs:[{name:"base",type:"vec3"},{name:"blend",type:"vec3"}]}),KA=A(([o,e])=>{let t=e.a.add(o.a.mul(e.a.oneMinus()));return Z(e.rgb.mul(e.a).add(o.rgb.mul(o.a).mul(e.a.oneMinus())).div(t),t)}).setLayout({name:"blendColor",type:"vec4",inputs:[{name:"base",type:"vec4"},{name:"blend",type:"vec4"}]}),kv=A(([o])=>Z(o.rgb.mul(o.a),o.a),{color:"vec4",return:"vec4"}),eN=A(([o])=>(K(o.a.equal(0),()=>Z(0)),Z(o.rgb.div(o.a),o.a)),{color:"vec4",return:"vec4"}),Ne=class extends _t{static get type(){return"NodeMaterial"}get type(){return this.constructor.type}set type(e){}constructor(){super(),this.isNodeMaterial=!0,this.fog=!0,this.lights=!1,this.hardwareClipping=!1,this.lightsNode=null,this.envNode=null,this.aoNode=null,this.colorNode=null,this.normalNode=null,this.opacityNode=null,this.backdropNode=null,this.backdropAlphaNode=null,this.alphaTestNode=null,this.maskNode=null,this.maskShadowNode=null,this.positionNode=null,this.geometryNode=null,this.depthNode=null,this.receivedShadowPositionNode=null,this.castShadowPositionNode=null,this.receivedShadowNode=null,this.castShadowNode=null,this.outputNode=null,this.mrtNode=null,this.fragmentNode=null,this.vertexNode=null,this.contextNode=null}_getNodeChildren(){let e=[];for(let t of Object.getOwnPropertyNames(this)){if(t.startsWith("_")===!0)continue;let s=this[t];s&&s.isNode===!0&&e.push({property:t,childNode:s})}return e}customProgramCacheKey(){let e=[];for(let{property:t,childNode:s}of this._getNodeChildren())e.push(Ro(t.slice(0,-4)),s.getCacheKey());return this.type+Ec(e)}build(e){this.setup(e)}setupObserver(e){return new ff(e)}setup(e){e.context.setupNormal=()=>cr(this.setupNormal(e),"NORMAL","vec3"),e.context.setupPositionView=()=>this.setupPositionView(e),e.context.setupModelViewProjection=()=>this.setupModelViewProjection(e);let t=e.renderer,s=t.getRenderTarget();t.contextNode.isContextNode===!0?e.context={...e.context,...t.contextNode.getFlowContextData()}:O('NodeMaterial: "renderer.contextNode" must be an instance of `context()`.'),this.contextNode!==null&&(this.contextNode.isContextNode===!0?e.context={...e.context,...this.contextNode.getFlowContextData()}:O('NodeMaterial: "material.contextNode" must be an instance of `context()`.')),e.addStack();let i=this.setupVertex(e),n=cr(this.vertexNode||i,"VERTEX");e.context.clipSpace=n,e.stack.outputNode=n,this.setupHardwareClipping(e),this.geometryNode!==null&&(e.stack.outputNode=e.stack.outputNode.bypass(this.geometryNode)),e.addFlow("vertex",e.removeStack()),e.addStack();let r,a=this.setupClipping(e);if((this.depthWrite===!0||this.depthTest===!0)&&(s!==null?s.depthBuffer===!0&&this.setupDepth(e):t.depth===!0&&this.setupDepth(e)),this.fragmentNode===null){this.setupDiffuseColor(e),this.setupVariants(e);let c=this.setupLighting(e);a!==null&&e.stack.addToStack(a);let l=Z(c,we.a).max(0);r=this.setupOutput(e,l),fo.assign(r);let u=this.outputNode!==null;if(u&&(r=this.outputNode),e.context.getOutput&&(r=e.context.getOutput(r,e)),s!==null){let h=t.getMRT(),d=this.mrtNode;h!==null?(u&&fo.assign(r),r=h,d!==null&&(r=h.merge(d))):d!==null&&(r=d)}}else{let c=this.fragmentNode;c.isOutputStructNode!==!0&&(c=Z(c)),r=this.setupOutput(e,c)}e.stack.outputNode=r,e.addFlow("fragment",e.removeStack()),e.observer=this.setupObserver(e)}setupClipping(e){if(e.clippingContext===null)return null;let{unionPlanes:t,intersectionPlanes:s}=e.clippingContext,i=null;if(t.length>0||s.length>0){let n=e.renderer.currentSamples;this.alphaToCoverage&&n>1?i=qA():e.stack.addToStack($A())}return i}setupHardwareClipping(e){if(this.hardwareClipping=!1,e.clippingContext===null)return;let t=e.clippingContext.unionPlanes.length;t>0&&t<=8&&e.isAvailable("clipDistance")&&(e.stack.addToStack(HA()),this.hardwareClipping=!0)}setupDepth(e){let{renderer:t,camera:s}=e,i=this.depthNode;if(i===null){let n=t.getMRT();n&&n.has("depth")?i=n.get("depth"):t.logarithmicDepthBuffer===!0&&(s.isPerspectiveCamera?i=Zx(qe.z,un,hn):i=xo(qe.z,un,hn))}i!==null&&Jx.assign(i).toStack()}setupPositionView(){return wn.mul(Ve).xyz}setupModelViewProjection(){return Oi.mul(qe)}setupVertex(e){return e.addStack(),this.setupPosition(e),e.context.position=e.removeStack(),Nv}setupPosition(e){let{object:t,geometry:s}=e;if((s.morphAttributes.position||s.morphAttributes.normal||s.morphAttributes.color)&&Pv(t).toStack(),t.isSkinnedMesh===!0&&Fv(t).toStack(),this.displacementMap){let i=Di("displacementMap","texture"),n=Di("displacementScale","float"),r=Di("displacementBias","float");Ve.addAssign(zt.normalize().mul(i.x.mul(n).add(r)))}return t.isBatchedMesh&&Bv(t).toStack(),t.isInstancedMesh&&t.instanceMatrix&&t.instanceMatrix.isInstancedBufferAttribute===!0&&Ev(t).toStack(),this.positionNode!==null&&Ve.assign(cr(this.positionNode,"POSITION","vec3")),Ve}setupDiffuseColor(e){let{object:t,geometry:s}=e;this.maskNode!==null&&hs(this.maskNode).not().discard();let i=this.colorNode?Z(this.colorNode):JS;this.vertexColors===!0&&s.hasAttribute("color")&&(i=i.mul(Vv())),t.instanceColor&&(i=fc("vec3","vInstanceColor").mul(i)),t.isBatchedMesh&&t._colorsTexture&&(i=fc("vec3","vBatchColor").mul(i)),we.assign(i);let n=this.opacityNode?b(this.opacityNode):$x;we.a.assign(we.a.mul(n));let r=null;(this.alphaTestNode!==null||this.alphaTest>0)&&(r=this.alphaTestNode!==null?b(this.alphaTestNode):ZS,this.alphaToCoverage===!0?(we.a=Fs(r,r.add(Sx(we.a)),we.a),we.a.lessThanEqual(0).discard()):we.a.lessThanEqual(r).discard()),this.alphaHash===!0&&we.a.lessThan(YA(Ve)).discard(),e.isOpaque()&&we.a.assign(1)}setupVariants(){}setupOutgoingLight(){return this.lights===!0?v(0):we.rgb}setupNormal(){return this.normalNode?v(this.normalNode):nv}setupEnvironment(){let e=null;return this.envNode?e=this.envNode:this.envMap&&(e=this.envMap.isCubeTexture?Di("envMap","cubeTexture"):Di("envMap","texture")),e}setupLightMap(e){let t=null;return e.material.lightMap&&(t=new mm(qx)),t}setupLights(e){let t=[],s=this.setupEnvironment(e);s&&s.isLightingNode&&t.push(s);let i=this.setupLightMap(e);i&&i.isLightingNode&&t.push(i);let n=this.aoNode;n===null&&e.material.aoMap&&(n=Av),e.context.getAO&&(n=e.context.getAO(n,e)),n&&t.push(new pm(n));let r=this.lightsNode||e.lightsNode;return t.length>0&&(r=e.renderer.lighting.createNode([...r.getLights(),...t])),r}setupLightingModel(){}setupLighting(e){let{material:t}=e,{backdropNode:s,backdropAlphaNode:i,emissiveNode:n}=this,a=this.lights===!0||this.lightsNode!==null?this.setupLights(e):null,c=this.setupOutgoingLight(e);if(a&&a.getScope().hasLights){let l=this.setupLightingModel(e)||null;c=Dv(a,l,s,i)}else s!==null&&(c=v(i!==null?le(c,s,i):s));return(n&&n.isNode===!0||t.emissive&&t.emissive.isColor===!0)&&(Af.assign(v(n||KS)),c=c.add(Af)),c}setupFog(e,t){let s=e.fogNode;return s&&(fo.assign(t),t=Z(s.toVar())),t}setupPremultipliedAlpha(e,t){return kv(t)}setupOutput(e,t){return this.fog===!0&&(t=this.setupFog(e,t)),this.premultipliedAlpha===!0&&(t=this.setupPremultipliedAlpha(e,t)),t}setDefaultValues(e){for(let s in e){let i=e[s];this[s]===void 0&&(this[s]=i,i&&i.clone&&(this[s]=i.clone()))}let t=Object.getOwnPropertyDescriptors(e.constructor.prototype);for(let s in t)Object.getOwnPropertyDescriptor(this.constructor.prototype,s)===void 0&&t[s].get!==void 0&&Object.defineProperty(this.constructor.prototype,s,t[s])}toJSON(e){let t=e===void 0||typeof e=="string";t&&(e={textures:{},images:{},nodes:{}});let s=_t.prototype.toJSON.call(this,e);s.inputNodes={};for(let{property:n,childNode:r}of this._getNodeChildren())s.inputNodes[n]=r.toJSON(e).uuid;function i(n){let r=[];for(let a in n){let c=n[a];delete c.metadata,r.push(c)}return r}if(t){let n=i(e.textures),r=i(e.images),a=i(e.nodes);n.length>0&&(s.textures=n),r.length>0&&(s.images=r),a.length>0&&(s.nodes=a)}return s}copy(e){return this.lightsNode=e.lightsNode,this.envNode=e.envNode,this.aoNode=e.aoNode,this.colorNode=e.colorNode,this.normalNode=e.normalNode,this.opacityNode=e.opacityNode,this.backdropNode=e.backdropNode,this.backdropAlphaNode=e.backdropAlphaNode,this.alphaTestNode=e.alphaTestNode,this.maskNode=e.maskNode,this.maskShadowNode=e.maskShadowNode,this.positionNode=e.positionNode,this.geometryNode=e.geometryNode,this.depthNode=e.depthNode,this.receivedShadowPositionNode=e.receivedShadowPositionNode,this.castShadowPositionNode=e.castShadowPositionNode,this.receivedShadowNode=e.receivedShadowNode,this.castShadowNode=e.castShadowNode,this.outputNode=e.outputNode,this.mrtNode=e.mrtNode,this.fragmentNode=e.fragmentNode,this.vertexNode=e.vertexNode,this.contextNode=e.contextNode,super.copy(e)}},tN=new Ko,xm=class extends Ne{static get type(){return"LineBasicNodeMaterial"}constructor(e){super(),this.isLineBasicNodeMaterial=!0,this.setDefaultValues(tN),this.setValues(e)}},sN=new Il,bm=class extends Ne{static get type(){return"LineDashedNodeMaterial"}constructor(e){super(),this.isLineDashedNodeMaterial=!0,this.setDefaultValues(sN),this.dashOffset=0,this.offsetNode=null,this.dashScaleNode=null,this.dashSizeNode=null,this.gapSizeNode=null,this.setValues(e)}setupVariants(){let e=this.offsetNode?b(this.offsetNode):vv,t=this.dashScaleNode?b(this.dashScaleNode):_v,s=this.dashSizeNode?b(this.dashSizeNode):Tv,i=this.gapSizeNode?b(this.gapSizeNode):Sv;$u.assign(s),Nf.assign(i);let n=Sn(zi("lineDistance").mul(t));(e?n.add(e):n).mod($u.add(Nf)).greaterThan($u).discard()}};var iN=new El,_m=class extends Ne{static get type(){return"MeshNormalNodeMaterial"}constructor(e){super(),this.isMeshNormalNodeMaterial=!0,this.setDefaultValues(iN),this.setValues(e)}setupDiffuseColor(){let e=this.opacityNode?b(this.opacityNode):$x;we.assign(hd(Z(jS(ye),e),Pt))}},Qx=A(([o=Ox])=>{let e=o.z.atan(o.x).mul(1/(Math.PI*2)).add(.5),t=o.y.clamp(-1,1).asin().mul(1/Math.PI).add(.5);return U(e,t)}),gh=class extends bt{constructor(e=1,t={}){super(e,e,t),this.isCubeRenderTarget=!0;let s={width:e,height:e,depth:1},i=[s,s,s,s,s,s];this.texture=new kn(i),this._setTextureOptions(t),this.texture.isRenderTargetTexture=!0}fromEquirectangularTexture(e,t){let s=t.minFilter,i=t.generateMipmaps;t.generateMipmaps=!0,this.texture.type=t.type,this.texture.colorSpace=t.colorSpace,this.texture.generateMipmaps=t.generateMipmaps,this.texture.minFilter=t.minFilter,this.texture.magFilter=t.magFilter;let n=new ea(5,5,5),r=Qx(Ox),a=new Ne;a.colorNode=xe(t,r,0),a.side=rt,a.blending=qs;let c=new Zt(n,a),l=new On;l.add(c),t.minFilter===Ci&&(t.minFilter=ct);let u=new Jl(1,10,this),h=e.getMRT();return e.setMRT(null),u.update(e,l),e.setMRT(h),t.minFilter=s,t.currentGenerateMipmaps=i,c.geometry.dispose(),c.material.dispose(),this}clear(e,t=!0,s=!0,i=!0){let n=e.getRenderTarget();for(let r=0;r<6;r++)e.setRenderTarget(this,r),e.clear(t,s,i);e.setRenderTarget(n)}},ac=new WeakMap,Tm=class extends Be{static get type(){return"CubeMapNode"}constructor(e){super("vec3"),this.envNode=e,this._cubeTexture=null,this._cubeTextureNode=Ft(null);let t=new kn;t.isRenderTargetTexture=!0,this._defaultTexture=t,this.updateBeforeType=te.RENDER}updateBefore(e){let{renderer:t,material:s}=e,i=this.envNode;if(i.isTextureNode||i.isMaterialReferenceNode){let n=i.isTextureNode?i.value:s[i.property];if(n&&n.isTexture){let r=n.mapping;if(r===su||r===iu){if(ac.has(n)){let a=ac.get(n);qb(a,n.mapping),this._cubeTexture=a}else{let a=n.image;if(nN(a)){let c=new gh(a.height);c.fromEquirectangularTexture(t,n),qb(c.texture,n.mapping),this._cubeTexture=c.texture,ac.set(n,c.texture),n.addEventListener("dispose",zv)}else this._cubeTexture=this._defaultTexture}this._cubeTextureNode.value=this._cubeTexture}else this._cubeTextureNode=this.envNode}}}setup(e){return this.updateBefore(e),this._cubeTextureNode}};function nN(o){return o==null?!1:o.height>0}function zv(o){let e=o.target;e.removeEventListener("dispose",zv);let t=ac.get(e);t!==void 0&&(ac.delete(e),t.dispose())}function qb(o,e){e===su?o.mapping=qn:e===iu&&(o.mapping=ca)}var Gv=oe(Tm).setParameterLength(1),yc=class extends Tn{static get type(){return"BasicEnvironmentNode"}constructor(e=null){super(),this.envNode=e}setup(e){e.context.environment=Gv(this.envNode)}},Sm=class extends Tn{static get type(){return"BasicLightMapNode"}constructor(e=null){super(),this.lightMapNode=e}setup(e){let t=b(1/Math.PI);e.context.irradianceLightMap=this.lightMapNode.mul(t)}},Mo=class{start(e){e.lightsNode.setupLights(e,e.lightsNode.getLightNodes(e)),this.indirect(e)}finish(){}direct(){}directRectArea(){}indirect(){}ambientOcclusion(){}},yh=class extends Mo{constructor(){super()}indirect({context:e}){let t=e.ambientOcclusion,s=e.reflectedLight,i=e.irradianceLightMap;s.indirectDiffuse.assign(Z(0)),i?s.indirectDiffuse.addAssign(i):s.indirectDiffuse.addAssign(Z(1,1,1,0)),s.indirectDiffuse.mulAssign(t),s.indirectDiffuse.mulAssign(we.rgb)}finish(e){let{material:t,context:s}=e,i=s.outgoingLight,n=e.context.environment;if(n)switch(t.combine){case aa:i.rgb.assign(le(i.rgb,i.rgb.mul(n.rgb),oc.mul(Hu)));break;case J0:i.rgb.assign(le(i.rgb,n.rgb,oc.mul(Hu)));break;case Q0:i.rgb.addAssign(n.rgb.mul(oc.mul(Hu)));break;default:z("BasicLightingModel: Unsupported .combine value:",t.combine);break}}},rN=new ws,xc=class extends Ne{static get type(){return"MeshBasicNodeMaterial"}constructor(e){super(),this.isMeshBasicNodeMaterial=!0,this.lights=!0,this.setDefaultValues(rN),this.setValues(e)}setupNormal(){return Co(To)}setupEnvironment(e){let t=super.setupEnvironment(e);return t?new yc(t):null}setupLightMap(e){let t=null;return e.material.lightMap&&(t=new Sm(qx)),t}setupOutgoingLight(){return we.rgb}setupLightingModel(){return new yh}},Ao=A(({f0:o,f90:e,dotVH:t})=>{let s=t.mul(-5.55473).sub(6.98316).mul(t).exp2();return o.mul(s.oneMinus()).add(e.mul(s))}),dr=A(o=>o.diffuseColor.mul(1/Math.PI)),oN=()=>b(.25),aN=A(({dotNH:o})=>th.mul(b(.5)).add(1).mul(b(1/Math.PI)).mul(o.pow(th))),cN=A(({lightDirection:o})=>{let e=o.add(Ce).normalize(),t=ye.dot(e).clamp(),s=Ce.dot(e).clamp(),i=Ao({f0:_n,f90:1,dotVH:s}),n=oN(),r=aN({dotNH:t});return i.mul(n).mul(r)}),xh=class extends yh{constructor(e=!0){super(),this.specular=e}direct({lightDirection:e,lightColor:t,reflectedLight:s}){let n=ye.dot(e).clamp().mul(t);s.directDiffuse.addAssign(n.mul(dr({diffuseColor:we.rgb}))),this.specular===!0&&s.directSpecular.addAssign(n.mul(cN({lightDirection:e})).mul(oc))}indirect(e){let{ambientOcclusion:t,irradiance:s,reflectedLight:i}=e.context;i.indirectDiffuse.addAssign(s.mul(dr({diffuseColor:we}))),i.indirectDiffuse.mulAssign(t)}},lN=new Bl,vm=class extends Ne{static get type(){return"MeshLambertNodeMaterial"}constructor(e){super(),this.isMeshLambertNodeMaterial=!0,this.lights=!0,this.setDefaultValues(lN),this.setValues(e)}setupEnvironment(e){let t=super.setupEnvironment(e);return t?new yc(t):null}setupLightingModel(){return new xh(!1)}},uN=new Rl,wm=class extends Ne{static get type(){return"MeshPhongNodeMaterial"}constructor(e){super(),this.isMeshPhongNodeMaterial=!0,this.lights=!0,this.shininessNode=null,this.specularNode=null,this.setDefaultValues(uN),this.setValues(e)}setupEnvironment(e){let t=super.setupEnvironment(e);return t?new yc(t):null}setupLightingModel(){return new xh}setupVariants(){let e=(this.shininessNode?b(this.shininessNode):QS).max(1e-4);th.assign(e);let t=this.specularNode||ev;_n.assign(t)}copy(e){return this.shininessNode=e.shininessNode,this.specularNode=e.specularNode,super.copy(e)}},Wv=A(o=>{if(o.geometry.hasAttribute("normal")===!1)return b(0);let e=To.dFdx().abs().max(To.dFdy().abs());return e.x.max(e.y).max(e.z)}),Kx=A(o=>{let{roughness:e}=o,t=Wv(),s=e.max(.0525);return s=s.add(t),s=s.min(1),s}),$v=A(({alpha:o,dotNL:e,dotNV:t})=>{let s=o.pow2(),i=e.mul(s.add(s.oneMinus().mul(t.pow2())).sqrt()),n=t.mul(s.add(s.oneMinus().mul(e.pow2())).sqrt());return ss(.5,i.add(n).max(dx))}).setLayout({name:"V_GGX_SmithCorrelated",type:"float",inputs:[{name:"alpha",type:"float"},{name:"dotNL",type:"float"},{name:"dotNV",type:"float"}]}),hN=A(({alphaT:o,alphaB:e,dotTV:t,dotBV:s,dotTL:i,dotBL:n,dotNV:r,dotNL:a})=>{let c=a.mul(v(o.mul(t),e.mul(s),r).length()),l=r.mul(v(o.mul(i),e.mul(n),a).length());return ss(.5,c.add(l))}).setLayout({name:"V_GGX_SmithCorrelated_Anisotropic",type:"float",inputs:[{name:"alphaT",type:"float",qualifier:"in"},{name:"alphaB",type:"float",qualifier:"in"},{name:"dotTV",type:"float",qualifier:"in"},{name:"dotBV",type:"float",qualifier:"in"},{name:"dotTL",type:"float",qualifier:"in"},{name:"dotBL",type:"float",qualifier:"in"},{name:"dotNV",type:"float",qualifier:"in"},{name:"dotNL",type:"float",qualifier:"in"}]}),qv=A(({alpha:o,dotNH:e})=>{let t=o.pow2(),s=e.pow2().mul(t.oneMinus()).oneMinus();return t.div(s.pow2()).mul(1/Math.PI)}).setLayout({name:"D_GGX",type:"float",inputs:[{name:"alpha",type:"float"},{name:"dotNH",type:"float"}]}),dN=b(1/Math.PI),pN=A(({alphaT:o,alphaB:e,dotNH:t,dotTH:s,dotBH:i})=>{let n=o.mul(e),r=v(e.mul(s),o.mul(i),n.mul(t)),a=r.dot(r),c=n.div(a);return dN.mul(n.mul(c.pow2()))}).setLayout({name:"D_GGX_Anisotropic",type:"float",inputs:[{name:"alphaT",type:"float",qualifier:"in"},{name:"alphaB",type:"float",qualifier:"in"},{name:"dotNH",type:"float",qualifier:"in"},{name:"dotTH",type:"float",qualifier:"in"},{name:"dotBH",type:"float",qualifier:"in"}]}),e0=A(({lightDirection:o,f0:e,f90:t,roughness:s,f:i,normalView:n=ye,USE_IRIDESCENCE:r,USE_ANISOTROPY:a})=>{let c=s.pow2(),l=o.add(Ce).normalize(),u=n.dot(o).clamp(),h=n.dot(Ce).clamp(),d=n.dot(l).clamp(),p=Ce.dot(l).clamp(),m=Ao({f0:e,f90:t,dotVH:p}),g,y;if(dc(r)&&(m=od.mix(m,i)),dc(a)){let x=nc.dot(o),_=nc.dot(Ce),w=nc.dot(l),S=ar.dot(o),E=ar.dot(Ce),B=ar.dot(l);g=hN({alphaT:eh,alphaB:c,dotTV:_,dotBV:E,dotTL:x,dotBL:S,dotNV:h,dotNL:u}),y=pN({alphaT:eh,alphaB:c,dotNH:d,dotTH:w,dotBH:B})}else g=$v({alpha:c,dotNL:u,dotNV:h}),y=qv({alpha:c,dotNH:d});return m.mul(g).mul(y)}),fN=new Uint16Array([12469,15057,12620,14925,13266,14620,13807,14376,14323,13990,14545,13625,14713,13328,14840,12882,14931,12528,14996,12233,15039,11829,15066,11525,15080,11295,15085,10976,15082,10705,15073,10495,13880,14564,13898,14542,13977,14430,14158,14124,14393,13732,14556,13410,14702,12996,14814,12596,14891,12291,14937,11834,14957,11489,14958,11194,14943,10803,14921,10506,14893,10278,14858,9960,14484,14039,14487,14025,14499,13941,14524,13740,14574,13468,14654,13106,14743,12678,14818,12344,14867,11893,14889,11509,14893,11180,14881,10751,14852,10428,14812,10128,14765,9754,14712,9466,14764,13480,14764,13475,14766,13440,14766,13347,14769,13070,14786,12713,14816,12387,14844,11957,14860,11549,14868,11215,14855,10751,14825,10403,14782,10044,14729,9651,14666,9352,14599,9029,14967,12835,14966,12831,14963,12804,14954,12723,14936,12564,14917,12347,14900,11958,14886,11569,14878,11247,14859,10765,14828,10401,14784,10011,14727,9600,14660,9289,14586,8893,14508,8533,15111,12234,15110,12234,15104,12216,15092,12156,15067,12010,15028,11776,14981,11500,14942,11205,14902,10752,14861,10393,14812,9991,14752,9570,14682,9252,14603,8808,14519,8445,14431,8145,15209,11449,15208,11451,15202,11451,15190,11438,15163,11384,15117,11274,15055,10979,14994,10648,14932,10343,14871,9936,14803,9532,14729,9218,14645,8742,14556,8381,14461,8020,14365,7603,15273,10603,15272,10607,15267,10619,15256,10631,15231,10614,15182,10535,15118,10389,15042,10167,14963,9787,14883,9447,14800,9115,14710,8665,14615,8318,14514,7911,14411,7507,14279,7198,15314,9675,15313,9683,15309,9712,15298,9759,15277,9797,15229,9773,15166,9668,15084,9487,14995,9274,14898,8910,14800,8539,14697,8234,14590,7790,14479,7409,14367,7067,14178,6621,15337,8619,15337,8631,15333,8677,15325,8769,15305,8871,15264,8940,15202,8909,15119,8775,15022,8565,14916,8328,14804,8009,14688,7614,14569,7287,14448,6888,14321,6483,14088,6171,15350,7402,15350,7419,15347,7480,15340,7613,15322,7804,15287,7973,15229,8057,15148,8012,15046,7846,14933,7611,14810,7357,14682,7069,14552,6656,14421,6316,14251,5948,14007,5528,15356,5942,15356,5977,15353,6119,15348,6294,15332,6551,15302,6824,15249,7044,15171,7122,15070,7050,14949,6861,14818,6611,14679,6349,14538,6067,14398,5651,14189,5311,13935,4958,15359,4123,15359,4153,15356,4296,15353,4646,15338,5160,15311,5508,15263,5829,15188,6042,15088,6094,14966,6001,14826,5796,14678,5543,14527,5287,14377,4985,14133,4586,13869,4257,15360,1563,15360,1642,15358,2076,15354,2636,15341,3350,15317,4019,15273,4429,15203,4732,15105,4911,14981,4932,14836,4818,14679,4621,14517,4386,14359,4156,14083,3795,13808,3437,15360,122,15360,137,15358,285,15355,636,15344,1274,15322,2177,15281,2765,15215,3223,15120,3451,14995,3569,14846,3567,14681,3466,14511,3305,14344,3121,14037,2800,13753,2467,15360,0,15360,1,15359,21,15355,89,15346,253,15325,479,15287,796,15225,1148,15133,1492,15008,1749,14856,1882,14685,1886,14506,1783,14324,1608,13996,1398,13702,1183]),Qs=null,bc=A(({roughness:o,dotNV:e})=>{Qs===null&&(Qs=new Qo(fN,16,16,Ms,$e),Qs.name="DFG_LUT",Qs.minFilter=ct,Qs.magFilter=ct,Qs.wrapS=bs,Qs.wrapT=bs,Qs.generateMipmaps=!1,Qs.needsUpdate=!0);let t=U(o,e);return xe(Qs,t).rg}),mN=A(({lightDirection:o,f0:e,f90:t,roughness:s,f:i,USE_IRIDESCENCE:n,USE_ANISOTROPY:r})=>{let a=e0({lightDirection:o,f0:e,f90:t,roughness:s,f:i,USE_IRIDESCENCE:n,USE_ANISOTROPY:r}),c=ye.dot(o).clamp(),l=ye.dot(Ce).clamp(),u=bc({roughness:s,dotNV:l}),h=bc({roughness:s,dotNV:c}),d=e.mul(u.x).add(t.mul(u.y)),p=e.mul(h.x).add(t.mul(h.y)),m=u.x.add(u.y),g=h.x.add(h.y),y=b(1).sub(m),x=b(1).sub(g),_=e.add(e.oneMinus().mul(.047619)),w=d.mul(p).mul(_).div(b(1).sub(y.mul(x).mul(_).mul(_)).add(dx)),S=y.mul(x),E=w.mul(S);return a.add(E)}),Hv=A(o=>{let{dotNV:e,specularColor:t,specularF90:s,roughness:i}=o,n=bc({dotNV:e,roughness:i});return t.mul(n.x).add(s.mul(n.y))}),Mm=A(({f:o,f90:e,dotVH:t})=>{let s=t.oneMinus().saturate(),i=s.mul(s),n=s.mul(i,i).clamp(0,.9999);return o.sub(v(e).mul(n)).div(n.oneMinus())}).setLayout({name:"Schlick_to_F0",type:"vec3",inputs:[{name:"f",type:"vec3"},{name:"f90",type:"float"},{name:"dotVH",type:"float"}]}),gN=A(({roughness:o,dotNH:e})=>{let t=o.pow2(),s=b(1).div(t),n=e.pow2().oneMinus().max(.0078125);return b(2).add(s).mul(n.pow(s.mul(.5))).div(2*Math.PI)}).setLayout({name:"D_Charlie",type:"float",inputs:[{name:"roughness",type:"float"},{name:"dotNH",type:"float"}]}),yN=A(({dotNV:o,dotNL:e})=>b(1).div(b(4).mul(e.add(o).sub(e.mul(o))))).setLayout({name:"V_Neubelt",type:"float",inputs:[{name:"dotNV",type:"float"},{name:"dotNL",type:"float"}]}),xN=A(({lightDirection:o})=>{let e=o.add(Ce).normalize(),t=ye.dot(o).clamp(),s=ye.dot(Ce).clamp(),i=ye.dot(e).clamp(),n=gN({roughness:ln,dotNH:i}),r=yN({dotNV:s,dotNL:t});return Kt.mul(n).mul(r)}),Hb=A(({N:o,V:e,roughness:t})=>{let n=.0078125,r=o.dot(e).saturate(),a=U(t,r.oneMinus().sqrt());return a.assign(a.mul(.984375).add(n)),a}).setLayout({name:"LTC_Uv",type:"vec2",inputs:[{name:"N",type:"vec3"},{name:"V",type:"vec3"},{name:"roughness",type:"float"}]}),bN=A(({f:o})=>{let e=o.length();return ze(e.mul(e).add(o.z).div(e.add(1)),0)}).setLayout({name:"LTC_ClippedSphereFormFactor",type:"float",inputs:[{name:"f",type:"vec3"}]}),vu=A(({v1:o,v2:e})=>{let t=o.dot(e),s=t.abs().toVar(),i=s.mul(.0145206).add(.4965155).mul(s).add(.8543985).toVar(),n=s.add(4.1616724).mul(s).add(3.417594).toVar(),r=i.div(n),a=t.greaterThan(0).select(r,ze(t.mul(t).oneMinus(),1e-7).inverseSqrt().mul(.5).sub(r));return o.cross(e).mul(a)}).setLayout({name:"LTC_EdgeVectorFormFactor",type:"vec3",inputs:[{name:"v1",type:"vec3"},{name:"v2",type:"vec3"}]}),zp=A(({N:o,V:e,P:t,mInv:s,p0:i,p1:n,p2:r,p3:a})=>{let c=n.sub(i).toVar(),l=a.sub(i).toVar(),u=c.cross(l),h=v().toVar();return K(u.dot(t.sub(i)).greaterThanEqual(0),()=>{let d=e.sub(o.mul(e.dot(o))).normalize(),p=o.cross(d).negate(),m=s.mul(at(d,p,o).transpose()).toVar(),g=m.mul(i.sub(t)).normalize().toVar(),y=m.mul(n.sub(t)).normalize().toVar(),x=m.mul(r.sub(t)).normalize().toVar(),_=m.mul(a.sub(t)).normalize().toVar(),w=v(0).toVar();w.addAssign(vu({v1:g,v2:y})),w.addAssign(vu({v1:y,v2:x})),w.addAssign(vu({v1:x,v2:_})),w.addAssign(vu({v1:_,v2:g})),h.assign(v(bN({f:w})))}),h}).setLayout({name:"LTC_Evaluate",type:"vec3",inputs:[{name:"N",type:"vec3"},{name:"V",type:"vec3"},{name:"P",type:"vec3"},{name:"mInv",type:"mat3"},{name:"p0",type:"vec3"},{name:"p1",type:"vec3"},{name:"p2",type:"vec3"},{name:"p3",type:"vec3"}]});var yd=1/6,Xv=o=>se(yd,se(o,se(o,o.negate().add(3)).sub(3)).add(1)),Am=o=>se(yd,se(o,se(o,se(3,o).sub(6))).add(4)),Yv=o=>se(yd,se(o,se(o,se(-3,o).add(3)).add(3)).add(1)),Nm=o=>se(yd,cs(o,3)),Xb=o=>Xv(o).add(Am(o)),Yb=o=>Yv(o).add(Nm(o)),jb=o=>Ye(-1,Am(o).div(Xv(o).add(Am(o)))),Zb=o=>Ye(1,Nm(o).div(Yv(o).add(Nm(o)))),Jb=(o,e,t)=>{let s=o.uvNode,i=se(s,e.zw).add(.5),n=oi(i),r=Es(i),a=Xb(r.x),c=Yb(r.x),l=jb(r.x),u=Zb(r.x),h=jb(r.y),d=Zb(r.y),p=U(n.x.add(l),n.y.add(h)).sub(.5).mul(e.xy),m=U(n.x.add(u),n.y.add(h)).sub(.5).mul(e.xy),g=U(n.x.add(l),n.y.add(d)).sub(.5).mul(e.xy),y=U(n.x.add(u),n.y.add(d)).sub(.5).mul(e.xy),x=Xb(r.y).mul(Ye(a.mul(o.sample(p).level(t)),c.mul(o.sample(m).level(t)))),_=Yb(r.y).mul(Ye(a.mul(o.sample(g).level(t)),c.mul(o.sample(y).level(t))));return x.add(_)},t0=A(([o,e])=>{let t=U(o.size(T(e))),s=U(o.size(T(e.add(1)))),i=ss(1,t),n=ss(1,s),r=Jb(o,Z(i,t),oi(e)),a=Jb(o,Z(n,s),ld(e));return Es(e).mix(r,a)}),_N=A(([o,e])=>{let t=e.mul(Px(o));return t0(o,t)}),Qb=A(([o,e,t,s,i])=>{let n=v(Ax(e.negate(),Ut(o),ss(1,s))),r=v(ai(i[0].xyz),ai(i[1].xyz),ai(i[2].xyz));return Ut(n).mul(t.mul(r))}).setLayout({name:"getVolumeTransmissionRay",type:"vec3",inputs:[{name:"n",type:"vec3"},{name:"v",type:"vec3"},{name:"thickness",type:"float"},{name:"ior",type:"float"},{name:"modelMatrix",type:"mat4"}]}),TN=A(([o,e])=>o.mul(Bs(e.mul(2).sub(2),0,1))).setLayout({name:"applyIorToRoughness",type:"float",inputs:[{name:"roughness",type:"float"},{name:"ior",type:"float"}]}),SN=Hx(),vN=Lv(),Kb=A(([o,e,t],{material:s})=>{let n=(s.side===rt?SN:vN).sample(o),r=ri(hr.x).mul(TN(e,t));return t0(n,r)}),e_=A(([o,e,t])=>(K(t.notEqual(0),()=>{let s=cd(e).negate().div(t);return px(s.negate().mul(o))}),v(1))).setLayout({name:"volumeAttenuation",type:"vec3",inputs:[{name:"transmissionDistance",type:"float"},{name:"attenuationColor",type:"vec3"},{name:"attenuationDistance",type:"float"}]}),wN=A(([o,e,t,s,i,n,r,a,c,l,u,h,d,p,m])=>{let g,y;if(m){g=Z().toVar(),y=v().toVar();let E=u.sub(1).mul(m.mul(.025)),B=v(u.sub(E),u,u.add(E));Me({start:0,end:3},({i:N})=>{let C=B.element(N),I=Qb(o,e,h,C,a),k=r.add(I),W=l.mul(c.mul(Z(k,1))),X=U(W.xy.div(W.w)).toVar();X.addAssign(1),X.divAssign(2),X.assign(U(X.x,X.y.oneMinus()));let Y=Kb(X,t,C);g.element(N).assign(Y.element(N)),g.a.addAssign(Y.a),y.element(N).assign(s.element(N).mul(e_(ai(I),d,p).element(N)))}),g.a.divAssign(3)}else{let E=Qb(o,e,h,u,a),B=r.add(E),N=l.mul(c.mul(Z(B,1))),C=U(N.xy.div(N.w)).toVar();C.addAssign(1),C.divAssign(2),C.assign(U(C.x,C.y.oneMinus())),g=Kb(C,t,u),y=s.mul(e_(ai(E),d,p))}let x=y.rgb.mul(g.rgb),_=o.dot(e).clamp(),w=v(Hv({dotNV:_,specularColor:i,specularF90:n,roughness:t})),S=y.r.add(y.g,y.b).div(3);return Z(w.oneMinus().mul(x),g.a.oneMinus().mul(S).oneMinus())}),MN=at(3.2404542,-.969266,.0556434,-1.5371385,1.8760108,-.2040259,-.4985314,.041556,1.0572252),AN=o=>{let e=o.sqrt();return v(1).add(e).div(v(1).sub(e))},t_=(o,e)=>o.sub(e).div(o.add(e)).pow2(),NN=(o,e)=>{let t=o.mul(2*Math.PI*1e-9),s=v(54856e-17,44201e-17,52481e-17),i=v(1681e3,1795300,2208400),n=v(43278e5,93046e5,66121e5),r=b(9747e-17*Math.sqrt(2*Math.PI*45282e5)).mul(t.mul(2239900).add(e.x).cos()).mul(t.pow2().mul(-45282e5).exp()),a=s.mul(n.mul(2*Math.PI).sqrt()).mul(i.mul(t).add(e).cos()).mul(t.pow2().negate().mul(n).exp());return a=v(a.x.add(r),a.y,a.z).div(10685e-11),MN.mul(a)},s_=A(({outsideIOR:o,eta2:e,cosTheta1:t,thinFilmThickness:s,baseF0:i})=>{let n=le(o,e,Fs(0,.03,s)),a=o.div(n).pow2().mul(t.pow2().oneMinus()).oneMinus();K(a.lessThan(0),()=>v(1));let c=a.sqrt(),l=t_(n,o),u=Ao({f0:l,f90:1,dotVH:t}),h=u.oneMinus(),d=n.lessThan(o).select(Math.PI,0),p=b(Math.PI).sub(d),m=AN(i.clamp(0,.9999)),g=t_(m,n.toVec3()),y=Ao({f0:g,f90:1,dotVH:c}),x=v(m.x.lessThan(n).select(Math.PI,0),m.y.lessThan(n).select(Math.PI,0),m.z.lessThan(n).select(Math.PI,0)),_=n.mul(s,c,2),w=v(p).add(x),S=u.mul(y).clamp(1e-5,.9999),E=S.sqrt(),B=h.pow2().mul(y).div(v(1).sub(S)),C=u.add(B).toVar(),I=B.sub(h).toVar();return Me({start:1,end:2,condition:"<=",name:"m"},({m:k})=>{I.mulAssign(E);let W=NN(b(k).mul(_),b(k).mul(w)).mul(2);C.addAssign(I.mul(W))}),C.max(v(0))}).setLayout({name:"evalIridescence",type:"vec3",inputs:[{name:"outsideIOR",type:"float"},{name:"eta2",type:"float"},{name:"cosTheta1",type:"float"},{name:"thinFilmThickness",type:"float"},{name:"baseF0",type:"vec3"}]}),Ga=A(({normal:o,viewDir:e,roughness:t})=>{let s=o.dot(e).saturate(),i=t.mul(t),n=t.add(.1).reciprocal(),r=b(-1.9362).add(t.mul(1.0678)).add(i.mul(.4573)).sub(n.mul(.8469)),a=b(-.6014).add(t.mul(.5538)).sub(i.mul(.467)).sub(n.mul(.1255));return r.mul(s).add(a).exp().saturate()}),Wa=v(.04),wu=b(1),bh=class extends Mo{constructor(e=!1,t=!1,s=!1,i=!1,n=!1,r=!1){super(),this.clearcoat=e,this.sheen=t,this.iridescence=s,this.anisotropy=i,this.transmission=n,this.dispersion=r,this.clearcoatRadiance=null,this.clearcoatSpecularDirect=null,this.clearcoatSpecularIndirect=null,this.sheenSpecularDirect=null,this.sheenSpecularIndirect=null,this.iridescenceFresnel=null,this.iridescenceF0=null,this.iridescenceF0Dielectric=null,this.iridescenceF0Metallic=null}start(e){if(this.clearcoat===!0&&(this.clearcoatRadiance=v().toVar("clearcoatRadiance"),this.clearcoatSpecularDirect=v().toVar("clearcoatSpecularDirect"),this.clearcoatSpecularIndirect=v().toVar("clearcoatSpecularIndirect")),this.sheen===!0&&(this.sheenSpecularDirect=v().toVar("sheenSpecularDirect"),this.sheenSpecularIndirect=v().toVar("sheenSpecularIndirect")),this.iridescence===!0){let t=ye.dot(Ce).clamp(),s=s_({outsideIOR:b(1),eta2:Qu,cosTheta1:t,thinFilmThickness:Ku,baseF0:_n}),i=s_({outsideIOR:b(1),eta2:Qu,cosTheta1:t,thinFilmThickness:Ku,baseF0:we.rgb});this.iridescenceFresnel=le(s,i,Li),this.iridescenceF0Dielectric=Mm({f:s,f90:1,dotVH:t}),this.iridescenceF0Metallic=Mm({f:i,f90:1,dotVH:t}),this.iridescenceF0=le(this.iridescenceF0Dielectric,this.iridescenceF0Metallic,Li)}if(this.transmission===!0){let t=li,s=wS.sub(li).normalize(),i=Mn,n=e.context;n.backdrop=wN(i,s,ii,er,sr,ir,t,ls,fs,Oi,rc,ox,cx,ax,this.dispersion?lx:null),n.backdropAlpha=sh,we.a.mulAssign(le(1,n.backdrop.a,sh))}super.start(e)}computeMultiscattering(e,t,s,i,n=null){let r=ye.dot(Ce).clamp(),a=bc({roughness:ii,dotNV:r}),c=n?od.mix(i,n):i,l=c.mul(a.x).add(s.mul(a.y)),h=a.x.add(a.y).oneMinus(),d=c.add(c.oneMinus().mul(.047619)),p=l.mul(d).div(h.mul(d).oneMinus());e.addAssign(l),t.addAssign(p.mul(h))}direct({lightDirection:e,lightColor:t,reflectedLight:s}){let n=ye.dot(e).clamp().mul(t).toVar();if(this.sheen===!0){this.sheenSpecularDirect.addAssign(n.mul(xN({lightDirection:e})));let r=Ga({normal:ye,viewDir:Ce,roughness:ln}),a=Ga({normal:ye,viewDir:e,roughness:ln}),c=Kt.r.max(Kt.g).max(Kt.b).mul(r.max(a)).oneMinus();n.mulAssign(c)}if(this.clearcoat===!0){let a=dn.dot(e).clamp().mul(t);this.clearcoatSpecularDirect.addAssign(a.mul(e0({lightDirection:e,f0:Wa,f90:wu,roughness:po,normalView:dn})))}s.directDiffuse.addAssign(n.mul(dr({diffuseColor:er}))),s.directSpecular.addAssign(n.mul(mN({lightDirection:e,f0:sr,f90:1,roughness:ii,f:this.iridescenceFresnel,USE_IRIDESCENCE:this.iridescence,USE_ANISOTROPY:this.anisotropy})))}directRectArea({lightColor:e,lightPosition:t,halfWidth:s,halfHeight:i,reflectedLight:n,ltc_1:r,ltc_2:a}){let c=t.add(s).sub(i),l=t.sub(s).sub(i),u=t.sub(s).add(i),h=t.add(s).add(i),d=ye,p=Ce,m=qe.toVar(),g=Hb({N:d,V:p,roughness:ii}),y=r.sample(g).toVar(),x=a.sample(g).toVar(),_=at(v(y.x,0,y.y),v(0,1,0),v(y.z,0,y.w)).toVar(),w=sr.mul(x.x).add(ir.sub(sr).mul(x.y)).toVar();if(n.directSpecular.addAssign(e.mul(w).mul(zp({N:d,V:p,P:m,mInv:_,p0:c,p1:l,p2:u,p3:h}))),n.directDiffuse.addAssign(e.mul(er).mul(zp({N:d,V:p,P:m,mInv:at(1,0,0,0,1,0,0,0,1),p0:c,p1:l,p2:u,p3:h}))),this.clearcoat===!0){let S=dn,E=Hb({N:S,V:p,roughness:po}),B=r.sample(E),N=a.sample(E),C=at(v(B.x,0,B.y),v(0,1,0),v(B.z,0,B.w)),I=Wa.mul(N.x).add(wu.sub(Wa).mul(N.y));this.clearcoatSpecularDirect.addAssign(e.mul(I).mul(zp({N:S,V:p,P:m,mInv:C,p0:c,p1:l,p2:u,p3:h})))}}indirect(e){this.indirectDiffuse(e),this.indirectSpecular(e),this.ambientOcclusion(e)}indirectDiffuse(e){let{irradiance:t,reflectedLight:s}=e.context,i=t.mul(dr({diffuseColor:er})).toVar();if(this.sheen===!0){let n=Ga({normal:ye,viewDir:Ce,roughness:ln}),r=Kt.r.max(Kt.g).max(Kt.b).mul(n).oneMinus();i.mulAssign(r)}s.indirectDiffuse.addAssign(i)}indirectSpecular(e){let{radiance:t,iblIrradiance:s,reflectedLight:i}=e.context;if(this.sheen===!0&&this.sheenSpecularIndirect.addAssign(s.mul(Kt,Ga({normal:ye,viewDir:Ce,roughness:ln}))),this.clearcoat===!0){let y=dn.dot(Ce).clamp(),x=Hv({dotNV:y,specularColor:Wa,specularF90:wu,roughness:po});this.clearcoatSpecularIndirect.addAssign(this.clearcoatRadiance.mul(x))}let n=v().toVar("singleScatteringDielectric"),r=v().toVar("multiScatteringDielectric"),a=v().toVar("singleScatteringMetallic"),c=v().toVar("multiScatteringMetallic");this.computeMultiscattering(n,r,ir,_n,this.iridescenceF0Dielectric),this.computeMultiscattering(a,c,ir,we.rgb,this.iridescenceF0Metallic);let l=le(n,a,Li),u=le(r,c,Li),h=n.add(r),d=er.mul(h.oneMinus()),p=s.mul(1/Math.PI),m=t.mul(l).add(u.mul(p)).toVar(),g=d.mul(p).toVar();if(this.sheen===!0){let y=Ga({normal:ye,viewDir:Ce,roughness:ln}),x=Kt.r.max(Kt.g).max(Kt.b).mul(y).oneMinus();m.mulAssign(x),g.mulAssign(x)}i.indirectSpecular.addAssign(m),i.indirectDiffuse.addAssign(g)}ambientOcclusion(e){let{ambientOcclusion:t,reflectedLight:s}=e.context,n=ye.dot(Ce).clamp().add(t),r=ii.mul(-16).oneMinus().negate().exp2(),a=t.sub(n.pow(r).oneMinus()).clamp();this.clearcoat===!0&&this.clearcoatSpecularIndirect.mulAssign(t),this.sheen===!0&&this.sheenSpecularIndirect.mulAssign(t),s.indirectDiffuse.mulAssign(t),s.indirectSpecular.mulAssign(a)}finish({context:e}){let{outgoingLight:t}=e;if(this.clearcoat===!0){let s=dn.dot(Ce).clamp(),i=Ao({dotVH:s,f0:Wa,f90:wu}),n=t.mul(Ju.mul(i).oneMinus()).add(this.clearcoatSpecularDirect.add(this.clearcoatSpecularIndirect).mul(Ju));t.assign(n)}if(this.sheen===!0){let s=t.add(this.sheenSpecularDirect,this.sheenSpecularIndirect.mul(1/Math.PI));t.assign(s)}}},i_=b(1),Rm=b(-2),Mu=b(.8),Gp=b(-1),Au=b(.4),Wp=b(2),Nu=b(.305),$p=b(3),n_=b(.21),RN=b(4),r_=b(4),CN=b(16),EN=A(([o])=>{let e=v(Ee(o)).toVar(),t=b(-1).toVar();return K(e.x.greaterThan(e.z),()=>{K(e.x.greaterThan(e.y),()=>{t.assign(vt(o.x.greaterThan(0),0,3))}).Else(()=>{t.assign(vt(o.y.greaterThan(0),1,4))})}).Else(()=>{K(e.z.greaterThan(e.y),()=>{t.assign(vt(o.z.greaterThan(0),2,5))}).Else(()=>{t.assign(vt(o.y.greaterThan(0),1,4))})}),t}).setLayout({name:"getFace",type:"float",inputs:[{name:"direction",type:"vec3"}]}),BN=A(([o,e])=>{let t=U().toVar();return K(e.equal(0),()=>{t.assign(U(o.z,o.y).div(Ee(o.x)))}).ElseIf(e.equal(1),()=>{t.assign(U(o.x.negate(),o.z.negate()).div(Ee(o.y)))}).ElseIf(e.equal(2),()=>{t.assign(U(o.x.negate(),o.y).div(Ee(o.z)))}).ElseIf(e.equal(3),()=>{t.assign(U(o.z.negate(),o.y).div(Ee(o.x)))}).ElseIf(e.equal(4),()=>{t.assign(U(o.x.negate(),o.z).div(Ee(o.y)))}).Else(()=>{t.assign(U(o.x,o.y).div(Ee(o.z)))}),se(.5,t.add(1))}).setLayout({name:"getUV",type:"vec2",inputs:[{name:"direction",type:"vec3"},{name:"face",type:"float"}]}),FN=A(([o])=>{let e=b(0).toVar();return K(o.greaterThanEqual(Mu),()=>{e.assign(i_.sub(o).mul(Gp.sub(Rm)).div(i_.sub(Mu)).add(Rm))}).ElseIf(o.greaterThanEqual(Au),()=>{e.assign(Mu.sub(o).mul(Wp.sub(Gp)).div(Mu.sub(Au)).add(Gp))}).ElseIf(o.greaterThanEqual(Nu),()=>{e.assign(Au.sub(o).mul($p.sub(Wp)).div(Au.sub(Nu)).add(Wp))}).ElseIf(o.greaterThanEqual(n_),()=>{e.assign(Nu.sub(o).mul(RN.sub($p)).div(Nu.sub(n_)).add($p))}).Else(()=>{e.assign(b(-2).mul(ri(se(1.16,o))))}),e}).setLayout({name:"roughnessToMip",type:"float",inputs:[{name:"roughness",type:"float"}]}),jv=A(([o,e])=>{let t=o.toVar();t.assign(se(2,t).sub(1));let s=v(t,1).toVar();return K(e.equal(0),()=>{s.assign(s.zyx)}).ElseIf(e.equal(1),()=>{s.assign(s.xzy),s.xz.mulAssign(-1)}).ElseIf(e.equal(2),()=>{s.x.mulAssign(-1)}).ElseIf(e.equal(3),()=>{s.assign(s.zyx),s.xz.mulAssign(-1)}).ElseIf(e.equal(4),()=>{s.assign(s.xzy),s.xy.mulAssign(-1)}).ElseIf(e.equal(5),()=>{s.z.mulAssign(-1)}),s}).setLayout({name:"getDirection",type:"vec3",inputs:[{name:"uv",type:"vec2"},{name:"face",type:"float"}]}),Zv=A(([o,e,t,s,i,n])=>{let r=b(t),a=v(e),c=Bs(FN(r),Rm,n),l=Es(c),u=oi(c),h=v(_c(o,a,u,s,i,n)).toVar();return K(l.notEqual(0),()=>{let d=v(_c(o,a,u.add(1),s,i,n)).toVar();h.assign(le(h,d,l))}),h}),_c=A(([o,e,t,s,i,n])=>{let r=b(t).toVar(),a=v(e),c=b(EN(a)).toVar(),l=b(ze(r_.sub(r),0)).toVar();r.assign(ze(r,r_));let u=b(bo(r)).toVar(),h=U(BN(a,c).mul(u.sub(2)).add(1)).toVar();return K(c.greaterThan(2),()=>{h.y.addAssign(u),c.subAssign(3)}),h.x.addAssign(c.mul(u)),h.x.addAssign(l.mul(se(3,CN))),h.y.addAssign(se(4,bo(n).sub(u))),h.x.mulAssign(s),h.y.mulAssign(i),o.sample(h).grad(U(),U())}),qp=A(({envMap:o,mipInt:e,outputDirection:t,theta:s,axis:i,CUBEUV_TEXEL_WIDTH:n,CUBEUV_TEXEL_HEIGHT:r,CUBEUV_MAX_MIP:a})=>{let c=Rs(s),l=t.mul(c).add(i.cross(t).mul(Bt(s))).add(i.mul(i.dot(t).mul(c.oneMinus())));return _c(o,l,e,n,r,a)}),Jv=A(({n:o,latitudinal:e,poleAxis:t,outputDirection:s,weights:i,samples:n,dTheta:r,mipInt:a,envMap:c,CUBEUV_TEXEL_WIDTH:l,CUBEUV_TEXEL_HEIGHT:u,CUBEUV_MAX_MIP:h})=>{let d=v(vt(e,t,ki(t,s))).toVar();K(d.equal(v(0)),()=>{d.assign(v(s.z,0,s.x.negate()))}),d.assign(Ut(d));let p=v().toVar();return p.addAssign(i.element(0).mul(qp({theta:0,axis:d,outputDirection:s,mipInt:a,envMap:c,CUBEUV_TEXEL_WIDTH:l,CUBEUV_TEXEL_HEIGHT:u,CUBEUV_MAX_MIP:h}))),Me({start:T(1),end:o},({i:m})=>{K(m.greaterThanEqual(n),()=>{Iv()});let g=b(r.mul(b(m))).toVar();p.addAssign(i.element(m).mul(qp({theta:g.mul(-1),axis:d,outputDirection:s,mipInt:a,envMap:c,CUBEUV_TEXEL_WIDTH:l,CUBEUV_TEXEL_HEIGHT:u,CUBEUV_MAX_MIP:h}))),p.addAssign(i.element(m).mul(qp({theta:g,axis:d,outputDirection:s,mipInt:a,envMap:c,CUBEUV_TEXEL_WIDTH:l,CUBEUV_TEXEL_HEIGHT:u,CUBEUV_MAX_MIP:h})))}),Z(p,1)}),IN=A(([o])=>{let e=D(o).toVar();return e.assign(e.shiftLeft(D(16)).bitOr(e.shiftRight(D(16)))),e.assign(e.bitAnd(D(1431655765)).shiftLeft(D(1)).bitOr(e.bitAnd(D(2863311530)).shiftRight(D(1)))),e.assign(e.bitAnd(D(858993459)).shiftLeft(D(2)).bitOr(e.bitAnd(D(3435973836)).shiftRight(D(2)))),e.assign(e.bitAnd(D(252645135)).shiftLeft(D(4)).bitOr(e.bitAnd(D(4042322160)).shiftRight(D(4)))),e.assign(e.bitAnd(D(16711935)).shiftLeft(D(8)).bitOr(e.bitAnd(D(4278255360)).shiftRight(D(8)))),b(e).mul(23283064365386963e-26)}),PN=A(([o,e])=>U(b(o).div(b(e)),IN(o))),DN=A(([o,e,t])=>{let s=t.mul(t).toConst(),i=v(1,0,0).toConst(),n=ki(e,i).toConst(),r=It(o.x).toConst(),a=se(2,3.14159265359).mul(o.y).toConst(),c=r.mul(Rs(a)).toConst(),l=r.mul(Bt(a)).toVar(),u=se(.5,e.z.add(1)).toConst();l.assign(u.oneMinus().mul(It(c.mul(c).oneMinus())).add(u.mul(l)));let h=i.mul(c).add(n.mul(l)).add(e.mul(It(ze(0,c.mul(c).add(l.mul(l)).oneMinus()))));return Ut(v(s.mul(h.x),s.mul(h.y),ze(0,h.z)))}),Qv=A(({roughness:o,mipInt:e,envMap:t,N_immutable:s,GGX_SAMPLES:i,CUBEUV_TEXEL_WIDTH:n,CUBEUV_TEXEL_HEIGHT:r,CUBEUV_MAX_MIP:a})=>{let c=v(s).toVar(),l=v(0).toVar(),u=b(0).toVar();return K(o.lessThan(.001),()=>{l.assign(_c(t,c,e,n,r,a))}).Else(()=>{let h=vt(Ee(c.z).lessThan(.999),v(0,0,1),v(1,0,0)),d=Ut(ki(h,c)).toVar(),p=ki(c,d).toVar();Me({start:D(0),end:i},({i:m})=>{let g=PN(m,i),y=DN(g,v(0,0,1),o),x=Ut(d.mul(y.x).add(p.mul(y.y)).add(c.mul(y.z))),_=Ut(x.mul(ds(c,x).mul(2)).sub(c)),w=ze(ds(c,_),0);K(w.greaterThan(0),()=>{let S=_c(t,_,e,n,r,a);l.addAssign(S.mul(w)),u.addAssign(w)})}),K(u.greaterThan(0),()=>{l.assign(l.div(u))})}),Z(l,1)}),mn=4,o_=[.125,.215,.35,.446,.526,.582],tr=20,LN=512,$a=new Gr(-1,1,1,-1,0,1),UN=new it(90,1),a_=new ge,Hp=null,Xp=0,Yp=0,ON=new R,_h=new WeakMap,VN=[3,1,5,0,4,2],jp=jv(Re(),zi("faceIndex")).normalize(),xd=v(jp.x,jp.y,jp.z),Cm=class{constructor(e){this._renderer=e,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._sizeLods=[],this._sigmas=[],this._lodMeshes=[],this._blurMaterial=null,this._ggxMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._backgroundBox=null}get _hasInitialized(){return this._renderer.hasInitialized()}fromScene(e,t=0,s=.1,i=100,n={}){let{size:r=256,position:a=ON,renderTarget:c=null}=n;if(this._setSize(r),this._hasInitialized===!1){z('PMREMGenerator: ".fromScene()" called before the backend is initialized. Try using "await renderer.init()" instead.');let u=c||this._allocateTarget();return n.renderTarget=u,this.fromSceneAsync(e,t,s,i,n),u}Hp=this._renderer.getRenderTarget(),Xp=this._renderer.getActiveCubeFace(),Yp=this._renderer.getActiveMipmapLevel();let l=c||this._allocateTarget();return l.depthBuffer=!0,this._init(l),this._sceneToCubeUV(e,s,i,l,a),t>0&&this._blur(l,0,0,t),this._applyPMREM(l),this._cleanup(l),l}async fromSceneAsync(e,t=0,s=.1,i=100,n={}){return _e('PMREMGenerator: ".fromSceneAsync()" is deprecated. Use "await renderer.init()" instead.'),await this._renderer.init(),this.fromScene(e,t,s,i,n)}fromEquirectangular(e,t=null){if(this._hasInitialized===!1){z('PMREMGenerator: .fromEquirectangular() called before the backend is initialized. Try using "await renderer.init()" instead.'),this._setSizeFromTexture(e);let s=t||this._allocateTarget();return this.fromEquirectangularAsync(e,s),s}return this._fromTexture(e,t)}async fromEquirectangularAsync(e,t=null){return _e('PMREMGenerator: ".fromEquirectangularAsync()" is deprecated. Use "await renderer.init()" instead.'),await this._renderer.init(),this._fromTexture(e,t)}fromCubemap(e,t=null){if(this._hasInitialized===!1){z("PMREMGenerator: .fromCubemap() called before the backend is initialized. Try using .fromCubemapAsync() instead."),this._setSizeFromTexture(e);let s=t||this._allocateTarget();return this.fromCubemapAsync(e,t),s}return this._fromTexture(e,t)}async fromCubemapAsync(e,t=null){return _e('PMREMGenerator: ".fromCubemapAsync()" is deprecated. Use "await renderer.init()" instead.'),await this._renderer.init(),this._fromTexture(e,t)}async compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=l_(),await this._compileMaterial(this._cubemapMaterial))}async compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=u_(),await this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose(),this._backgroundBox!==null&&(this._backgroundBox.geometry.dispose(),this._backgroundBox.material.dispose())}_setSizeFromTexture(e){e.mapping===qn||e.mapping===ca?this._setSize(e.image.length===0?16:e.image[0].width||e.image[0].image.width):this._setSize(e.image.width/4)}_setSize(e){this._lodMax=Math.floor(Math.log2(e)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._ggxMaterial!==null&&this._ggxMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let e=0;e2?x:0,x,x),l.render(e,r)}l.autoClear=u,e.background=m}_textureToCubeUV(e,t){let s=this._renderer,i=e.mapping===qn||e.mapping===ca;i?this._cubemapMaterial===null&&(this._cubemapMaterial=l_(e)):this._equirectMaterial===null&&(this._equirectMaterial=u_(e));let n=i?this._cubemapMaterial:this._equirectMaterial;n.fragmentNode.value=e;let r=this._lodMeshes[0];r.material=n;let a=this._cubeSize;to(t,0,0,3*a,2*a),s.setRenderTarget(t),s.render(r,$a)}_applyPMREM(e){let t=this._renderer,s=t.autoClear;t.autoClear=!1;let i=this._lodMeshes.length;for(let n=1;nm-mn?s-m+mn:0),x=4*(this._cubeSize-g);e.texture.frame=(e.texture.frame||0)+1,c.envMap.value=e.texture,c.roughness.value=p,c.mipInt.value=m-t,to(n,y,x,3*g,2*g),i.setRenderTarget(n),i.render(a,$a),n.texture.frame=(n.texture.frame||0)+1,c.envMap.value=n.texture,c.roughness.value=0,c.mipInt.value=m-s,to(e,y,x,3*g,2*g),i.setRenderTarget(e),i.render(a,$a)}_blur(e,t,s,i,n){let r=this._pingPongRenderTarget;this._halfBlur(e,r,t,s,i,"latitudinal",n),this._halfBlur(r,e,s,s,i,"longitudinal",n)}_halfBlur(e,t,s,i,n,r,a){let c=this._renderer,l=this._blurMaterial;r!=="latitudinal"&&r!=="longitudinal"&&O("blur direction must be either latitudinal or longitudinal!");let u=3,h=this._lodMeshes[i];h.material=l;let d=_h.get(l),p=this._sizeLods[s]-1,m=isFinite(n)?Math.PI/(2*p):2*Math.PI/(2*tr-1),g=n/m,y=isFinite(n)?1+Math.floor(u*g):tr;y>tr&&z(`sigmaRadians, ${n}, is too large and will clip, as it requested ${y} samples when the maximum is set to ${tr}`);let x=[],_=0;for(let N=0;Nw-mn?i-w+mn:0),B=4*(this._cubeSize-S);to(t,E,B,3*S,2*S),c.setRenderTarget(t),c.render(h,$a)}};function kN(o){let e=[],t=[],s=[],i=o,n=o-mn+1+o_.length;for(let r=0;ro-mn?c=o_[r-o+mn-1]:r===0&&(c=0),t.push(c);let l=1/(a-2),u=-l,h=1+l,d=[u,u,h,u,h,h,u,u,h,h,u,h],p=6,m=6,g=3,y=2,x=1,_=new Float32Array(g*m*p),w=new Float32Array(y*m*p),S=new Float32Array(x*m*p);for(let B=0;B2?0:-1,I=[N,C,0,N+2/3,C,0,N+2/3,C+1,0,N,C,0,N+2/3,C+1,0,N,C+1,0],k=VN[B];_.set(I,g*m*k),w.set(d,y*m*k);let W=[k,k,k,k,k,k];S.set(W,x*m*k)}let E=new vs;E.setAttribute("position",new yt(_,g)),E.setAttribute("uv",new yt(w,y)),E.setAttribute("faceIndex",new yt(S,x)),s.push(new Zt(E,null)),i>mn&&i--}return{lodMeshes:s,sizeLods:e,sigmas:t}}function c_(o,e){let t={magFilter:ct,minFilter:ct,generateMipmaps:!1,type:$e,format:Lt,colorSpace:Ho},s=new bt(o,e,t);return s.texture.mapping=nu,s.texture.name="PMREM.cubeUv",s.texture.isPMREMTexture=!0,s.scissorTest=!0,s}function to(o,e,t,s,i){o.viewport.set(e,t,s,i),o.scissor.set(e,t,s,i)}function bd(o){let e=new Ne;return e.depthTest=!1,e.depthWrite=!1,e.blending=qs,e.name=`PMREM_${o}`,e}function zN(o,e,t){let s=St(new Array(tr).fill(0)),i=j(new R(0,1,0)),n=j(0),r=b(tr),a=j(0),c=j(1),l=xe(),u=j(0),h=b(1/e),d=b(1/t),p=b(o),m={n:r,latitudinal:a,weights:s,poleAxis:i,outputDirection:xd,dTheta:n,samples:c,envMap:l,mipInt:u,CUBEUV_TEXEL_WIDTH:h,CUBEUV_TEXEL_HEIGHT:d,CUBEUV_MAX_MIP:p},g=bd("blur");return g.fragmentNode=Jv({...m,latitudinal:a.equal(1)}),_h.set(g,m),g}function GN(o,e,t){let s=xe(),i=j(0),n=j(0),r=b(1/e),a=b(1/t),c=b(o),l={envMap:s,roughness:i,mipInt:n,CUBEUV_TEXEL_WIDTH:r,CUBEUV_TEXEL_HEIGHT:a,CUBEUV_MAX_MIP:c},u=bd("ggx");return u.fragmentNode=Qv({...l,N_immutable:xd,GGX_SAMPLES:D(LN)}),_h.set(u,l),u}function l_(o){let e=bd("cubemap");return e.fragmentNode=Ft(o,xd),e}function u_(o){let e=bd("equirect");return e.fragmentNode=xe(o,Qx(xd),0),e}var h_=new WeakMap;function WN(o){let e=Math.log2(o)-2,t=1/o;return{texelWidth:1/(3*Math.max(Math.pow(2,e),112)),texelHeight:t,maxMip:e}}function $N(o,e,t){let s=qN(e),i=s.get(o);if((i!==void 0?i.pmremVersion:-1)!==o.pmremVersion){let r=o.image;if(o.isCubeTexture)if(HN(r))i=t.fromCubemap(o,i);else return null;else if(XN(r))i=t.fromEquirectangular(o,i);else return null;i.pmremVersion=o.pmremVersion,s.set(o,i)}return i.texture}function qN(o){let e=h_.get(o);return e===void 0&&(e=new WeakMap,h_.set(o,e)),e}var Em=class extends Be{static get type(){return"PMREMNode"}constructor(e,t=null,s=null){super("vec3"),this._value=e,this._pmrem=null,this.uvNode=t,this.levelNode=s,this._generator=null;let i=new xt;i.isRenderTargetTexture=!0,this._texture=xe(i),this._width=j(0),this._height=j(0),this._maxMip=j(0),this.updateBeforeType=te.RENDER}set value(e){this._value=e,this._pmrem=null}get value(){return this._value}updateFromTexture(e){let t=WN(e.image.height);this._texture.value=e,this._width.value=t.texelWidth,this._height.value=t.texelHeight,this._maxMip.value=t.maxMip}updateBefore(e){let t=this._pmrem,s=t?t.pmremVersion:-1,i=this._value;s!==i.pmremVersion&&(i.isPMREMTexture===!0?t=i:t=$N(i,e.renderer,this._generator),t!==null&&(this._pmrem=t,this.updateFromTexture(t)))}setup(e){this._generator===null&&(this._generator=new Cm(e.renderer)),this.updateBefore(e);let t=this.uvNode;t===null&&e.context.getUV&&(t=e.context.getUV(this,e)),t=zx.mul(v(t.x,t.y.negate(),t.z));let s=this.levelNode;return s===null&&e.context.getTextureLevel&&(s=e.context.getTextureLevel(this)),Zv(this._texture,t,s,this._width,this._height,this._maxMip)}dispose(){super.dispose(),this._generator!==null&&this._generator.dispose()}};function HN(o){if(o==null)return!1;let e=0,t=6;for(let s=0;s0}var s0=oe(Em).setParameterLength(1,3),d_=new WeakMap,Bm=class extends Tn{static get type(){return"EnvironmentNode"}constructor(e=null){super(),this.envNode=e}setup(e){let{material:t}=e,s=this.envNode;if(s.isTextureNode||s.isMaterialReferenceNode){let h=s.isTextureNode?s.value:t[s.property],d=this._getPMREMNodeCache(e.renderer),p=d.get(h);p===void 0&&(p=s0(h),d.set(h,p)),s=p}let n=t.useAnisotropy===!0||t.anisotropy>0?YS:ye,r=s.context(p_(ii,n)).mul(qu),a=s.context(YN(Mn)).mul(Math.PI).mul(qu),c=go(r),l=go(a);e.context.radiance.addAssign(c),e.context.iblIrradiance.addAssign(l);let u=e.context.lightingModel.clearcoatRadiance;if(u){let h=s.context(p_(po,dn)).mul(qu),d=go(h);u.addAssign(d)}}_getPMREMNodeCache(e){let t=d_.get(e);return t===void 0&&(t=new WeakMap,d_.set(e,t)),t}},p_=(o,e)=>{let t=null;return{getUV:()=>(t===null&&(t=Ce.negate().reflect(e),t=wx(o).mix(t,e).normalize(),t=t.transformDirection(fs)),t),getTextureLevel:()=>o}},YN=o=>({getUV:()=>o,getTextureLevel:()=>b(1)}),jN=new ta,Th=class extends Ne{static get type(){return"MeshStandardNodeMaterial"}constructor(e){super(),this.isMeshStandardNodeMaterial=!0,this.lights=!0,this.emissiveNode=null,this.metalnessNode=null,this.roughnessNode=null,this.setDefaultValues(jN),this.setValues(e)}setupEnvironment(e){let t=super.setupEnvironment(e);return t===null&&e.environmentNode&&(t=e.environmentNode),t?new Bm(t):null}setupLightingModel(){return new bh}setupSpecular(){let e=le(v(.04),we.rgb,Li);_n.assign(v(.04)),sr.assign(e),ir.assign(1)}setupVariants(){let e=this.metalnessNode?b(this.metalnessNode):iv;Li.assign(e);let t=this.roughnessNode?b(this.roughnessNode):sv;t=Kx({roughness:t}),ii.assign(t),this.setupSpecular(),er.assign(we.rgb.mul(e.oneMinus()))}copy(e){return this.emissiveNode=e.emissiveNode,this.metalnessNode=e.metalnessNode,this.roughnessNode=e.roughnessNode,super.copy(e)}},ZN=new Nl,Fm=class extends Th{static get type(){return"MeshPhysicalNodeMaterial"}constructor(e){super(),this.isMeshPhysicalNodeMaterial=!0,this.clearcoatNode=null,this.clearcoatRoughnessNode=null,this.clearcoatNormalNode=null,this.sheenNode=null,this.sheenRoughnessNode=null,this.iridescenceNode=null,this.iridescenceIORNode=null,this.iridescenceThicknessNode=null,this.specularIntensityNode=null,this.specularColorNode=null,this.iorNode=null,this.transmissionNode=null,this.thicknessNode=null,this.attenuationDistanceNode=null,this.attenuationColorNode=null,this.dispersionNode=null,this.anisotropyNode=null,this.setDefaultValues(ZN),this.setValues(e)}get useClearcoat(){return this.clearcoat>0||this.clearcoatNode!==null}get useIridescence(){return this.iridescence>0||this.iridescenceNode!==null}get useSheen(){return this.sheen>0||this.sheenNode!==null}get useAnisotropy(){return this.anisotropy>0||this.anisotropyNode!==null}get useTransmission(){return this.transmission>0||this.transmissionNode!==null}get useDispersion(){return this.dispersion>0||this.dispersionNode!==null}setupSpecular(){let e=this.iorNode?b(this.iorNode):yv;rc.assign(e),_n.assign(Vt(vx(rc.sub(1).div(rc.add(1))).mul(tv),v(1)).mul(om)),sr.assign(le(_n,we.rgb,Li)),ir.assign(le(om,1,Li))}setupLightingModel(){return new bh(this.useClearcoat,this.useSheen,this.useIridescence,this.useAnisotropy,this.useTransmission,this.useDispersion)}setupVariants(e){if(super.setupVariants(e),this.useClearcoat){let t=this.clearcoatNode?b(this.clearcoatNode):rv,s=this.clearcoatRoughnessNode?b(this.clearcoatRoughnessNode):ov;Ju.assign(t),po.assign(Kx({roughness:s}))}if(this.useSheen){let t=this.sheenNode?v(this.sheenNode):lv,s=this.sheenRoughnessNode?b(this.sheenRoughnessNode):uv;Kt.assign(t),ln.assign(s)}if(this.useIridescence){let t=this.iridescenceNode?b(this.iridescenceNode):dv,s=this.iridescenceIORNode?b(this.iridescenceIORNode):pv,i=this.iridescenceThicknessNode?b(this.iridescenceThicknessNode):fv;od.assign(t),Qu.assign(s),Ku.assign(i)}if(this.useAnisotropy){let t=(this.anisotropyNode?U(this.anisotropyNode):hv).toVar();cn.assign(t.length()),K(cn.equal(0),()=>{t.assign(U(1,0))}).Else(()=>{t.divAssign(U(cn)),cn.assign(cn.saturate())}),eh.assign(cn.pow2().mix(ii.pow2(),1)),nc.assign(nr[0].mul(t.x).add(nr[1].mul(t.y))),ar.assign(nr[1].mul(t.x).sub(nr[0].mul(t.y)))}if(this.useTransmission){let t=this.transmissionNode?b(this.transmissionNode):mv,s=this.thicknessNode?b(this.thicknessNode):gv,i=this.attenuationDistanceNode?b(this.attenuationDistanceNode):xv,n=this.attenuationColorNode?v(this.attenuationColorNode):bv;if(sh.assign(t),ox.assign(s),ax.assign(i),cx.assign(n),this.useDispersion){let r=this.dispersionNode?b(this.dispersionNode):Mv;lx.assign(r)}}}setupClearcoatNormal(){return this.clearcoatNormalNode?v(this.clearcoatNormalNode):av}setup(e){e.context.setupClearcoatNormal=()=>cr(this.setupClearcoatNormal(e),"NORMAL","vec3"),super.setup(e)}copy(e){return this.clearcoatNode=e.clearcoatNode,this.clearcoatRoughnessNode=e.clearcoatRoughnessNode,this.clearcoatNormalNode=e.clearcoatNormalNode,this.sheenNode=e.sheenNode,this.sheenRoughnessNode=e.sheenRoughnessNode,this.iridescenceNode=e.iridescenceNode,this.iridescenceIORNode=e.iridescenceIORNode,this.iridescenceThicknessNode=e.iridescenceThicknessNode,this.specularIntensityNode=e.specularIntensityNode,this.specularColorNode=e.specularColorNode,this.iorNode=e.iorNode,this.transmissionNode=e.transmissionNode,this.thicknessNode=e.thicknessNode,this.attenuationDistanceNode=e.attenuationDistanceNode,this.attenuationColorNode=e.attenuationColorNode,this.dispersionNode=e.dispersionNode,this.anisotropyNode=e.anisotropyNode,super.copy(e)}};var JN=A(({normal:o,lightDirection:e,builder:t})=>{let s=o.dot(e),i=U(s.mul(.5).add(.5),0);if(t.material.gradientMap){let n=Di("gradientMap","texture").context({getUV:()=>i});return v(n.r)}else{let n=i.fwidth().mul(.5);return le(v(.7),v(1),Fs(b(.7).sub(n.x),b(.7).add(n.x),i.x))}}),Im=class extends Mo{direct({lightDirection:e,lightColor:t,reflectedLight:s},i){let n=JN({normal:pd,lightDirection:e,builder:i}).mul(t);s.directDiffuse.addAssign(n.mul(dr({diffuseColor:we.rgb})))}indirect(e){let{ambientOcclusion:t,irradiance:s,reflectedLight:i}=e.context;i.indirectDiffuse.addAssign(s.mul(dr({diffuseColor:we}))),i.indirectDiffuse.mulAssign(t)}},QN=new Cl,Pm=class extends Ne{static get type(){return"MeshToonNodeMaterial"}constructor(e){super(),this.isMeshToonNodeMaterial=!0,this.lights=!0,this.setDefaultValues(QN),this.setValues(e)}setupLightingModel(){return new Im}},Kv=A(()=>{let o=v(Ce.z,0,Ce.x.negate()).normalize(),e=Ce.cross(o);return U(o.dot(ye),e.dot(ye)).mul(.495).add(.5)}).once(["NORMAL","VERTEX"])().toVar("matcapUV"),KN=new Fl,Dm=class extends Ne{static get type(){return"MeshMatcapNodeMaterial"}constructor(e){super(),this.isMeshMatcapNodeMaterial=!0,this.setDefaultValues(KN),this.setValues(e)}setupVariants(e){let t=Kv,s;e.material.matcap?s=Di("matcap","texture").context({getUV:()=>t}):s=v(le(.2,.8,t.y)),we.rgb.mulAssign(s.rgb)}},Lm=class extends Be{static get type(){return"RotateNode"}constructor(e,t){super(),this.positionNode=e,this.rotationNode=t}getNodeType(e){return this.positionNode.getNodeType(e)}setup(e){let{rotationNode:t,positionNode:s}=this;if(this.getNodeType(e)==="vec2"){let n=t.cos(),r=t.sin();return rd(n,r,r.negate(),n).mul(s)}else{let n=t,r=gn(Z(1,0,0,0),Z(0,Rs(n.x),Bt(n.x).negate(),0),Z(0,Bt(n.x),Rs(n.x),0),Z(0,0,0,1)),a=gn(Z(Rs(n.y),0,Bt(n.y),0),Z(0,1,0,0),Z(Bt(n.y).negate(),0,Rs(n.y),0),Z(0,0,0,1)),c=gn(Z(Rs(n.z),Bt(n.z).negate(),0,0),Z(Bt(n.z),Rs(n.z),0,0),Z(0,0,1,0),Z(0,0,0,1));return r.mul(a).mul(c).mul(Z(s,1)).xyz}}},Pc=oe(Lm).setParameterLength(2),eR=new bl,Sh=class extends Ne{static get type(){return"SpriteNodeMaterial"}constructor(e){super(),this.isSpriteNodeMaterial=!0,this._useSizeAttenuation=!0,this.positionNode=null,this.rotationNode=null,this.scaleNode=null,this.transparent=!0,this.setDefaultValues(eR),this.setValues(e)}setupPositionView(e){let{object:t,camera:s}=e,{positionNode:i,rotationNode:n,scaleNode:r,sizeAttenuation:a}=this,c=wn.mul(v(i||0)),l=U(ls[0].xyz.length(),ls[1].xyz.length());r!==null&&(l=l.mul(U(r))),s.isPerspectiveCamera&&a===!1&&(l=l.mul(c.z.negate()));let u=Ic.xy;if(t.center&&t.center.isVector2===!0){let p=GM("center","vec2",t);u=u.sub(p.sub(.5))}u=u.mul(l);let h=b(n||cv),d=Pc(u,h);return Z(c.xy.add(d),c.zw)}copy(e){return this.positionNode=e.positionNode,this.rotationNode=e.rotationNode,this.scaleNode=e.scaleNode,super.copy(e)}get sizeAttenuation(){return this._useSizeAttenuation}set sizeAttenuation(e){this._useSizeAttenuation!==e&&(this._useSizeAttenuation=e,this.needsUpdate=!0)}},tR=new Sl,sR=new re,Um=class extends Sh{static get type(){return"PointsNodeMaterial"}constructor(e){super(),this.sizeNode=null,this.isPointsNodeMaterial=!0,this.setDefaultValues(tR),this.setValues(e)}setupPositionView(){let{positionNode:e}=this;return wn.mul(v(e||Ve)).xyz}setupVertexSprite(e){let{material:t,camera:s}=e,{rotationNode:i,scaleNode:n,sizeNode:r,sizeAttenuation:a}=this,c=super.setupVertex(e);if(t.isNodeMaterial!==!0)return c;let l=r!==null?U(r):wv;l=l.mul(TS),s.isPerspectiveCamera&&a===!0&&(l=l.mul(iR.div(qe.z.negate()))),n&&n.isNode&&(l=l.mul(U(n)));let u=Ic.xy;if(i&&i.isNode){let h=b(i);u=Pc(u,h)}return u=u.mul(l),u=u.div(Ux.div(2)),u=u.mul(c.w),c=c.add(Z(u,0,0)),c}setupVertex(e){return e.object.isPoints?super.setupVertex(e):this.setupVertexSprite(e)}get alphaToCoverage(){return this._useAlphaToCoverage}set alphaToCoverage(e){this._useAlphaToCoverage!==e&&(this._useAlphaToCoverage=e,this.needsUpdate=!0)}},iR=j(1).onFrameUpdate(function({renderer:o}){let e=o.getSize(sR);this.value=.5*e.y}),Om=class extends Mo{constructor(){super(),this.shadowNode=b(1).toVar("shadowMask")}direct({lightNode:e}){e.shadowNode!==null&&this.shadowNode.mulAssign(e.shadowNode)}finish({context:e}){we.a.mulAssign(this.shadowNode.oneMinus()),e.outgoingLight.rgb.assign(we.rgb)}},nR=new Al,Vm=class extends Ne{static get type(){return"ShadowNodeMaterial"}constructor(e){super(),this.isShadowNodeMaterial=!0,this.lights=!0,this.transparent=!0,this.setDefaultValues(nR),this.setValues(e)}setupLightingModel(){return new Om}},fD=Ui("vec3"),mD=Ui("vec3"),gD=Ui("vec3");var km=class{constructor(e,t,s){this.renderer=e,this.nodes=t,this.info=s,this._context=typeof self<"u"?self:null,this._animationLoop=null,this._requestId=null}start(){let e=(t,s)=>{this._requestId=this._context.requestAnimationFrame(e),this.info.autoReset===!0&&this.info.reset(),this.nodes.nodeFrame.update(),this.info.frame=this.nodes.nodeFrame.frameId,this.renderer._inspector.begin(),this._animationLoop!==null&&this._animationLoop(t,s),this.renderer._inspector.finish()};e()}stop(){this._context.cancelAnimationFrame(this._requestId),this._requestId=null}getAnimationLoop(){return this._animationLoop}setAnimationLoop(e){this._animationLoop=e}getContext(){return this._context}setContext(e){this._context=e}dispose(){this.stop()}},pi=class{constructor(){this.weakMaps={}}_getWeakMap(e){let t=e.length,s=this.weakMaps[t];return s===void 0&&(s=new WeakMap,this.weakMaps[t]=s),s}get(e){let t=this._getWeakMap(e);for(let s=0;s{this.dispose()},this.onGeometryDispose=()=>{this.attributes=null,this.attributesId=null},this.material.addEventListener("dispose",this.onMaterialDispose),this.geometry.addEventListener("dispose",this.onGeometryDispose)}updateClipping(e){this.clippingContext=e}get clippingNeedsUpdate(){return this.clippingContext===null||this.clippingContext.cacheKey===this.clippingContextCacheKey?!1:(this.clippingContextCacheKey=this.clippingContext.cacheKey,!0)}get hardwareClippingPlanes(){return this.material.hardwareClipping===!0?this.clippingContext.unionClippingCount:0}getNodeBuilderState(){return this._nodeBuilderState||(this._nodeBuilderState=this._nodes.getForRender(this))}getMonitor(){return this._monitor||(this._monitor=this.getNodeBuilderState().observer)}getBindings(){return this._bindings||(this._bindings=this.getNodeBuilderState().createBindings())}getBindingGroup(e){for(let t of this.getBindings())if(t.name===e)return t}getIndex(){return this._geometries.getIndex(this)}getIndirect(){return this._geometries.getIndirect(this)}getIndirectOffset(){return this._geometries.getIndirectOffset(this)}getChainArray(){return[this.object,this.material,this.context,this.lightsNode]}setGeometry(e){this.geometry=e,this.attributes=null,this.attributesId=null}getAttributes(){if(this.attributes!==null)return this.attributes;let e=this.getNodeBuilderState().nodeAttributes,t=this.geometry,s=[],i=new Set,n={};for(let r of e){let a;if(r.node&&r.node.attribute?a=r.node.attribute:(a=t.getAttribute(r.name),n[r.name]=a.id),a===void 0)continue;s.push(a);let c=a.isInterleavedBufferAttribute?a.data:a;i.add(c)}return this.attributes=s,this.attributesId=n,this.vertexBuffers=Array.from(i.values()),s}getVertexBuffers(){return this.vertexBuffers===null&&this.getAttributes(),this.vertexBuffers}getDrawParameters(){let{object:e,material:t,geometry:s,group:i,drawRange:n}=this,r=this.drawParams||(this.drawParams={vertexCount:0,firstVertex:0,instanceCount:0,firstInstance:0}),a=this.getIndex(),c=a!==null,l=1;if(s.isInstancedBufferGeometry===!0?l=s.instanceCount:e.count!==void 0&&(l=Math.max(0,e.count)),l===0)return null;if(r.instanceCount=l,e.isBatchedMesh===!0)return r;let u=1;t.wireframe===!0&&!e.isPoints&&!e.isLineSegments&&!e.isLine&&!e.isLineLoop&&(u=2);let h=n.start*u,d=(n.start+n.count)*u;i!==null&&(h=Math.max(h,i.start*u),d=Math.min(d,(i.start+i.count)*u));let p=s.attributes.position,m=1/0;c?m=a.count:p!=null&&(m=p.count),h=Math.max(h,0),d=Math.min(d,m);let g=d-h;return g<0||g===1/0?null:(r.vertexCount=g,r.firstVertex=h,r)}getGeometryCacheKey(){let{geometry:e}=this,t="";for(let s of Object.keys(e.attributes).sort()){let i=e.attributes[s];t+=s+",",i.data&&(t+=i.data.stride+","),i.offset&&(t+=i.offset+","),i.itemSize&&(t+=i.itemSize+","),i.normalized&&(t+="n,")}for(let s of Object.keys(e.morphAttributes).sort()){let i=e.morphAttributes[s];t+="morph-"+s+",";for(let n=0,r=i.length;n1||Array.isArray(e.morphTargetInfluences))&&(i+=e.uuid+","),i+=this.context.id+",",i+=e.receiveShadow+",",Ro(i)}get needsGeometryUpdate(){if(this.geometry.id!==this.object.geometry.id)return!0;if(this.attributes!==null){let e=this.attributesId;for(let t in e){let s=this.geometry.getAttribute(t);if(s===void 0||e[t]!==s.id)return!0}}return!1}get needsUpdate(){return this.initialNodesCacheKey!==this.getDynamicCacheKey()||this.clippingNeedsUpdate}getDynamicCacheKey(){let e=0;return this.material.isShadowPassMaterial!==!0&&(e=this._nodes.getCacheKey(this.scene,this.lightsNode)),this.camera.isArrayCamera&&(e=sc(e,this.camera.cameras.length)),this.object.receiveShadow&&(e=sc(e,1)),e=sc(e,this.renderer.contextNode.id,this.renderer.contextNode.version),e}getCacheKey(){return this.getMaterialCacheKey()+this.getDynamicCacheKey()}dispose(){this.material.removeEventListener("dispose",this.onMaterialDispose),this.geometry.removeEventListener("dispose",this.onGeometryDispose),this.onDispose()}},Ks=[],Gm=class{constructor(e,t,s,i,n,r){this.renderer=e,this.nodes=t,this.geometries=s,this.pipelines=i,this.bindings=n,this.info=r,this.chainMaps={}}get(e,t,s,i,n,r,a,c){let l=this.getChainMap(c);Ks[0]=e,Ks[1]=t,Ks[2]=r,Ks[3]=n;let u=l.get(Ks);return u===void 0?(u=this.createRenderObject(this.nodes,this.geometries,this.renderer,e,t,s,i,n,r,a,c),l.set(Ks,u)):(u.camera=i,u.updateClipping(a),u.needsGeometryUpdate&&u.setGeometry(e.geometry),(u.version!==t.version||u.needsUpdate)&&(u.initialCacheKey!==u.getCacheKey()?(u.dispose(),u=this.get(e,t,s,i,n,r,a,c)):u.version=t.version)),Ks[0]=null,Ks[1]=null,Ks[2]=null,Ks[3]=null,u}getChainMap(e="default"){return this.chainMaps[e]||(this.chainMaps[e]=new pi)}dispose(){this.chainMaps={}}createRenderObject(e,t,s,i,n,r,a,c,l,u,h){let d=this.getChainMap(h),p=new zm(e,t,s,i,n,r,a,c,l,u);return p.onDispose=()=>{this.pipelines.delete(p),this.bindings.deleteForRender(p),this.nodes.delete(p),d.delete(p.getChainArray())},p}},fi=class{constructor(){this.data=new WeakMap}get(e){let t=this.data.get(e);return t===void 0&&(t={},this.data.set(e,t)),t}delete(e){let t=null;return this.data.has(e)&&(t=this.data.get(e),this.data.delete(e)),t}has(e){return this.data.has(e)}dispose(){this.data=new WeakMap}},us={VERTEX:1,INDEX:2,STORAGE:3,INDIRECT:4},pn=16,aR=211,cR=212,Wm=class extends fi{constructor(e){super(),this.backend=e}delete(e){let t=super.delete(e);return t!==null&&this.backend.destroyAttribute(e),t}update(e,t){let s=this.get(e);if(s.version===void 0)t===us.VERTEX?this.backend.createAttribute(e):t===us.INDEX?this.backend.createIndexAttribute(e):t===us.STORAGE?this.backend.createStorageAttribute(e):t===us.INDIRECT&&this.backend.createIndirectStorageAttribute(e),s.version=this._getBufferAttribute(e).version;else{let i=this._getBufferAttribute(e);(s.version=65535?jo:Yo)(e,1);return i.version=ew(o),i.__id=tw(o),i}var $m=class extends fi{constructor(e,t){super(),this.attributes=e,this.info=t,this.wireframes=new WeakMap,this.attributeCall=new WeakMap,this._geometryDisposeListeners=new Map}has(e){let t=e.geometry;return super.has(t)&&this.get(t).initialized===!0}updateForRender(e){this.has(e)===!1&&this.initGeometry(e),this.updateAttributes(e)}initGeometry(e){let t=e.geometry,s=this.get(t);s.initialized=!0,this.info.memory.geometries++;let i=()=>{this.info.memory.geometries--;let n=t.index,r=e.getAttributes();n!==null&&this.attributes.delete(n);for(let c of r)this.attributes.delete(c);let a=this.wireframes.get(t);a!==void 0&&this.attributes.delete(a),t.removeEventListener("dispose",i),this._geometryDisposeListeners.delete(t)};t.addEventListener("dispose",i),this._geometryDisposeListeners.set(t,i)}updateAttributes(e){let t=e.getAttributes();for(let n of t)n.isStorageBufferAttribute||n.isStorageInstancedBufferAttribute?this.updateAttribute(n,us.STORAGE):this.updateAttribute(n,us.VERTEX);let s=this.getIndex(e);s!==null&&this.updateAttribute(s,us.INDEX);let i=e.geometry.indirect;i!==null&&this.updateAttribute(i,us.INDIRECT)}updateAttribute(e,t){let s=this.info.render.calls;e.isInterleavedBufferAttribute?this.attributeCall.get(e)===void 0?(this.attributes.update(e,t),this.attributeCall.set(e,s)):this.attributeCall.get(e.data)!==s&&(this.attributes.update(e,t),this.attributeCall.set(e.data,s),this.attributeCall.set(e,s)):this.attributeCall.get(e)!==s&&(this.attributes.update(e,t),this.attributeCall.set(e,s))}getIndirect(e){return e.geometry.indirect}getIndirectOffset(e){return e.geometry.indirectOffset}getIndex(e){let{geometry:t,material:s}=e,i=t.index;if(s.wireframe===!0){let n=this.wireframes,r=n.get(t);r===void 0?(r=f_(t),n.set(t,r)):(r.version!==ew(t)||r.__id!==tw(t))&&(this.attributes.delete(r),r=f_(t),n.set(t,r)),i=r}return i}dispose(){for(let[e,t]of this._geometryDisposeListeners.entries())e.removeEventListener("dispose",t);this._geometryDisposeListeners.clear()}},qm=class{constructor(){this.autoReset=!0,this.frame=0,this.calls=0,this.render={calls:0,frameCalls:0,drawCalls:0,triangles:0,points:0,lines:0,timestamp:0},this.compute={calls:0,frameCalls:0,timestamp:0},this.memory={geometries:0,textures:0}}update(e,t,s){this.render.drawCalls++,e.isMesh||e.isSprite?this.render.triangles+=s*(t/3):e.isPoints?this.render.points+=s*t:e.isLineSegments?this.render.lines+=s*(t/2):e.isLine?this.render.lines+=s*(t-1):O("WebGPUInfo: Unknown object type.")}reset(){this.render.drawCalls=0,this.render.frameCalls=0,this.compute.frameCalls=0,this.render.triangles=0,this.render.points=0,this.render.lines=0}dispose(){this.reset(),this.calls=0,this.render.calls=0,this.compute.calls=0,this.render.timestamp=0,this.compute.timestamp=0,this.memory.geometries=0,this.memory.textures=0}},vh=class{constructor(e){this.cacheKey=e,this.usedTimes=0}},Hm=class extends vh{constructor(e,t,s){super(e),this.vertexProgram=t,this.fragmentProgram=s}},Xm=class extends vh{constructor(e,t){super(e),this.computeProgram=t,this.isComputePipeline=!0}},lR=0,cc=class{constructor(e,t,s,i=null,n=null){this.id=lR++,this.code=e,this.stage=t,this.name=s,this.transforms=i,this.attributes=n,this.usedTimes=0}},Ym=class extends fi{constructor(e,t){super(),this.backend=e,this.nodes=t,this.bindings=null,this.caches=new Map,this.programs={vertex:new Map,fragment:new Map,compute:new Map}}getForCompute(e,t){let{backend:s}=this,i=this.get(e);if(this._needsComputeUpdate(e)){let n=i.pipeline;n&&(n.usedTimes--,n.computeProgram.usedTimes--);let r=this.nodes.getForCompute(e),a=this.programs.compute.get(r.computeShader);a===void 0&&(n&&n.computeProgram.usedTimes===0&&this._releaseProgram(n.computeProgram),a=new cc(r.computeShader,"compute",e.name,r.transforms,r.nodeAttributes),this.programs.compute.set(r.computeShader,a),s.createProgram(a));let c=this._getComputeCacheKey(e,a),l=this.caches.get(c);l===void 0&&(n&&n.usedTimes===0&&this._releasePipeline(n),l=this._getComputePipeline(e,a,c,t)),l.usedTimes++,a.usedTimes++,i.version=e.version,i.pipeline=l}return i.pipeline}getForRender(e,t=null){let{backend:s}=this,i=this.get(e);if(this._needsRenderUpdate(e)){let n=i.pipeline;n&&(n.usedTimes--,n.vertexProgram.usedTimes--,n.fragmentProgram.usedTimes--);let r=e.getNodeBuilderState(),a=e.material?e.material.name:"",c=this.programs.vertex.get(r.vertexShader);c===void 0&&(n&&n.vertexProgram.usedTimes===0&&this._releaseProgram(n.vertexProgram),c=new cc(r.vertexShader,"vertex",a),this.programs.vertex.set(r.vertexShader,c),s.createProgram(c));let l=this.programs.fragment.get(r.fragmentShader);l===void 0&&(n&&n.fragmentProgram.usedTimes===0&&this._releaseProgram(n.fragmentProgram),l=new cc(r.fragmentShader,"fragment",a),this.programs.fragment.set(r.fragmentShader,l),s.createProgram(l));let u=this._getRenderCacheKey(e,c,l),h=this.caches.get(u);h===void 0?(n&&n.usedTimes===0&&this._releasePipeline(n),h=this._getRenderPipeline(e,c,l,u,t)):e.pipeline=h,h.usedTimes++,c.usedTimes++,l.usedTimes++,i.pipeline=h}return i.pipeline}delete(e){let t=this.get(e).pipeline;return t&&(t.usedTimes--,t.usedTimes===0&&this._releasePipeline(t),t.isComputePipeline?(t.computeProgram.usedTimes--,t.computeProgram.usedTimes===0&&this._releaseProgram(t.computeProgram)):(t.fragmentProgram.usedTimes--,t.vertexProgram.usedTimes--,t.vertexProgram.usedTimes===0&&this._releaseProgram(t.vertexProgram),t.fragmentProgram.usedTimes===0&&this._releaseProgram(t.fragmentProgram))),super.delete(e)}dispose(){super.dispose(),this.caches=new Map,this.programs={vertex:new Map,fragment:new Map,compute:new Map}}updateForRender(e){this.getForRender(e)}_getComputePipeline(e,t,s,i){s=s||this._getComputeCacheKey(e,t);let n=this.caches.get(s);return n===void 0&&(n=new Xm(s,t),this.caches.set(s,n),this.backend.createComputePipeline(n,i)),n}_getRenderPipeline(e,t,s,i,n){i=i||this._getRenderCacheKey(e,t,s);let r=this.caches.get(i);return r===void 0&&(r=new Hm(i,t,s),this.caches.set(i,r),e.pipeline=r,this.backend.createRenderPipeline(e,n)),r}_getComputeCacheKey(e,t){return e.id+","+t.id}_getRenderCacheKey(e,t,s){return t.id+","+s.id+","+this.backend.getRenderCacheKey(e)}_releasePipeline(e){this.caches.delete(e.cacheKey)}_releaseProgram(e){let t=e.code,s=e.stage;this.programs[s].delete(t)}_needsComputeUpdate(e){let t=this.get(e);return t.pipeline===void 0||t.version!==e.version}_needsRenderUpdate(e){return this.get(e).pipeline===void 0||this.backend.needsRenderUpdate(e)}},jm=class extends fi{constructor(e,t,s,i,n,r){super(),this.backend=e,this.textures=s,this.pipelines=n,this.attributes=i,this.nodes=t,this.info=r,this.pipelines.bindings=this}getForRender(e){let t=e.getBindings();for(let s of t){let i=this.get(s);i.bindGroup===void 0&&(this._init(s),this.backend.createBindings(s,t,0),i.bindGroup=s)}return t}getForCompute(e){let t=this.nodes.getForCompute(e).bindings;for(let s of t){let i=this.get(s);i.bindGroup===void 0&&(this._init(s),this.backend.createBindings(s,t,0),i.bindGroup=s)}return t}updateForCompute(e){this._updateBindings(this.getForCompute(e))}updateForRender(e){this._updateBindings(this.getForRender(e))}deleteForCompute(e){let t=this.nodes.getForCompute(e).bindings;for(let s of t)this.backend.deleteBindGroupData(s),this.delete(s)}deleteForRender(e){let t=e.getBindings();for(let s of t)this.backend.deleteBindGroupData(s),this.delete(s)}_updateBindings(e){for(let t of e)this._update(t,e)}_init(e){for(let t of e.bindings)if(t.isSampledTexture)this.textures.updateTexture(t.texture);else if(t.isSampler)this.textures.updateSampler(t.texture);else if(t.isStorageBuffer){let s=t.attribute,i=s.isIndirectStorageBufferAttribute?us.INDIRECT:us.STORAGE;this.attributes.update(s,i)}}_update(e,t){let{backend:s}=this,i=!1,n=!0,r=0,a=0;for(let c of e.bindings)if(this.nodes.updateGroup(c)!==!1){if(c.isStorageBuffer){let u=c.attribute,h=u.isIndirectStorageBufferAttribute?us.INDIRECT:us.STORAGE,d=s.get(c);this.attributes.update(u,h),d.attribute!==u&&(d.attribute=u,i=!0)}if(c.isUniformBuffer)c.update()&&s.updateBinding(c);else if(c.isSampledTexture){let u=c.update(),h=c.texture,d=this.textures.get(h);if(u&&(this.textures.updateTexture(h),c.generation!==d.generation&&(c.generation=d.generation,i=!0),d.bindGroups.add(e)),s.get(h).externalTexture!==void 0||d.isDefaultTexture?n=!1:(r=r*10+h.id,a+=h.version),h.isStorageTexture===!0&&h.mipmapsAutoUpdate===!0){let m=this.get(h);c.store===!0?m.needsMipmap=!0:this.textures.needsMipmaps(h)&&m.needsMipmap===!0&&(this.backend.generateMipmaps(h),m.needsMipmap=!1)}}else if(c.isSampler&&c.update()){let h=this.textures.updateSampler(c.texture);c.samplerKey!==h&&(c.samplerKey=h,i=!0)}c.isBuffer&&c.updateRanges.length>0&&c.clearUpdateRanges()}i===!0&&this.backend.updateBindings(e,t,n?r:0,a)}};function uR(o,e){return o.groupOrder!==e.groupOrder?o.groupOrder-e.groupOrder:o.renderOrder!==e.renderOrder?o.renderOrder-e.renderOrder:o.z!==e.z?o.z-e.z:o.id-e.id}function m_(o,e){return o.groupOrder!==e.groupOrder?o.groupOrder-e.groupOrder:o.renderOrder!==e.renderOrder?o.renderOrder-e.renderOrder:o.z!==e.z?e.z-o.z:o.id-e.id}function g_(o){return(o.transmission>0||o.transmissionNode&&o.transmissionNode.isNode)&&o.side===$s&&o.forceSinglePass===!1}var Zm=class{constructor(e,t,s){this.renderItems=[],this.renderItemsIndex=0,this.opaque=[],this.transparentDoublePass=[],this.transparent=[],this.bundles=[],this.lightsNode=e.getNode(t,s),this.lightsArray=[],this.scene=t,this.camera=s,this.occlusionQueryCount=0}begin(){return this.renderItemsIndex=0,this.opaque.length=0,this.transparentDoublePass.length=0,this.transparent.length=0,this.bundles.length=0,this.lightsArray.length=0,this.occlusionQueryCount=0,this}getNextRenderItem(e,t,s,i,n,r,a){let c=this.renderItems[this.renderItemsIndex];return c===void 0?(c={id:e.id,object:e,geometry:t,material:s,groupOrder:i,renderOrder:e.renderOrder,z:n,group:r,clippingContext:a},this.renderItems[this.renderItemsIndex]=c):(c.id=e.id,c.object=e,c.geometry=t,c.material=s,c.groupOrder=i,c.renderOrder=e.renderOrder,c.z=n,c.group=r,c.clippingContext=a),this.renderItemsIndex++,c}push(e,t,s,i,n,r,a){let c=this.getNextRenderItem(e,t,s,i,n,r,a);e.occlusionTest===!0&&this.occlusionQueryCount++,s.transparent===!0||s.transmission>0||s.transmissionNode&&s.transmissionNode.isNode||s.backdropNode&&s.backdropNode.isNode?(g_(s)&&this.transparentDoublePass.push(c),this.transparent.push(c)):this.opaque.push(c)}unshift(e,t,s,i,n,r,a){let c=this.getNextRenderItem(e,t,s,i,n,r,a);s.transparent===!0||s.transmission>0||s.transmissionNode&&s.transmissionNode.isNode||s.backdropNode&&s.backdropNode.isNode?(g_(s)&&this.transparentDoublePass.unshift(c),this.transparent.unshift(c)):this.opaque.unshift(c)}pushBundle(e){this.bundles.push(e)}pushLight(e){this.lightsArray.push(e)}sort(e,t){this.opaque.length>1&&this.opaque.sort(e||uR),this.transparentDoublePass.length>1&&this.transparentDoublePass.sort(t||m_),this.transparent.length>1&&this.transparent.sort(t||m_)}finish(){this.lightsNode.setLights(this.lightsArray);for(let e=this.renderItemsIndex,t=this.renderItems.length;e>t,l=a.height>>t,u=e.depthTexture||n[t],h=e.depthBuffer===!0||e.stencilBuffer===!0,d=!1;u===void 0&&h&&(u=new Rt,u.format=e.stencilBuffer?Hs:ns,u.type=e.stencilBuffer?Ei:Oe,u.image.width=c,u.image.height=l,u.image.depth=a.depth,u.renderTarget=e,u.isArrayTexture=e.multiview===!0&&a.depth>1,n[t]=u),(s.width!==a.width||a.height!==s.height)&&(d=!0,u&&(u.needsUpdate=!0,u.image.width=c,u.image.height=l,u.image.depth=u.isArrayTexture?u.image.depth:1)),s.width=a.width,s.height=a.height,s.textures=r,s.depthTexture=u||null,s.depth=e.depthBuffer,s.stencil=e.stencilBuffer,s.renderTarget=e,s.sampleCount!==i&&(d=!0,u&&(u.needsUpdate=!0),s.sampleCount=i);let p={sampleCount:i};if(e.isXRRenderTarget!==!0){for(let m=0;m{this._destroyRenderTarget(e)},e.addEventListener("dispose",s.onDispose))}updateTexture(e,t={}){let s=this.get(e);if(s.initialized===!0&&s.version===e.version)return;let i=e.isRenderTargetTexture||e.isDepthTexture||e.isFramebufferTexture,n=this.backend;if(i&&s.initialized===!0&&n.destroyTexture(e),e.isFramebufferTexture){let l=this.renderer.getRenderTarget();l?e.type=l.texture.type:e.type=lt}let{width:r,height:a,depth:c}=this.getSize(e);if(t.width=r,t.height=a,t.depth=c,t.needsMipmaps=this.needsMipmaps(e),t.levels=t.needsMipmaps?this.getMipLevels(e,r,a):1,e.isCubeTexture&&e.mipmaps.length>0&&t.levels++,i||e.isStorageTexture===!0||e.isExternalTexture===!0)n.createTexture(e,t),s.generation=e.version;else if(e.version>0){let l=e.image;if(l===void 0)z("Renderer: Texture marked for update but image is undefined.");else if(l.complete===!1)z("Renderer: Texture marked for update but image is incomplete.");else{if(e.images){let h=[];for(let d of e.images)h.push(d);t.images=h}else t.image=l;(s.isDefaultTexture===void 0||s.isDefaultTexture===!0)&&(n.createTexture(e,t),s.isDefaultTexture=!1,s.generation=e.version),e.source.dataReady===!0&&n.updateTexture(e,t);let u=e.isStorageTexture===!0&&e.mipmapsAutoUpdate===!1;t.needsMipmaps&&e.mipmaps.length===0&&!u&&n.generateMipmaps(e),e.onUpdate&&e.onUpdate(e)}}else n.createDefaultTexture(e),s.isDefaultTexture=!0,s.generation=e.version;s.initialized!==!0&&(s.initialized=!0,s.generation=e.version,s.bindGroups=new Set,this.info.memory.textures++,e.isVideoTexture&&me.enabled===!0&&me.getTransfer(e.colorSpace)!==ne&&z("WebGPURenderer: Video textures must use a color space with a sRGB transfer function, e.g. SRGBColorSpace."),s.onDispose=()=>{this._destroyTexture(e)},e.addEventListener("dispose",s.onDispose)),s.version=e.version}updateSampler(e){return this.backend.updateSampler(e)}getSize(e,t=dR){let s=e.images?e.images[0]:e.image;return s?(s.image!==void 0&&(s=s.image),typeof HTMLVideoElement<"u"&&s instanceof HTMLVideoElement?(t.width=s.videoWidth||1,t.height=s.videoHeight||1,t.depth=1):typeof VideoFrame<"u"&&s instanceof VideoFrame?(t.width=s.displayWidth||1,t.height=s.displayHeight||1,t.depth=1):(t.width=s.width||1,t.height=s.height||1,t.depth=e.isCubeTexture?6:s.depth||1)):t.width=t.height=t.depth=1,t}getMipLevels(e,t,s){let i;return e.mipmaps.length>0?i=e.mipmaps.length:e.isCompressedTexture===!0?i=1:i=Math.floor(Math.log2(Math.max(t,s)))+1,i}needsMipmaps(e){return e.generateMipmaps===!0||e.mipmaps.length>0}_destroyRenderTarget(e){if(this.has(e)===!0){let t=this.get(e),s=t.textures,i=t.depthTexture;e.removeEventListener("dispose",t.onDispose);for(let n=0;nnew wh(o,e),tg=class extends H{static get type(){return"StackNode"}constructor(e=null){super(),this.nodes=[],this.outputNode=null,this.parent=e,this._currentCond=null,this._expressionNode=null,this._currentNode=null,this.isStackNode=!0}getElementType(e){return this.hasOutput(e)?this.outputNode.getElementType(e):"void"}getNodeType(e){return this.hasOutput(e)?this.outputNode.getNodeType(e):"void"}getMemberType(e,t){return this.hasOutput(e)?this.outputNode.getMemberType(e,t):"void"}addToStack(e,t=this.nodes.length){return e.isNode!==!0?(O("TSL: Invalid node added to stack.",new ke),this):(this.nodes.splice(t,0,e),this)}addToStackBefore(e){let t=this._currentNode?this.nodes.indexOf(this._currentNode):0;return this.addToStack(e,t)}If(e,t){let s=new ho(t);return this._currentCond=vt(e,s),this.addToStack(this._currentCond)}ElseIf(e,t){let s=new ho(t),i=vt(e,s);return this._currentCond.elseNode=i,this._currentCond=i,this}Else(e){return this._currentCond.elseNode=new ho(e),this}Switch(e){return this._expressionNode=q(e),this}Case(...e){let t=[];if(e.length>=2)for(let a=0;a{if(this._currentNode=l,!(l.isVarNode&&l.isIntent(e)&&l.isAssign(e)!==!0)){if(i==="setup")l.build(e);else if(i==="analyze")l.build(e,this);else if(i==="generate"){let u=e.getDataFromNode(l,"any").stages,h=u&&u[e.shaderStage];if(l.isVarNode&&h&&h.length===1&&h[0]&&h[0].isStackNode)return;l.build(e,"void")}}},r=[...this.nodes];for(let l of r)n(l);this._currentNode=null;let a=this.nodes.filter(l=>r.indexOf(l)===-1);for(let l of a)n(l);let c;return this.hasOutput(e)?c=this.outputNode.build(e,...t):c=super.build(e,...t),pc(s),e.removeActiveStack(this),c}},Xu=oe(tg).setParameterLength(0,1);function fR(o){return Object.entries(o).map(([e,t])=>typeof t=="string"?{name:e,type:t,atomic:!1}:{name:e,type:t.type,atomic:t.atomic||!1})}var sg=class extends H{static get type(){return"StructTypeNode"}constructor(e,t=null){super("struct"),this.membersLayout=fR(e),this.name=t,this.isStructLayoutNode=!0}getLength(){let e=Float32Array.BYTES_PER_ELEMENT,t=1,s=0;for(let i of this.membersLayout){let n=i.type,r=aM(n),a=cM(n)/e;t=Math.max(t,a);let l=s%t%a;l!==0&&(s+=a-l),s+=r}return Math.ceil(s/t)*t}getMemberType(e,t){let s=this.membersLayout.find(i=>i.name===t);return s?s.type:"void"}getNodeType(e){return e.getStructTypeFromNode(this,this.membersLayout,this.name).name}setup(e){e.getStructTypeFromNode(this,this.membersLayout,this.name),e.addInclude(this)}generate(e){return this.getNodeType(e)}},ig=class extends H{static get type(){return"StructNode"}constructor(e,t){super("vec3"),this.structTypeNode=e,this.values=t,this.isStructNode=!0}getNodeType(e){return this.structTypeNode.getNodeType(e)}getMemberType(e,t){return this.structTypeNode.getMemberType(e,t)}_getChildren(){let e=super._getChildren(),t=e.find(s=>s.childNode===this.structTypeNode);return e.splice(e.indexOf(t),1),e.push(t),e}generate(e){let t=e.getVarFromNode(this),s=t.type,i=e.getPropertyName(t);return e.addLineFlowCode(`${i} = ${e.generateStruct(s,this.structTypeNode.membersLayout,this.values)}`,this),t.name}},mR=(o,e=null)=>{let t=new sg(o,e),s=(...i)=>{let n=null;if(i.length>0)if(i[0].isNode){n={};let r=Object.keys(o);for(let a=0;anew pr(o,"int","float"),ow=o=>new pr(o,"uint","float"),_R=o=>new pr(o,"float","int"),TR=o=>new pr(o,"float","uint"),Ru={},Ps=class o extends F{static get type(){return"BitcountNode"}constructor(e,t){super(e,t),this.isBitcountNode=!0}_resolveElementType(e,t,s){s==="int"?t.assign(rw(e,"uint")):t.assign(e)}_returnDataNode(e){switch(e){case"uint":return D;case"int":return T;case"uvec2":return tx;case"uvec3":return mr;case"uvec4":return rx;case"ivec2":return Qe;case"ivec3":return sx;case"ivec4":return nx}}_createTrailingZerosBaseLayout(e,t){let s=this._returnDataNode(t);return A(([n])=>{let r=D(0);this._resolveElementType(n,r,t);let a=b(r.bitAnd(xx(r))),l=ow(a).shiftRight(23).sub(127);return s(l)}).setLayout({name:e,type:t,inputs:[{name:"value",type:t}]})}_createLeadingZerosBaseLayout(e,t){let s=this._returnDataNode(t);return A(([n])=>{K(n.equal(D(0)),()=>D(32));let r=D(0),a=D(0);return this._resolveElementType(n,r,t),K(r.shiftRight(16).equal(0),()=>{a.addAssign(16),r.shiftLeftAssign(16)}),K(r.shiftRight(24).equal(0),()=>{a.addAssign(8),r.shiftLeftAssign(8)}),K(r.shiftRight(28).equal(0),()=>{a.addAssign(4),r.shiftLeftAssign(4)}),K(r.shiftRight(30).equal(0),()=>{a.addAssign(2),r.shiftLeftAssign(2)}),K(r.shiftRight(31).equal(0),()=>{a.addAssign(1)}),s(a)}).setLayout({name:e,type:t,inputs:[{name:"value",type:t}]})}_createOneBitsBaseLayout(e,t){let s=this._returnDataNode(t);return A(([n])=>{let r=D(0);this._resolveElementType(n,r,t),r.assign(r.sub(r.shiftRight(D(1)).bitAnd(D(1431655765)))),r.assign(r.bitAnd(D(858993459)).add(r.shiftRight(D(2)).bitAnd(D(858993459))));let a=r.add(r.shiftRight(D(4))).bitAnd(D(252645135)).mul(D(16843009)).shiftRight(D(24));return s(a)}).setLayout({name:e,type:t,inputs:[{name:"value",type:t}]})}_createMainLayout(e,t,s,i){let n=this._returnDataNode(t);return A(([a])=>{if(s===1)return n(i(a));{let c=n(0),l=["x","y","z","w"];for(let u=0;uh(s))()}};Ps.COUNT_TRAILING_ZEROS="countTrailingZeros";Ps.COUNT_LEADING_ZEROS="countLeadingZeros";Ps.COUNT_ONE_BITS="countOneBits";var SR=V(Ps,Ps.COUNT_TRAILING_ZEROS).setParameterLength(1),vR=V(Ps,Ps.COUNT_LEADING_ZEROS).setParameterLength(1),wR=V(Ps,Ps.COUNT_ONE_BITS).setParameterLength(1),MR=A(([o])=>{let e=o.toUint().mul(747796405).add(2891336453),t=e.shiftRight(e.shiftRight(28).add(4)).bitXor(e).mul(277803737);return t.shiftRight(22).bitXor(t).toFloat().mul(1/2**32)}),rg=(o,e)=>cs(se(4,o.mul(he(1,o))),e),AR=(o,e)=>o.lessThan(.5)?rg(o.mul(2),e).div(2):he(1,rg(se(he(1,o),2),e).div(2)),NR=(o,e,t)=>cs(ss(cs(o,e),Ye(cs(o,e),cs(he(1,o),t))),1/e),RR=(o,e)=>Bt(rh.mul(e.mul(o).sub(1))).div(rh.mul(e.mul(o).sub(1))),Sc=class extends Be{static get type(){return"PackFloatNode"}constructor(e,t){super(),this.vectorNode=t,this.encoding=e,this.isPackFloatNode=!0}getNodeType(){return"uint"}generate(e){let t=this.vectorNode.getNodeType(e);return`${e.getFloatPackingMethod(this.encoding)}(${this.vectorNode.build(e,t)})`}},CR=V(Sc,"snorm").setParameterLength(1),ER=V(Sc,"unorm").setParameterLength(1),BR=V(Sc,"float16").setParameterLength(1),vc=class extends Be{static get type(){return"UnpackFloatNode"}constructor(e,t){super(),this.uintNode=t,this.encoding=e,this.isUnpackFloatNode=!0}getNodeType(){return"vec2"}generate(e){let t=this.uintNode.getNodeType(e);return`${e.getFloatUnpackingMethod(this.encoding)}(${this.uintNode.build(e,t)})`}},FR=V(vc,"snorm").setParameterLength(1),IR=V(vc,"unorm").setParameterLength(1),PR=V(vc,"float16").setParameterLength(1),Pi=A(([o])=>o.fract().sub(.5).abs()).setLayout({name:"tri",type:"float",inputs:[{name:"x",type:"float"}]}),DR=A(([o])=>v(Pi(o.z.add(Pi(o.y.mul(1)))),Pi(o.z.add(Pi(o.x.mul(1)))),Pi(o.y.add(Pi(o.x.mul(1)))))).setLayout({name:"tri3",type:"vec3",inputs:[{name:"p",type:"vec3"}]}),LR=A(([o,e,t])=>{let s=v(o).toVar(),i=b(1.4).toVar(),n=b(0).toVar(),r=v(s).toVar();return Me({start:b(0),end:b(3),type:"float",condition:"<="},()=>{let a=v(DR(r.mul(2))).toVar();s.addAssign(a.add(t.mul(b(.1).mul(e)))),r.mulAssign(1.8),i.mulAssign(1.5),s.mulAssign(1.2);let c=b(Pi(s.z.add(Pi(s.x.add(Pi(s.y)))))).toVar();n.addAssign(c.div(i)),r.addAssign(.14)}),n}).setLayout({name:"triNoise3D",type:"float",inputs:[{name:"position",type:"vec3"},{name:"speed",type:"float"},{name:"time",type:"float"}]}),og=class extends H{static get type(){return"FunctionOverloadingNode"}constructor(e=[],...t){super(),this.functionNodes=e,this.parametersNodes=t,this._candidateFn=null,this.global=!0}getNodeType(e){return this.getCandidateFn(e).shaderNode.layout.type}getCandidateFn(e){let t=this.parametersNodes,s=this._candidateFn;if(s===null){let i=null,n=-1;for(let r of this.functionNodes){let c=r.shaderNode.layout;if(c===null)throw new Error("FunctionOverloadingNode: FunctionNode must be a layout.");let l=c.inputs;if(t.length===l.length){let u=0;for(let h=0;hn&&(i=r,n=u)}}this._candidateFn=s=i}return s}setup(e){return this.getCandidateFn(e)(...this.parametersNodes)}},UR=oe(og),ft=o=>(...e)=>UR(o,...e),Eo=j(0).setGroup(J).onRenderUpdate(o=>o.time),OR=j(0).setGroup(J).onRenderUpdate(o=>o.deltaTime),aw=j(0,"uint").setGroup(J).onRenderUpdate(o=>o.frameId),VR=(o=Eo)=>o.add(.75).mul(Math.PI*2).sin().mul(.5).add(.5),kR=(o=Eo)=>o.fract().round(),zR=(o=Eo)=>o.add(.5).fract().mul(2).sub(1).abs(),GR=(o=Eo)=>o.fract();function WR(o,e=null){return $i(e,{getUV:typeof o=="function"?o:()=>o})}var $R=A(([o,e,t=U(.5)])=>Pc(o.sub(t),e).add(t)),qR=A(([o,e,t=U(.5)])=>{let s=o.sub(t),i=s.dot(s),r=i.mul(i).mul(e);return o.add(s.mul(r))}),HR=A(({position:o=null,horizontal:e=!0,vertical:t=!1})=>{let s;o!==null?(s=ls.toVar(),s[3][0]=o.x,s[3][1]=o.y,s[3][2]=o.z):s=ls;let i=fs.mul(s);return dc(e)&&(i[0][0]=ls[0].length(),i[0][1]=0,i[0][2]=0),dc(t)&&(i[1][0]=0,i[1][1]=ls[1].length(),i[1][2]=0),i[2][0]=0,i[2][1]=0,i[2][2]=1,Oi.mul(i).mul(Ve)}),XR=A(([o=null])=>{let e=mh();return mh(Xx(o)).sub(e).lessThan(0).select(ci,o)}),YR=A(([o,e=Re(),t=b(0)])=>{let s=o.x,i=o.y,n=t.mod(s.mul(i)).floor(),r=n.mod(s),a=i.sub(n.add(1).div(s).ceil()),c=o.reciprocal(),l=U(r,a);return e.add(l).mul(c)}),cw=A(([o,e=null,t=null,s=b(1),i=Ve,n=zt])=>{let r=n.abs().normalize();r=r.div(r.dot(v(1)));let a=i.yz.mul(s),c=i.zx.mul(s),l=i.xy.mul(s),u=o.value,h=e!==null?e.value:u,d=t!==null?t.value:u,p=xe(u,a).mul(r.x),m=xe(h,c).mul(r.y),g=xe(d,l).mul(r.z);return Ye(p,m,g)}),jR=(...o)=>cw(...o),io=new xs,jn=new R,no=new R,Zp=new R,qa=new de,Cu=new R(0,0,-1),ei=new Te,Ha=new R,Eu=new R,Xa=new Te,Bu=new re,Nh=new bt,ZR=ci.flipX();Nh.depthTexture=new Rt(1,1);var Fu=!1,ag=class o extends ps{static get type(){return"ReflectorNode"}constructor(e={}){super(e.defaultTexture||Nh.texture,ZR),this._reflectorBaseNode=e.reflector||new cg(this,e),this._depthNode=null,this.setUpdateMatrix(!1)}get reflector(){return this._reflectorBaseNode}get target(){return this._reflectorBaseNode.target}getDepthNode(){if(this._depthNode===null){if(this._reflectorBaseNode.depth!==!0)throw new Error("THREE.ReflectorNode: Depth node can only be requested when the reflector is created with { depth: true }. ");this._depthNode=new o({defaultTexture:Nh.depthTexture,reflector:this._reflectorBaseNode})}return this._depthNode}setup(e){return e.object.isQuadMesh||this._reflectorBaseNode.build(e),super.setup(e)}clone(){let e=new this.constructor(this.reflectorNode);return e.uvNode=this.uvNode,e.levelNode=this.levelNode,e.biasNode=this.biasNode,e.sampler=this.sampler,e.depthNode=this.depthNode,e.compareNode=this.compareNode,e.gradNode=this.gradNode,e.offsetNode=this.offsetNode,e._reflectorBaseNode=this._reflectorBaseNode,e}dispose(){super.dispose(),this._reflectorBaseNode.dispose()}},cg=class extends H{static get type(){return"ReflectorBaseNode"}constructor(e,t={}){super();let{target:s=new tt,resolutionScale:i=1,generateMipmaps:n=!1,bounces:r=!0,depth:a=!1,samples:c=0}=t;this.textureNode=e,this.target=s,this.resolutionScale=i,t.resolution!==void 0&&(_e('ReflectorNode: The "resolution" parameter has been renamed to "resolutionScale".'),this.resolutionScale=t.resolution),this.generateMipmaps=n,this.bounces=r,this.depth=a,this.samples=c,this.updateBeforeType=r?te.RENDER:te.FRAME,this.virtualCameras=new WeakMap,this.renderTargets=new Map,this.forceUpdate=!1,this.hasOutput=!1}_updateResolution(e,t){let s=this.resolutionScale;t.getDrawingBufferSize(Bu),e.setSize(Math.round(Bu.width*s),Math.round(Bu.height*s))}setup(e){return this._updateResolution(Nh,e.renderer),super.setup(e)}dispose(){super.dispose();for(let e of this.renderTargets.values())e.dispose()}getVirtualCamera(e){let t=this.virtualCameras.get(e);return t===void 0&&(t=e.clone(),this.virtualCameras.set(e,t)),t}getRenderTarget(e){let t=this.renderTargets.get(e);return t===void 0&&(t=new bt(0,0,{type:$e,samples:this.samples}),this.generateMipmaps===!0&&(t.texture.minFilter=rb,t.texture.generateMipmaps=!0),this.depth===!0&&(t.depthTexture=new Rt),this.renderTargets.set(e,t)),t}updateBefore(e){if(this.bounces===!1&&Fu)return!1;Fu=!0;let{scene:t,camera:s,renderer:i,material:n}=e,{target:r}=this,a=this.getVirtualCamera(s),c=this.getRenderTarget(a);i.getDrawingBufferSize(Bu),this._updateResolution(c,i),no.setFromMatrixPosition(r.matrixWorld),Zp.setFromMatrixPosition(s.matrixWorld),qa.extractRotation(r.matrixWorld),jn.set(0,0,1),jn.applyMatrix4(qa),Ha.subVectors(no,Zp);let l=Ha.dot(jn)>0,u=!1;if(l===!0&&this.forceUpdate===!1){if(this.hasOutput===!1){Fu=!1;return}u=!0}Ha.reflect(jn).negate(),Ha.add(no),qa.extractRotation(s.matrixWorld),Cu.set(0,0,-1),Cu.applyMatrix4(qa),Cu.add(Zp),Eu.subVectors(no,Cu),Eu.reflect(jn).negate(),Eu.add(no),a.coordinateSystem=s.coordinateSystem,a.position.copy(Ha),a.up.set(0,1,0),a.up.applyMatrix4(qa),a.up.reflect(jn),a.lookAt(Eu),a.near=s.near,a.far=s.far,a.updateMatrixWorld(),a.projectionMatrix.copy(s.projectionMatrix),io.setFromNormalAndCoplanarPoint(jn,no),io.applyMatrix4(a.matrixWorldInverse),ei.set(io.normal.x,io.normal.y,io.normal.z,io.constant);let h=a.projectionMatrix;Xa.x=(Math.sign(ei.x)+h.elements[8])/h.elements[0],Xa.y=(Math.sign(ei.y)+h.elements[9])/h.elements[5],Xa.z=-1,Xa.w=(1+h.elements[10])/h.elements[14],ei.multiplyScalar(1/ei.dot(Xa));let d=0;h.elements[2]=ei.x,h.elements[6]=ei.y,h.elements[10]=i.coordinateSystem===Yt?ei.z-d:ei.z+1-d,h.elements[14]=ei.w,this.textureNode.value=c.texture,this.depth===!0&&(this.textureNode.getDepthNode().value=c.depthTexture),n.visible=!1;let p=i.getRenderTarget(),m=i.getMRT(),g=i.autoClear;i.setMRT(null),i.setRenderTarget(c),i.autoClear=!0;let y=t.name;t.name=(t.name||"Scene")+" [ Reflector ]",u?(i.clear(),this.hasOutput=!1):(i.render(t,a),this.hasOutput=!0),t.name=y,i.setMRT(m),i.setRenderTarget(p),i.autoClear=g,n.visible=!0,Fu=!1,this.forceUpdate=!1}get resolution(){return _e('ReflectorNode: The "resolution" property has been renamed to "resolutionScale".'),this.resolutionScale}set resolution(e){_e('ReflectorNode: The "resolution" property has been renamed to "resolutionScale".'),this.resolutionScale=e}},JR=o=>new ag(o),Jp=new Gr(-1,1,1,-1,0,1),lg=class extends vs{constructor(e=!1){super();let t=e===!1?[0,-1,0,1,2,1]:[0,2,0,0,2,0];this.setAttribute("position",new nt([-1,3,0,-1,-1,0,3,-1,0],3)),this.setAttribute("uv",new nt(t,2))}},QR=new lg,Gi=class extends Zt{constructor(e=null){super(QR,e),this.camera=Jp,this.isQuadMesh=!0}async renderAsync(e){_e('QuadMesh: "renderAsync()" has been deprecated. Use "render()" and "await renderer.init();" when creating the renderer.'),await e.init(),e.render(this,Jp)}render(e){e.render(this,Jp)}},KR=new re,ug=class extends ps{static get type(){return"RTTNode"}constructor(e,t=null,s=null,i={type:$e}){let n=new bt(t,s,i);super(n.texture,Re()),this.isRTTNode=!0,this.node=e,this.width=t,this.height=s,this.pixelRatio=1,this.renderTarget=n,this.textureNeedsUpdate=!0,this.autoUpdate=!0,this._rttNode=null,this._quadMesh=new Gi(new Ne),this.updateBeforeType=te.RENDER}get autoResize(){return this.width===null}setup(e){return this._rttNode=this.node.context(e.getSharedContext()),this._quadMesh.material.name="RTT",this._quadMesh.material.needsUpdate=!0,super.setup(e)}setSize(e,t){this.width=e,this.height=t;let s=e*this.pixelRatio,i=t*this.pixelRatio;this.renderTarget.setSize(s,i),this.textureNeedsUpdate=!0}setPixelRatio(e){this.pixelRatio=e,this.setSize(this.width,this.height)}updateBefore({renderer:e}){if(this.textureNeedsUpdate===!1&&this.autoUpdate===!1)return;if(this.textureNeedsUpdate=!1,this.autoResize===!0){let i=e.getPixelRatio(),n=e.getSize(KR),r=Math.floor(n.width*i),a=Math.floor(n.height*i);(r!==this.renderTarget.width||a!==this.renderTarget.height)&&(this.renderTarget.setSize(r,a),this.textureNeedsUpdate=!0)}let t="RTT";this.node.name&&(t=this.node.name+" [ "+t+" ]"),this._quadMesh.material.fragmentNode=this._rttNode,this._quadMesh.name=t;let s=e.getRenderTarget();e.setRenderTarget(this.renderTarget),this._quadMesh.render(e),e.setRenderTarget(s)}clone(){let e=new ps(this.value,this.uvNode,this.levelNode);return e.sampler=this.sampler,e.referenceNode=this,e}},lw=(o,...e)=>new ug(q(o),...e),eC=(o,...e)=>o.isSampleNode||o.isTextureNode?o:o.isPassNode?o.getTextureNode():lw(o,...e),uo=A(([o,e,t],s)=>{let i;s.renderer.coordinateSystem===Yt?(o=U(o.x,o.y.oneMinus()).mul(2).sub(1),i=Z(v(o,e),1)):i=Z(v(o.x,o.y.oneMinus(),e).mul(2).sub(1),1);let n=Z(t.mul(i));return n.xyz.div(n.w)}),tC=A(([o,e])=>{let t=e.mul(Z(o,1)),s=t.xy.div(t.w).mul(.5).add(.5).toVar();return U(s.x,s.y.oneMinus())}),sC=A(([o,e,t])=>{let s=yn(Ge(e)),i=Qe(o.mul(s)).toVar(),n=Ge(e,i).toVar(),r=Ge(e,i.sub(Qe(2,0))).toVar(),a=Ge(e,i.sub(Qe(1,0))).toVar(),c=Ge(e,i.add(Qe(1,0))).toVar(),l=Ge(e,i.add(Qe(2,0))).toVar(),u=Ge(e,i.add(Qe(0,2))).toVar(),h=Ge(e,i.add(Qe(0,1))).toVar(),d=Ge(e,i.sub(Qe(0,1))).toVar(),p=Ge(e,i.sub(Qe(0,2))).toVar(),m=Ee(he(b(2).mul(a).sub(r),n)).toVar(),g=Ee(he(b(2).mul(c).sub(l),n)).toVar(),y=Ee(he(b(2).mul(h).sub(u),n)).toVar(),x=Ee(he(b(2).mul(d).sub(p),n)).toVar(),_=uo(o,n,t).toVar(),w=m.lessThan(g).select(_.sub(uo(o.sub(U(b(1).div(s.x),0)),a,t)),_.negate().add(uo(o.add(U(b(1).div(s.x),0)),c,t))),S=y.lessThan(x).select(_.sub(uo(o.add(U(0,b(1).div(s.y))),h,t)),_.negate().add(uo(o.sub(U(0,b(1).div(s.y))),d,t)));return Ut(ki(w,S))}),i0=A(([o])=>Es(b(52.9829189).mul(Es(ds(o,U(.06711056,.00583715)))))).setLayout({name:"interleavedGradientNoise",type:"float",inputs:[{name:"position",type:"vec2"}]}),Cs=A(([o,e,t])=>{let s=b(2.399963229728653),i=It(b(o).add(.5).div(b(e))),n=b(o).mul(s).add(t);return U(Rs(n),Bt(n)).mul(i)}).setLayout({name:"vogelDiskSample",type:"vec2",inputs:[{name:"sampleIndex",type:"int"},{name:"samplesCount",type:"int"},{name:"phi",type:"float"}]}),hg=class extends H{static get type(){return"SampleNode"}constructor(e,t=null){super(),this.callback=e,this.uvNode=t,this.isSampleNode=!0}setup(){return this.sample(Re())}sample(e){return this.callback(e)}},iC=(o,e=null)=>new hg(o,q(e)),Ds=class o extends H{static get type(){return"EventNode"}constructor(e,t){super("void"),this.eventType=e,this.callback=t,e===o.OBJECT?this.updateType=te.OBJECT:e===o.MATERIAL?this.updateType=te.RENDER:e===o.BEFORE_OBJECT?this.updateBeforeType=te.OBJECT:e===o.BEFORE_MATERIAL&&(this.updateBeforeType=te.RENDER)}update(e){this.callback(e)}updateBefore(e){this.callback(e)}};Ds.OBJECT="object";Ds.MATERIAL="material";Ds.BEFORE_OBJECT="beforeObject";Ds.BEFORE_MATERIAL="beforeMaterial";var _d=(o,e)=>new Ds(o,e).toStack(),nC=o=>_d(Ds.OBJECT,o),rC=o=>_d(Ds.MATERIAL,o),oC=o=>_d(Ds.BEFORE_OBJECT,o),aC=o=>_d(Ds.BEFORE_MATERIAL,o),dg=class extends Ai{constructor(e,t,s=Float32Array){let i=ArrayBuffer.isView(e)?e:new s(e*t);super(i,t),this.isStorageInstancedBufferAttribute=!0}},pg=class extends yt{constructor(e,t,s=Float32Array){let i=ArrayBuffer.isView(e)?e:new s(e*t);super(i,t),this.isStorageBufferAttribute=!0}},cC=(o,e="float")=>{let t,s;e.isStruct===!0?(t=e.layout.getLength(),s=Yu("float")):(t=j_(e),s=Yu(e));let i=new pg(o,t,s);return xn(i,e,o)},lC=(o,e="float")=>{let t,s;e.isStruct===!0?(t=e.layout.getLength(),s=Yu("float")):(t=j_(e),s=Yu(e));let i=new dg(o,t,s);return xn(i,e,i.count)},fg=class extends H{static get type(){return"PointUVNode"}constructor(){super("vec2"),this.isPointUVNode=!0}generate(){return"vec2( gl_PointCoord.x, 1.0 - gl_PointCoord.y )"}},uC=G(fg),Ya=new jt,Qp=new de,uw=j(0).setGroup(J).onRenderUpdate(({scene:o})=>o.backgroundBlurriness),mg=j(1).setGroup(J).onRenderUpdate(({scene:o})=>o.backgroundIntensity),hw=j(new de).setGroup(J).onRenderUpdate(({scene:o})=>{let e=o.background;return e!==null&&e.isTexture&&e.mapping!==tu?(Ya.copy(o.backgroundRotation),Ya.x*=-1,Ya.y*=-1,Ya.z*=-1,Qp.makeRotationFromEuler(Ya)):Qp.identity(),Qp}),gg=class extends ps{static get type(){return"StorageTextureNode"}constructor(e,t,s=null){super(e,t),this.storeNode=s,this.mipLevel=0,this.isStorageTextureNode=!0,this.access=dt.WRITE_ONLY}getInputType(){return"storageTexture"}setup(e){super.setup(e);let t=e.getNodeProperties(this);return t.storeNode=this.storeNode,t}setAccess(e){return this.access=e,this}setMipLevel(e){return this.mipLevel=e,this}generate(e,t){let s;return this.storeNode!==null?s=this.generateStore(e):s=super.generate(e,t),s}generateSnippet(e,t,s,i,n,r,a,c,l){let u=this.value;return e.generateStorageTextureLoad(u,t,s,i,r,l)}toReadWrite(){return this.setAccess(dt.READ_WRITE)}toReadOnly(){return this.setAccess(dt.READ_ONLY)}toWriteOnly(){return this.setAccess(dt.WRITE_ONLY)}generateStore(e){let t=e.getNodeProperties(this),{uvNode:s,storeNode:i,depthNode:n}=t,r=super.generate(e,"property"),a=s.build(e,this.value.is3DTexture===!0?"uvec3":"uvec2"),c=i.build(e,"vec4"),l=n?n.build(e,"int"):null,u=e.generateTextureStore(e,r,a,l,c);e.addLineFlowCode(u,this)}clone(){let e=super.clone();return e.storeNode=this.storeNode,e.mipLevel=this.mipLevel,e.access=this.access,e}},dw=oe(gg).setParameterLength(1,3),hC=(o,e,t)=>{let s;return o.isStorageTextureNode===!0?(s=o.clone(),s.uvNode=e,s.storeNode=t):s=dw(o,e,t),t!==null&&s.toStack(),s},dC=A(({texture:o,uv:e})=>{let s=v().toVar();return K(e.x.lessThan(1e-4),()=>{s.assign(v(1,0,0))}).ElseIf(e.y.lessThan(1e-4),()=>{s.assign(v(0,1,0))}).ElseIf(e.z.lessThan(1e-4),()=>{s.assign(v(0,0,1))}).ElseIf(e.x.greaterThan(1-1e-4),()=>{s.assign(v(-1,0,0))}).ElseIf(e.y.greaterThan(1-1e-4),()=>{s.assign(v(0,-1,0))}).ElseIf(e.z.greaterThan(1-1e-4),()=>{s.assign(v(0,0,-1))}).Else(()=>{let n=o.sample(e.add(v(-.01,0,0))).r.sub(o.sample(e.add(v(.01,0,0))).r),r=o.sample(e.add(v(0,-.01,0))).r.sub(o.sample(e.add(v(0,.01,0))).r),a=o.sample(e.add(v(0,0,-.01))).r.sub(o.sample(e.add(v(0,0,.01))).r);s.assign(v(n,r,a))}),s.normalize()}),yg=class extends ps{static get type(){return"Texture3DNode"}constructor(e,t=null,s=null){super(e,t,s),this.isTexture3DNode=!0}getInputType(){return"texture3D"}getDefaultUV(){return v(.5,.5,.5)}setUpdateMatrix(){}generateUV(e,t){return t.build(e,this.sampler===!0?"vec3":"ivec3")}generateOffset(e,t){return t.build(e,"ivec3")}normal(e){return dC({texture:this,uv:e})}},Td=oe(yg).setParameterLength(1,3),pC=(...o)=>Td(...o).setSampler(!1),fC=(o,e,t)=>Td(o,e).level(t),xg=class extends So{static get type(){return"UserDataNode"}constructor(e,t,s=null){super(e,t,s),this.userData=s}updateReference(e){return this.reference=this.userData!==null?this.userData:e.object.userData,this.reference}},mC=(o,e,t)=>new xg(o,e,t),y_=new WeakMap,bg=class extends Be{static get type(){return"VelocityNode"}constructor(){super("vec2"),this.projectionMatrix=null,this.updateType=te.OBJECT,this.updateAfterType=te.OBJECT,this.previousModelWorldMatrix=j(new de),this.previousProjectionMatrix=j(new de).setGroup(J),this.previousCameraViewMatrix=j(new de)}setProjectionMatrix(e){this.projectionMatrix=e}update({frameId:e,camera:t,object:s}){let i=x_(s);this.previousModelWorldMatrix.value.copy(i);let n=pw(t);n.frameId!==e&&(n.frameId=e,n.previousProjectionMatrix===void 0?(n.previousProjectionMatrix=new de,n.previousCameraViewMatrix=new de,n.currentProjectionMatrix=new de,n.currentCameraViewMatrix=new de,n.previousProjectionMatrix.copy(this.projectionMatrix||t.projectionMatrix),n.previousCameraViewMatrix.copy(t.matrixWorldInverse)):(n.previousProjectionMatrix.copy(n.currentProjectionMatrix),n.previousCameraViewMatrix.copy(n.currentCameraViewMatrix)),n.currentProjectionMatrix.copy(this.projectionMatrix||t.projectionMatrix),n.currentCameraViewMatrix.copy(t.matrixWorldInverse),this.previousProjectionMatrix.value.copy(n.previousProjectionMatrix),this.previousCameraViewMatrix.value.copy(n.previousCameraViewMatrix))}updateAfter({object:e}){x_(e).copy(e.matrixWorld)}setup(){let e=this.projectionMatrix===null?Oi:j(this.projectionMatrix),t=this.previousCameraViewMatrix.mul(this.previousModelWorldMatrix),s=e.mul(wn).mul(Ve),i=this.previousProjectionMatrix.mul(t).mul(_o),n=s.xy.div(s.w),r=i.xy.div(i.w);return he(n,r)}};function pw(o){let e=y_.get(o);return e===void 0&&(e={},y_.set(o,e)),e}function x_(o,e=0){let t=pw(o),s=t[e];return s===void 0&&(t[e]=s=new de,t[e].copy(o.matrixWorld)),s}var gC=G(bg),yC=A(([o])=>n0(o.rgb)),xC=A(([o,e=b(1)])=>e.mix(n0(o.rgb),o.rgb)),bC=A(([o,e=b(1)])=>{let t=Ye(o.r,o.g,o.b).div(3),s=o.r.max(o.g.max(o.b)),i=s.sub(t).mul(e).mul(-3);return le(o.rgb,s,i)}),_C=A(([o,e=b(1)])=>{let t=v(.57735,.57735,.57735),s=e.cos();return v(o.rgb.mul(s).add(t.cross(o.rgb).mul(e.sin()).add(t.mul(ds(t,o.rgb).mul(s.oneMinus())))))}),n0=(o,e=v(me.getLuminanceCoefficients(new R)))=>ds(o,e),TC=A(([o,e=v(1),t=v(0),s=v(1),i=b(1),n=v(me.getLuminanceCoefficients(new R,Ho))])=>{let r=o.rgb.dot(v(n)),a=ze(o.rgb.mul(e).add(t),0).toVar(),c=a.pow(s).toVar();return K(a.r.greaterThan(0),()=>{a.r.assign(c.r)}),K(a.g.greaterThan(0),()=>{a.g.assign(c.g)}),K(a.b.greaterThan(0),()=>{a.b.assign(c.b)}),a.assign(r.add(a.sub(r).mul(i))),Z(a.rgb,o.a)}),SC=A(([o,e])=>o.mul(e).floor().div(e)),Iu=null,_g=class extends wo{static get type(){return"ViewportSharedTextureNode"}constructor(e=ci,t=null){Iu===null&&(Iu=new Or),super(e,t,Iu)}getTextureForReference(){return Iu}updateReference(){return this}},vC=oe(_g).setParameterLength(0,2),Pu=new re,Rh=class extends ps{static get type(){return"PassTextureNode"}constructor(e,t){super(t),this.passNode=e,this.isPassTextureNode=!0,this.setUpdateMatrix(!1)}setup(e){let t=e.getNodeProperties(this);return t.passNode=this.passNode,super.setup(e)}clone(){return new this.constructor(this.passNode,this.value)}},Ch=class extends Rh{static get type(){return"PassMultipleTextureNode"}constructor(e,t,s=!1){super(e,null),this.textureName=t,this.previousTexture=s,this.isPassMultipleTextureNode=!0}updateTexture(){this.value=this.previousTexture?this.passNode.getPreviousTexture(this.textureName):this.passNode.getTexture(this.textureName)}setup(e){return this.updateTexture(),super.setup(e)}clone(){let e=new this.constructor(this.passNode,this.textureName,this.previousTexture);return e.uvNode=this.uvNode,e.levelNode=this.levelNode,e.biasNode=this.biasNode,e.sampler=this.sampler,e.depthNode=this.depthNode,e.compareNode=this.compareNode,e.gradNode=this.gradNode,e.offsetNode=this.offsetNode,e}},mi=class o extends Be{static get type(){return"PassNode"}constructor(e,t,s,i={}){super("vec4"),this.scope=e,this.scene=t,this.camera=s,this.options=i,this._pixelRatio=1,this._width=1,this._height=1;let n=new Rt;n.isRenderTargetTexture=!0,n.name="depth";let r=new bt(this._width*this._pixelRatio,this._height*this._pixelRatio,{type:$e,...i});r.texture.name="output",r.depthTexture=n,this.renderTarget=r,this.overrideMaterial=null,this.transparent=!0,this.opaque=!0,this.contextNode=null,this._contextNodeCache=null,this._textures={output:r.texture,depth:n},this._textureNodes={},this._linearDepthNodes={},this._viewZNodes={},this._previousTextures={},this._previousTextureNodes={},this._cameraNear=j(0),this._cameraFar=j(0),this._mrt=null,this._layers=null,this._resolutionScale=1,this._viewport=null,this._scissor=null,this.isPassNode=!0,this.updateBeforeType=te.FRAME,this.global=!0}setResolutionScale(e){return this._resolutionScale=e,this}getResolutionScale(){return this._resolutionScale}setResolution(e){return z("PassNode: .setResolution() is deprecated. Use .setResolutionScale() instead."),this.setResolutionScale(e)}getResolution(){return z("PassNode: .getResolution() is deprecated. Use .getResolutionScale() instead."),this.getResolutionScale()}setLayers(e){return this._layers=e,this}getLayers(){return this._layers}setMRT(e){return this._mrt=e,this}getMRT(){return this._mrt}getTexture(e){let t=this._textures[e];return t===void 0&&(t=this.renderTarget.texture.clone(),t.name=e,this._textures[e]=t,this.renderTarget.textures.push(t)),t}getPreviousTexture(e){let t=this._previousTextures[e];return t===void 0&&(t=this.getTexture(e).clone(),this._previousTextures[e]=t),t}toggleTexture(e){let t=this._previousTextures[e];if(t!==void 0){let s=this._textures[e],i=this.renderTarget.textures.indexOf(s);this.renderTarget.textures[i]=t,this._textures[e]=t,this._previousTextures[e]=s,this._textureNodes[e].updateTexture(),this._previousTextureNodes[e].updateTexture()}}getTextureNode(e="output"){let t=this._textureNodes[e];return t===void 0&&(t=new Ch(this,e),t.updateTexture(),this._textureNodes[e]=t),t}getPreviousTextureNode(e="output"){let t=this._previousTextureNodes[e];return t===void 0&&(this._textureNodes[e]===void 0&&this.getTextureNode(e),t=new Ch(this,e,!0),t.updateTexture(),this._previousTextureNodes[e]=t),t}getViewZNode(e="depth"){let t=this._viewZNodes[e];if(t===void 0){let s=this._cameraNear,i=this._cameraFar;this._viewZNodes[e]=t=jx(this.getTextureNode(e),s,i)}return t}getLinearDepthNode(e="depth"){let t=this._linearDepthNodes[e];if(t===void 0){let s=this._cameraNear,i=this._cameraFar,n=this.getViewZNode(e);this._linearDepthNodes[e]=t=xo(n,s,i)}return t}async compileAsync(e){let t=e.getRenderTarget(),s=e.getMRT();e.setRenderTarget(this.renderTarget),e.setMRT(this._mrt),await e.compileAsync(this.scene,this.camera),e.setRenderTarget(t),e.setMRT(s)}setup({renderer:e}){return this.renderTarget.samples=this.options.samples===void 0?e.samples:this.options.samples,this.renderTarget.texture.type=e.getOutputBufferType(),this.scope===o.COLOR?this.getTextureNode():this.getLinearDepthNode()}updateBefore(e){let{renderer:t}=e,{scene:s}=this,i,n,r=t.getOutputRenderTarget();r&&r.isXRRenderTarget===!0?(n=1,i=t.xr.getCamera(),t.xr.updateCamera(i),Pu.set(r.width,r.height)):(i=this.camera,n=t.getPixelRatio(),t.getSize(Pu)),this._pixelRatio=n,this.setSize(Pu.width,Pu.height);let a=t.getRenderTarget(),c=t.getMRT(),l=t.autoClear,u=t.transparent,h=t.opaque,d=i.layers.mask,p=t.contextNode,m=s.overrideMaterial;this._cameraNear.value=i.near,this._cameraFar.value=i.far,this._layers!==null&&(i.layers.mask=this._layers.mask);for(let y in this._previousTextures)this.toggleTexture(y);this.overrideMaterial!==null&&(s.overrideMaterial=this.overrideMaterial),t.setRenderTarget(this.renderTarget),t.setMRT(this._mrt),t.autoClear=!0,t.transparent=this.transparent,t.opaque=this.opaque,this.contextNode!==null&&((this._contextNodeCache===null||this._contextNodeCache.version!==this.version)&&(this._contextNodeCache={version:this.version,context:$i({...t.contextNode.getFlowContextData(),...this.contextNode.getFlowContextData()})}),t.contextNode=this._contextNodeCache.context);let g=s.name;s.name=this.name?this.name:s.name,t.render(s,i),s.name=g,s.overrideMaterial=m,t.setRenderTarget(a),t.setMRT(c),t.autoClear=l,t.transparent=u,t.opaque=h,t.contextNode=p,i.layers.mask=d}setSize(e,t){this._width=e,this._height=t;let s=Math.floor(this._width*this._pixelRatio*this._resolutionScale),i=Math.floor(this._height*this._pixelRatio*this._resolutionScale);this.renderTarget.setSize(s,i),this._scissor!==null&&this.renderTarget.scissor.copy(this._scissor),this._viewport!==null&&this.renderTarget.viewport.copy(this._viewport)}setScissor(e,t,s,i){e===null?this._scissor=null:(this._scissor===null&&(this._scissor=new Te),e.isVector4?this._scissor.copy(e):this._scissor.set(e,t,s,i),this._scissor.multiplyScalar(this._pixelRatio*this._resolutionScale).floor())}setViewport(e,t,s,i){e===null?this._viewport=null:(this._viewport===null&&(this._viewport=new Te),e.isVector4?this._viewport.copy(e):this._viewport.set(e,t,s,i),this._viewport.multiplyScalar(this._pixelRatio*this._resolutionScale).floor())}setPixelRatio(e){this._pixelRatio=e,this.setSize(this._width,this._height)}dispose(){this.renderTarget.dispose()}};mi.COLOR="color";mi.DEPTH="depth";var wC=(o,e,t)=>new mi(mi.COLOR,o,e,t),MC=(o,e)=>new Rh(o,e),AC=(o,e,t)=>new mi(mi.DEPTH,o,e,t),Tg=class extends mi{static get type(){return"ToonOutlinePassNode"}constructor(e,t,s,i,n){super(mi.COLOR,e,t),this.colorNode=s,this.thicknessNode=i,this.alphaNode=n,this._materialCache=new WeakMap,this.name="Outline Pass"}updateBefore(e){let{renderer:t}=e,s=t.getRenderObjectFunction();t.setRenderObjectFunction((i,n,r,a,c,l,u,h)=>{if((c.isMeshToonMaterial||c.isMeshToonNodeMaterial)&&c.wireframe===!1){let d=this._getOutlineMaterial(c);t.renderObject(i,n,r,a,d,l,u,h)}t.renderObject(i,n,r,a,c,l,u,h)}),super.updateBefore(e),t.setRenderObjectFunction(s)}_createMaterial(){let e=new Ne;e.isMeshToonOutlineMaterial=!0,e.name="Toon_Outline",e.side=rt;let t=zt.negate(),s=Oi.mul(wn),i=b(1),n=s.mul(Z(Ve,1)),r=s.mul(Z(Ve.add(t),1)),a=Ut(n.sub(r));return e.vertexNode=n.add(a.mul(this.thicknessNode).mul(n.w).mul(i)),e.colorNode=Z(this.colorNode,this.alphaNode),e}_getOutlineMaterial(e){let t=this._materialCache.get(e);return t===void 0&&(t=this._createMaterial(),this._materialCache.set(e,t)),t}},NC=(o,e,t=new ge(0,0,0),s=.003,i=1)=>new Tg(o,e,q(t),q(s),q(i)),fw=A(([o,e])=>o.mul(e).clamp()).setLayout({name:"linearToneMapping",type:"vec3",inputs:[{name:"color",type:"vec3"},{name:"exposure",type:"float"}]}),mw=A(([o,e])=>(o=o.mul(e),o.div(o.add(1)).clamp())).setLayout({name:"reinhardToneMapping",type:"vec3",inputs:[{name:"color",type:"vec3"},{name:"exposure",type:"float"}]}),gw=A(([o,e])=>{o=o.mul(e),o=o.sub(.004).max(0);let t=o.mul(o.mul(6.2).add(.5)),s=o.mul(o.mul(6.2).add(1.7)).add(.06);return t.div(s).pow(2.2)}).setLayout({name:"cineonToneMapping",type:"vec3",inputs:[{name:"color",type:"vec3"},{name:"exposure",type:"float"}]}),RC=A(([o])=>{let e=o.mul(o.add(.0245786)).sub(90537e-9),t=o.mul(o.add(.432951).mul(.983729)).add(.238081);return e.div(t)}),yw=A(([o,e])=>{let t=at(.59719,.35458,.04823,.076,.90834,.01566,.0284,.13383,.83777),s=at(1.60475,-.53108,-.07367,-.10208,1.10813,-.00605,-.00327,-.07276,1.07602);return o=o.mul(e).div(.6),o=t.mul(o),o=RC(o),o=s.mul(o),o.clamp()}).setLayout({name:"acesFilmicToneMapping",type:"vec3",inputs:[{name:"color",type:"vec3"},{name:"exposure",type:"float"}]}),CC=at(v(1.6605,-.1246,-.0182),v(-.5876,1.1329,-.1006),v(-.0728,-.0083,1.1187)),EC=at(v(.6274,.0691,.0164),v(.3293,.9195,.088),v(.0433,.0113,.8956)),BC=A(([o])=>{let e=v(o).toVar(),t=v(e.mul(e)).toVar(),s=v(t.mul(t)).toVar();return b(15.5).mul(s.mul(t)).sub(se(40.14,s.mul(e))).add(se(31.96,s).sub(se(6.868,t.mul(e))).add(se(.4298,t).add(se(.1191,e).sub(.00232))))}),xw=A(([o,e])=>{let t=v(o).toVar(),s=at(v(.856627153315983,.137318972929847,.11189821299995),v(.0951212405381588,.761241990602591,.0767994186031903),v(.0482516061458583,.101439036467562,.811302368396859)),i=at(v(1.1271005818144368,-.1413297634984383,-.14132976349843826),v(-.11060664309660323,1.157823702216272,-.11060664309660294),v(-.016493938717834573,-.016493938717834257,1.2519364065950405)),n=b(-12.47393),r=b(4.026069);return t.mulAssign(e),t.assign(EC.mul(t)),t.assign(s.mul(t)),t.assign(ze(t,1e-10)),t.assign(ri(t)),t.assign(t.sub(n).div(r.sub(n))),t.assign(Bs(t,0,1)),t.assign(BC(t)),t.assign(i.mul(t)),t.assign(cs(ze(v(0),t),v(2.2))),t.assign(CC.mul(t)),t.assign(Bs(t,0,1)),t}).setLayout({name:"agxToneMapping",type:"vec3",inputs:[{name:"color",type:"vec3"},{name:"exposure",type:"float"}]}),bw=A(([o,e])=>{let t=b(.76),s=b(.15);o=o.mul(e);let i=Vt(o.r,Vt(o.g,o.b)),n=vt(i.lessThan(.08),i.sub(se(6.25,i.mul(i))),.04);o.subAssign(n);let r=ze(o.r,ze(o.g,o.b));K(r.lessThan(t),()=>o);let a=he(1,t),c=he(1,a.mul(a).div(r.add(a.sub(t))));o.mulAssign(c.div(r));let l=he(1,ss(1,s.mul(r.sub(c)).add(1)));return le(o,v(c),l)}).setLayout({name:"neutralToneMapping",type:"vec3",inputs:[{name:"color",type:"vec3"},{name:"exposure",type:"float"}]}),He=class extends H{static get type(){return"CodeNode"}constructor(e="",t=[],s=""){super("code"),this.isCodeNode=!0,this.global=!0,this.code=e,this.includes=t,this.language=s}setIncludes(e){return this.includes=e,this}getIncludes(){return this.includes}generate(e){let t=this.getIncludes(e);for(let i of t)i.build(e);let s=e.getCodeFromNode(this,this.getNodeType(e));return s.code=this.code,s.code}serialize(e){super.serialize(e),e.code=this.code,e.language=this.language}deserialize(e){super.deserialize(e),this.code=e.code,this.language=e.language}},Sd=oe(He).setParameterLength(1,3),FC=(o,e)=>Sd(o,e,"js"),IC=(o,e)=>Sd(o,e,"wgsl"),PC=(o,e)=>Sd(o,e,"glsl"),Eh=class extends He{static get type(){return"FunctionNode"}constructor(e="",t=[],s=""){super(e,t,s)}getNodeType(e){return this.getNodeFunction(e).type}getMemberType(e,t){let s=this.getNodeType(e);return e.getStructTypeNode(s).getMemberType(e,t)}getInputs(e){return this.getNodeFunction(e).inputs}getNodeFunction(e){let t=e.getDataFromNode(this),s=t.nodeFunction;return s===void 0&&(s=e.parser.parseFunction(this.code),t.nodeFunction=s),s}generate(e,t){super.generate(e);let s=this.getNodeFunction(e),i=s.name,n=s.type,r=e.getCodeFromNode(this,n);i!==""&&(r.name=i);let a=e.getPropertyName(r),c=this.getNodeFunction(e).getCode(a);return r.code=c+` +`,t==="property"?a:e.format(`${a}()`,n,t)}},_w=(o,e=[],t="")=>{for(let n=0;ns.call(...n);return i.functionNode=s,i},DC=(o,e)=>_w(o,e,"glsl"),LC=(o,e)=>_w(o,e,"wgsl");function r0(o){let e,t=o.context.getViewZ;return t!==void 0&&(e=t(this)),(e||qe.z).negate()}var Tw=A(([o,e],t)=>{let s=r0(t);return Fs(o,e,s)}),Sw=A(([o],e)=>{let t=r0(e);return o.mul(o,t,t).negate().exp().oneMinus()}),UC=A(([o,e],t)=>{let s=r0(t),n=e.sub(li.y).max(0).toConst().mul(s).toConst();return o.mul(o,n,n).negate().exp().oneMinus()}),Sg=A(([o,e])=>Z(e.toFloat().mix(fo.rgb,o.toVec3()),fo.a)),Zn=null,Jn=null,vg=class extends H{static get type(){return"RangeNode"}constructor(e=b(),t=b()){super(),this.minNode=e,this.maxNode=t}getVectorLength(e){let t=this.getConstNode(this.minNode),s=this.getConstNode(this.maxNode),i=e.getTypeLength(fn(t.value)),n=e.getTypeLength(fn(s.value));return i>n?i:n}getNodeType(e){return e.object.count>1?e.getTypeFromLength(this.getVectorLength(e)):"float"}getConstNode(e){let t=null;if(e.traverse(s=>{s.isConstNode===!0&&(t=s)}),t===null)throw new dh('THREE.TSL: No "ConstNode" found in node graph.',this.stackTrace);return t}setup(e){let t=e.object,s=null;if(t.count>1){let i=this.getConstNode(this.minNode),n=this.getConstNode(this.maxNode),r=i.value,a=n.value,c=e.getTypeLength(fn(r)),l=e.getTypeLength(fn(a));Zn=Zn||new Te,Jn=Jn||new Te,Zn.setScalar(0),Jn.setScalar(0),c===1?Zn.setScalar(r):r.isColor?Zn.set(r.r,r.g,r.b,1):Zn.set(r.x,r.y,r.z||0,r.w||0),l===1?Jn.setScalar(a):a.isColor?Jn.set(a.r,a.g,a.b,1):Jn.set(a.x,a.y,a.z||0,a.w||0);let u=4,h=u*t.count,d=new Float32Array(h);for(let g=0;gnew wg(o,e),VC=Dc("numWorkgroups","uvec3"),kC=Dc("workgroupId","uvec3"),zC=Dc("globalId","uvec3"),GC=Dc("localId","uvec3"),WC=Dc("subgroupSize","uint"),Mg=class extends H{constructor(e){super(),this.scope=e}generate(e){let{scope:t}=this,{renderer:s}=e;s.backend.isWebGLBackend===!0?e.addFlowCode(` // ${t}Barrier +`):e.addLineFlowCode(`${t}Barrier()`,this)}},o0=oe(Mg),$C=()=>o0("workgroup").toStack(),qC=()=>o0("storage").toStack(),HC=()=>o0("texture").toStack(),Ag=class extends Vi{constructor(e,t){super(e,t),this.isWorkgroupInfoElementNode=!0}generate(e,t){let s,i=e.context.assign;if(s=super.generate(e),i!==!0){let n=this.getNodeType(e);s=e.format(s,n,t)}return s}},Ng=class extends H{constructor(e,t,s=0){super(t),this.bufferType=t,this.bufferCount=s,this.isWorkgroupInfoNode=!0,this.elementType=t,this.scope=e,this.name=""}setName(e){return this.name=e,this}label(e){return z('TSL: "label()" has been deprecated. Use "setName()" instead.',new ke),this.setName(e)}setScope(e){return this.scope=e,this}getElementType(){return this.elementType}getInputType(){return`${this.scope}Array`}element(e){return new Ag(this,e)}generate(e){let t=this.name!==""?this.name:`${this.scope}Array_${this.id}`;return e.getScopedArray(t,this.scope.toLowerCase(),this.bufferType,this.bufferCount)}},XC=(o,e)=>new Ng("Workgroup",o,e),Ze=class extends H{static get type(){return"AtomicFunctionNode"}constructor(e,t,s){super("uint"),this.method=e,this.pointerNode=t,this.valueNode=s,this.parents=!0}getInputType(e){return this.pointerNode.getNodeType(e)}getNodeType(e){return this.getInputType(e)}generate(e){let t=e.getNodeProperties(this),s=t.parents,i=this.method,n=this.getNodeType(e),r=this.getInputType(e),a=this.pointerNode,c=this.valueNode,l=[];l.push(`&${a.build(e,r)}`),c!==null&&l.push(c.build(e,r));let u=`${e.getMethod(i,n)}( ${l.join(", ")} )`;if(s?s.length===1&&s[0].isStackNode===!0:!1)e.addLineFlowCode(u,this);else return t.constNode===void 0&&(t.constNode=ts(u,n).toConst()),t.constNode.build(e)}};Ze.ATOMIC_LOAD="atomicLoad";Ze.ATOMIC_STORE="atomicStore";Ze.ATOMIC_ADD="atomicAdd";Ze.ATOMIC_SUB="atomicSub";Ze.ATOMIC_MAX="atomicMax";Ze.ATOMIC_MIN="atomicMin";Ze.ATOMIC_AND="atomicAnd";Ze.ATOMIC_OR="atomicOr";Ze.ATOMIC_XOR="atomicXor";var YC=oe(Ze),yi=(o,e,t)=>YC(o,e,t).toStack(),jC=o=>yi(Ze.ATOMIC_LOAD,o,null),ZC=(o,e)=>yi(Ze.ATOMIC_STORE,o,e),JC=(o,e)=>yi(Ze.ATOMIC_ADD,o,e),QC=(o,e)=>yi(Ze.ATOMIC_SUB,o,e),KC=(o,e)=>yi(Ze.ATOMIC_MAX,o,e),eE=(o,e)=>yi(Ze.ATOMIC_MIN,o,e),tE=(o,e)=>yi(Ze.ATOMIC_AND,o,e),sE=(o,e)=>yi(Ze.ATOMIC_OR,o,e),iE=(o,e)=>yi(Ze.ATOMIC_XOR,o,e),$=class o extends Be{static get type(){return"SubgroupFunctionNode"}constructor(e,t=null,s=null){super(),this.method=e,this.aNode=t,this.bNode=s}getInputType(e){let t=this.aNode?this.aNode.getNodeType(e):null,s=this.bNode?this.bNode.getNodeType(e):null,i=e.isMatrix(t)?0:e.getTypeLength(t),n=e.isMatrix(s)?0:e.getTypeLength(s);return i>n?t:s}getNodeType(e){let t=this.method;return t===o.SUBGROUP_ELECT?"bool":t===o.SUBGROUP_BALLOT?"uvec4":this.getInputType(e)}generate(e,t){let s=this.method,i=this.getNodeType(e),n=this.getInputType(e),r=this.aNode,a=this.bNode,c=[];if(s===o.SUBGROUP_BROADCAST||s===o.SUBGROUP_SHUFFLE||s===o.QUAD_BROADCAST){let u=a.getNodeType(e);c.push(r.build(e,i),a.build(e,u==="float"?"int":i))}else s===o.SUBGROUP_SHUFFLE_XOR||s===o.SUBGROUP_SHUFFLE_DOWN||s===o.SUBGROUP_SHUFFLE_UP?c.push(r.build(e,i),a.build(e,"uint")):(r!==null&&c.push(r.build(e,n)),a!==null&&c.push(a.build(e,n)));let l=c.length===0?"()":`( ${c.join(", ")} )`;return e.format(`${e.getMethod(s,i)}${l}`,i,t)}serialize(e){super.serialize(e),e.method=this.method}deserialize(e){super.deserialize(e),this.method=e.method}};$.SUBGROUP_ELECT="subgroupElect";$.SUBGROUP_BALLOT="subgroupBallot";$.SUBGROUP_ADD="subgroupAdd";$.SUBGROUP_INCLUSIVE_ADD="subgroupInclusiveAdd";$.SUBGROUP_EXCLUSIVE_AND="subgroupExclusiveAdd";$.SUBGROUP_MUL="subgroupMul";$.SUBGROUP_INCLUSIVE_MUL="subgroupInclusiveMul";$.SUBGROUP_EXCLUSIVE_MUL="subgroupExclusiveMul";$.SUBGROUP_AND="subgroupAnd";$.SUBGROUP_OR="subgroupOr";$.SUBGROUP_XOR="subgroupXor";$.SUBGROUP_MIN="subgroupMin";$.SUBGROUP_MAX="subgroupMax";$.SUBGROUP_ALL="subgroupAll";$.SUBGROUP_ANY="subgroupAny";$.SUBGROUP_BROADCAST_FIRST="subgroupBroadcastFirst";$.QUAD_SWAP_X="quadSwapX";$.QUAD_SWAP_Y="quadSwapY";$.QUAD_SWAP_DIAGONAL="quadSwapDiagonal";$.SUBGROUP_BROADCAST="subgroupBroadcast";$.SUBGROUP_SHUFFLE="subgroupShuffle";$.SUBGROUP_SHUFFLE_XOR="subgroupShuffleXor";$.SUBGROUP_SHUFFLE_UP="subgroupShuffleUp";$.SUBGROUP_SHUFFLE_DOWN="subgroupShuffleDown";$.QUAD_BROADCAST="quadBroadcast";var nE=V($,$.SUBGROUP_ELECT).setParameterLength(0),rE=V($,$.SUBGROUP_BALLOT).setParameterLength(1),oE=V($,$.SUBGROUP_ADD).setParameterLength(1),aE=V($,$.SUBGROUP_INCLUSIVE_ADD).setParameterLength(1),cE=V($,$.SUBGROUP_EXCLUSIVE_AND).setParameterLength(1),lE=V($,$.SUBGROUP_MUL).setParameterLength(1),uE=V($,$.SUBGROUP_INCLUSIVE_MUL).setParameterLength(1),hE=V($,$.SUBGROUP_EXCLUSIVE_MUL).setParameterLength(1),dE=V($,$.SUBGROUP_AND).setParameterLength(1),pE=V($,$.SUBGROUP_OR).setParameterLength(1),fE=V($,$.SUBGROUP_XOR).setParameterLength(1),mE=V($,$.SUBGROUP_MIN).setParameterLength(1),gE=V($,$.SUBGROUP_MAX).setParameterLength(1),yE=V($,$.SUBGROUP_ALL).setParameterLength(0),xE=V($,$.SUBGROUP_ANY).setParameterLength(0),bE=V($,$.SUBGROUP_BROADCAST_FIRST).setParameterLength(2),_E=V($,$.QUAD_SWAP_X).setParameterLength(1),TE=V($,$.QUAD_SWAP_Y).setParameterLength(1),SE=V($,$.QUAD_SWAP_DIAGONAL).setParameterLength(1),vE=V($,$.SUBGROUP_BROADCAST).setParameterLength(2),wE=V($,$.SUBGROUP_SHUFFLE).setParameterLength(2),ME=V($,$.SUBGROUP_SHUFFLE_XOR).setParameterLength(2),AE=V($,$.SUBGROUP_SHUFFLE_UP).setParameterLength(2),NE=V($,$.SUBGROUP_SHUFFLE_DOWN).setParameterLength(2),RE=V($,$.QUAD_BROADCAST).setParameterLength(1),Du;function vd(o){Du=Du||new WeakMap;let e=Du.get(o);return e===void 0&&Du.set(o,e={}),e}function wd(o){let e=vd(o);return e.shadowMatrix||(e.shadowMatrix=j("mat4").setGroup(J).onRenderUpdate(t=>((o.castShadow!==!0||t.renderer.shadowMap.enabled===!1)&&(o.shadow.camera.coordinateSystem!==t.camera.coordinateSystem&&(o.shadow.camera.coordinateSystem=t.camera.coordinateSystem,o.shadow.camera.updateProjectionMatrix()),o.shadow.updateMatrices(o)),o.shadow.matrix)))}function vw(o,e=li){let t=wd(o).mul(e);return t.xyz.div(t.w)}function a0(o){let e=vd(o);return e.position||(e.position=j(new R).setGroup(J).onRenderUpdate((t,s)=>s.value.setFromMatrixPosition(o.matrixWorld)))}function ww(o){let e=vd(o);return e.targetPosition||(e.targetPosition=j(new R).setGroup(J).onRenderUpdate((t,s)=>s.value.setFromMatrixPosition(o.target.matrixWorld)))}function c0(o){let e=vd(o);return e.viewPosition||(e.viewPosition=j(new R).setGroup(J).onRenderUpdate(({camera:t},s)=>{s.value=s.value||new R,s.value.setFromMatrixPosition(o.matrixWorld),s.value.applyMatrix4(t.matrixWorldInverse)}))}var l0=o=>fs.transformDirection(a0(o).sub(ww(o))),CE=o=>o.sort((e,t)=>e.id-t.id),EE=(o,e)=>{for(let t of e)if(t.isAnalyticLightNode&&t.light.id===o)return t;return null},Kp=new WeakMap,ja=[],wc=class extends H{static get type(){return"LightsNode"}constructor(){super("vec3"),this.totalDiffuseNode=Ui("vec3","totalDiffuse"),this.totalSpecularNode=Ui("vec3","totalSpecular"),this.outgoingLightNode=Ui("vec3","outgoingLight"),this._lights=[],this._lightNodes=null,this._lightNodesHash=null,this.global=!0}customCacheKey(){let e=this._lights;for(let s=0;s0}},BE=(o=[])=>new wc().setLights(o),Rg=class extends H{static get type(){return"ShadowBaseNode"}constructor(e){super(),this.light=e,this.updateBeforeType=te.RENDER,this.isShadowBaseNode=!0}setupShadowPosition({context:e,material:t}){u0.assign(t.receivedShadowPositionNode||e.shadowPositionWorld||li)}},u0=Ui("vec3","shadowPositionWorld");function h0(o,e={}){return e.toneMapping=o.toneMapping,e.toneMappingExposure=o.toneMappingExposure,e.outputColorSpace=o.outputColorSpace,e.renderTarget=o.getRenderTarget(),e.activeCubeFace=o.getActiveCubeFace(),e.activeMipmapLevel=o.getActiveMipmapLevel(),e.renderObjectFunction=o.getRenderObjectFunction(),e.pixelRatio=o.getPixelRatio(),e.mrt=o.getMRT(),e.clearColor=o.getClearColor(e.clearColor||new ge),e.clearAlpha=o.getClearAlpha(),e.autoClear=o.autoClear,e.scissorTest=o.getScissorTest(),e}function Mw(o,e){return e=h0(o,e),o.setMRT(null),o.setRenderObjectFunction(null),o.setClearColor(0,1),o.autoClear=!0,e}function Aw(o,e){o.toneMapping=e.toneMapping,o.toneMappingExposure=e.toneMappingExposure,o.outputColorSpace=e.outputColorSpace,o.setRenderTarget(e.renderTarget,e.activeCubeFace,e.activeMipmapLevel),o.setRenderObjectFunction(e.renderObjectFunction),o.setPixelRatio(e.pixelRatio),o.setMRT(e.mrt),o.setClearColor(e.clearColor,e.clearAlpha),o.autoClear=e.autoClear,o.setScissorTest(e.scissorTest)}function d0(o,e={}){return e.background=o.background,e.backgroundNode=o.backgroundNode,e.overrideMaterial=o.overrideMaterial,e}function Nw(o,e){return e=d0(o,e),o.background=null,o.backgroundNode=null,o.overrideMaterial=null,e}function Rw(o,e){o.background=e.background,o.backgroundNode=e.backgroundNode,o.overrideMaterial=e.overrideMaterial}function FE(o,e,t={}){return t=h0(o,t),t=d0(e,t),t}function Cw(o,e,t){return t=Mw(o,t),t=Nw(e,t),t}function Ew(o,e,t){Aw(o,t),Rw(e,t)}var p0=Object.freeze({__proto__:null,resetRendererAndSceneState:Cw,resetRendererState:Mw,resetSceneState:Nw,restoreRendererAndSceneState:Ew,restoreRendererState:Aw,restoreSceneState:Rw,saveRendererAndSceneState:FE,saveRendererState:h0,saveSceneState:d0}),Bh=new WeakMap,Bw=A(({depthTexture:o,shadowCoord:e,depthLayer:t})=>{let s=xe(o,e.xy).setName("t_basic");return o.isArrayTexture&&(s=s.depth(t)),s.compare(e.z)}),Fw=A(({depthTexture:o,shadowCoord:e,shadow:t,depthLayer:s})=>{let i=(u,h)=>{let d=xe(o,u);return o.isArrayTexture&&(d=d.depth(s)),d.compare(h)},n=Ie("mapSize","vec2",t).setGroup(J),r=Ie("radius","float",t).setGroup(J),a=U(1).div(n),c=r.mul(a.x),l=i0(gr.xy).mul(6.28318530718);return Ye(i(e.xy.add(Cs(0,5,l).mul(c)),e.z),i(e.xy.add(Cs(1,5,l).mul(c)),e.z),i(e.xy.add(Cs(2,5,l).mul(c)),e.z),i(e.xy.add(Cs(3,5,l).mul(c)),e.z),i(e.xy.add(Cs(4,5,l).mul(c)),e.z)).mul(1/5)}),Iw=A(({depthTexture:o,shadowCoord:e,shadow:t,depthLayer:s})=>{let i=(h,d)=>{let p=xe(o,h);return o.isArrayTexture&&(p=p.depth(s)),p.compare(d)},n=Ie("mapSize","vec2",t).setGroup(J),r=U(1).div(n),a=r.x,c=r.y,l=e.xy,u=Es(l.mul(n).add(.5));return l.subAssign(u.mul(r)),Ye(i(l,e.z),i(l.add(U(a,0)),e.z),i(l.add(U(0,c)),e.z),i(l.add(r),e.z),le(i(l.add(U(a.negate(),0)),e.z),i(l.add(U(a.mul(2),0)),e.z),u.x),le(i(l.add(U(a.negate(),c)),e.z),i(l.add(U(a.mul(2),c)),e.z),u.x),le(i(l.add(U(0,c.negate())),e.z),i(l.add(U(0,c.mul(2))),e.z),u.y),le(i(l.add(U(a,c.negate())),e.z),i(l.add(U(a,c.mul(2))),e.z),u.y),le(le(i(l.add(U(a.negate(),c.negate())),e.z),i(l.add(U(a.mul(2),c.negate())),e.z),u.x),le(i(l.add(U(a.negate(),c.mul(2))),e.z),i(l.add(U(a.mul(2),c.mul(2))),e.z),u.x),u.y)).mul(1/9)}),Pw=A(({depthTexture:o,shadowCoord:e,depthLayer:t},s)=>{let i=xe(o).sample(e.xy);o.isArrayTexture&&(i=i.depth(t)),i=i.rg;let n=i.x,r=ze(1e-7,i.y.mul(i.y)),a=s.renderer.reversedDepthBuffer?ur(n,e.z):ur(e.z,n),c=b(1).toVar();return K(a.notEqual(1),()=>{let l=e.z.sub(n),u=r.div(r.add(l.mul(l)));u=Bs(he(u,.3).div(.65)),c.assign(ze(a,u))}),c}),Dw=o=>{let e=Bh.get(o);return e===void 0&&(e=new Ne,e.colorNode=Z(0,0,0,1),e.isShadowPassMaterial=!0,e.name="ShadowMaterial",e.blending=qs,e.fog=!1,Bh.set(o,e)),e},Lw=o=>{let e=Bh.get(o);e!==void 0&&(e.dispose(),Bh.delete(o))},b_=new pi,ro=[],Uw=(o,e,t,s)=>{ro[0]=o,ro[1]=e;let i=b_.get(ro);return(i===void 0||i.shadowType!==t||i.useVelocity!==s)&&(i=(n,r,a,c,l,u,...h)=>{(n.castShadow===!0||n.receiveShadow&&t===Wr)&&(s&&(Z_(n).useVelocity=!0),n.onBeforeShadow(o,n,a,e.camera,c,r.overrideMaterial,u),o.renderObject(n,r,a,c,l,u,...h),n.onAfterShadow(o,n,a,e.camera,c,r.overrideMaterial,u))},i.shadowType=t,i.useVelocity=s,b_.set(ro,i)),ro[0]=null,ro[1]=null,i},IE=A(({samples:o,radius:e,size:t,shadowPass:s,depthLayer:i})=>{let n=b(0).toVar("meanVertical"),r=b(0).toVar("squareMeanVertical"),a=o.lessThanEqual(b(1)).select(b(0),b(2).div(o.sub(1))),c=o.lessThanEqual(b(1)).select(b(0),b(-1));Me({start:T(0),end:T(o),type:"int",condition:"<"},({i:u})=>{let h=c.add(b(u).mul(a)),d=s.sample(Ye(gr.xy,U(0,h).mul(e)).div(t));s.value.isArrayTexture&&(d=d.depth(i)),d=d.x,n.addAssign(d),r.addAssign(d.mul(d))}),n.divAssign(o),r.divAssign(o);let l=It(r.sub(n.mul(n)).max(0));return U(n,l)}),PE=A(({samples:o,radius:e,size:t,shadowPass:s,depthLayer:i})=>{let n=b(0).toVar("meanHorizontal"),r=b(0).toVar("squareMeanHorizontal"),a=o.lessThanEqual(b(1)).select(b(0),b(2).div(o.sub(1))),c=o.lessThanEqual(b(1)).select(b(0),b(-1));Me({start:T(0),end:T(o),type:"int",condition:"<"},({i:u})=>{let h=c.add(b(u).mul(a)),d=s.sample(Ye(gr.xy,U(h,0).mul(e)).div(t));s.value.isArrayTexture&&(d=d.depth(i)),n.addAssign(d.x),r.addAssign(Ye(d.y.mul(d.y),d.x.mul(d.x)))}),n.divAssign(o),r.divAssign(o);let l=It(r.sub(n.mul(n)).max(0));return U(n,l)}),DE=[Bw,Fw,Iw,Pw],ef,Lu=new Gi,Fh=class extends Rg{static get type(){return"ShadowNode"}constructor(e,t=null){super(e),this.shadow=t||e.shadow,this.shadowMap=null,this.vsmShadowMapVertical=null,this.vsmShadowMapHorizontal=null,this.vsmMaterialVertical=null,this.vsmMaterialHorizontal=null,this._node=null,this._currentShadowType=null,this._cameraFrameId=new WeakMap,this.isShadowNode=!0,this.depthLayer=0}setupShadowFilter(e,{filterFn:t,depthTexture:s,shadowCoord:i,shadow:n,depthLayer:r}){let a=i.x.greaterThanEqual(0).and(i.x.lessThanEqual(1)).and(i.y.greaterThanEqual(0)).and(i.y.lessThanEqual(1)).and(i.z.lessThanEqual(1)),c=t({depthTexture:s,shadowCoord:i,shadow:n,depthLayer:r});return a.select(c,b(1))}setupShadowCoord(e,t){let{shadow:s}=this,{renderer:i}=e,n=s.biasNode||Ie("bias","float",s).setGroup(J),r=t,a;if(s.camera.isOrthographicCamera||i.logarithmicDepthBuffer!==!0)r=r.xyz.div(r.w),a=r.z;else{let c=r.w;r=r.xy.div(c);let l=Ie("near","float",s.camera).setGroup(J),u=Ie("far","float",s.camera).setGroup(J);a=Zx(c.negate(),l,u)}return r=v(r.x,r.y.oneMinus(),i.reversedDepthBuffer?a.sub(n):a.add(n)),r}getShadowFilterFn(e){return DE[e]}setupRenderTarget(e,t){let s=new Rt(e.mapSize.width,e.mapSize.height);s.name="ShadowDepthTexture",s.compareFunction=t.renderer.reversedDepthBuffer?Yn:Jr;let i=t.createRenderTarget(e.mapSize.width,e.mapSize.height);return i.texture.name="ShadowMap",i.texture.type=e.mapType,i.depthTexture=s,{shadowMap:i,depthTexture:s}}setupShadow(e){let{renderer:t,camera:s}=e,{light:i,shadow:n}=this,{depthTexture:r,shadowMap:a}=this.setupRenderTarget(n,e),c=t.shadowMap.type,l=t.hasCompatibility(Ys.TEXTURE_COMPARE);if((c===ap||c===Y0)&&l?(r.minFilter=ct,r.magFilter=ct):(r.minFilter=Ue,r.magFilter=Ue),n.camera.coordinateSystem=s.coordinateSystem,n.camera.updateProjectionMatrix(),c===Wr&&n.isPointLightShadow!==!0){r.compareFunction=null,a.depth>1?(a._vsmShadowMapVertical||(a._vsmShadowMapVertical=e.createRenderTarget(n.mapSize.width,n.mapSize.height,{format:Ms,type:$e,depth:a.depth,depthBuffer:!1}),a._vsmShadowMapVertical.texture.name="VSMVertical"),this.vsmShadowMapVertical=a._vsmShadowMapVertical,a._vsmShadowMapHorizontal||(a._vsmShadowMapHorizontal=e.createRenderTarget(n.mapSize.width,n.mapSize.height,{format:Ms,type:$e,depth:a.depth,depthBuffer:!1}),a._vsmShadowMapHorizontal.texture.name="VSMHorizontal"),this.vsmShadowMapHorizontal=a._vsmShadowMapHorizontal):(this.vsmShadowMapVertical=e.createRenderTarget(n.mapSize.width,n.mapSize.height,{format:Ms,type:$e,depthBuffer:!1}),this.vsmShadowMapHorizontal=e.createRenderTarget(n.mapSize.width,n.mapSize.height,{format:Ms,type:$e,depthBuffer:!1}));let S=xe(r);r.isArrayTexture&&(S=S.depth(this.depthLayer));let E=xe(this.vsmShadowMapVertical.texture);r.isArrayTexture&&(E=E.depth(this.depthLayer));let B=Ie("blurSamples","float",n).setGroup(J),N=Ie("radius","float",n).setGroup(J),C=Ie("mapSize","vec2",n).setGroup(J),I=this.vsmMaterialVertical||(this.vsmMaterialVertical=new Ne);I.fragmentNode=IE({samples:B,radius:N,size:C,shadowPass:S,depthLayer:this.depthLayer}).context(e.getSharedContext()),I.name="VSMVertical",I=this.vsmMaterialHorizontal||(this.vsmMaterialHorizontal=new Ne),I.fragmentNode=PE({samples:B,radius:N,size:C,shadowPass:E,depthLayer:this.depthLayer}).context(e.getSharedContext()),I.name="VSMHorizontal"}let u=Ie("intensity","float",n).setGroup(J),h=Ie("normalBias","float",n).setGroup(J),d=wd(i).mul(u0.add(Mn.mul(h))),p=this.setupShadowCoord(e,d),m=n.filterNode||this.getShadowFilterFn(t.shadowMap.type)||null;if(m===null)throw new Error("THREE.WebGPURenderer: Shadow map type not supported yet.");let g=c===Wr&&n.isPointLightShadow!==!0?this.vsmShadowMapHorizontal.texture:r,y=this.setupShadowFilter(e,{filterFn:m,shadowTexture:a.texture,depthTexture:g,shadowCoord:p,shadow:n,depthLayer:this.depthLayer}),x;t.shadowMap.transmitted===!0&&(a.texture.isCubeTexture?x=Ft(a.texture,p.xyz):(x=xe(a.texture,p),r.isArrayTexture&&(x=x.depth(this.depthLayer))));let _;x?_=le(1,y.rgb.mix(x,1),u.mul(x.a)).toVar():_=le(1,y,u).toVar(),this.shadowMap=a,this.shadow.map=a;let w=`${this.light.type} Shadow [ ${this.light.name||"ID: "+this.light.id} ]`;return x&&_.toInspector(`${w} / Color`,()=>this.shadowMap.texture.isCubeTexture?Ft(this.shadowMap.texture):xe(this.shadowMap.texture)),_.toInspector(`${w} / Depth`,()=>this.shadowMap.texture.isCubeTexture?Ft(this.shadowMap.texture).r.oneMinus():Ge(this.shadowMap.depthTexture,Re().mul(yn(xe(this.shadowMap.depthTexture)))).r.oneMinus())}setup(e){if(e.renderer.shadowMap.enabled!==!1)return A(()=>{let t=e.renderer.shadowMap.type;this._currentShadowType!==t&&(this._reset(),this._node=null);let s=this._node;return this.setupShadowPosition(e),s===null&&(this._node=s=this.setupShadow(e),this._currentShadowType=t),e.material.receivedShadowNode&&(s=e.material.receivedShadowNode(s)),s})()}renderShadow(e){let{shadow:t,shadowMap:s,light:i}=this,{renderer:n,scene:r}=e;t.updateMatrices(i),s.setSize(t.mapSize.width,t.mapSize.height,s.depth);let a=r.name;r.name=`Shadow Map [ ${i.name||"ID: "+i.id} ]`,n.render(r,t.camera),r.name=a}updateShadow(e){let{shadowMap:t,light:s,shadow:i}=this,{renderer:n,scene:r,camera:a}=e,c=n.shadowMap.type,l=t.depthTexture.version;this._depthVersionCached=l;let u=i.camera.layers.mask;(i.camera.layers.mask&4294967294)===0&&(i.camera.layers.mask=a.layers.mask);let h=n.getRenderObjectFunction(),d=n.getMRT(),p=d?d.has("velocity"):!1;ef=Cw(n,r,ef),r.overrideMaterial=Dw(s),n.setRenderObjectFunction(Uw(n,i,c,p)),n.setClearColor(0,0),n.setRenderTarget(t),this.renderShadow(e),n.setRenderObjectFunction(h),c===Wr&&i.isPointLightShadow!==!0&&this.vsmPass(n),i.camera.layers.mask=u,Ew(n,r,ef)}vsmPass(e){let{shadow:t}=this,s=this.shadowMap.depth;this.vsmShadowMapVertical.setSize(t.mapSize.width,t.mapSize.height,s),this.vsmShadowMapHorizontal.setSize(t.mapSize.width,t.mapSize.height,s),e.setRenderTarget(this.vsmShadowMapVertical),Lu.material=this.vsmMaterialVertical,Lu.render(e),e.setRenderTarget(this.vsmShadowMapHorizontal),Lu.material=this.vsmMaterialHorizontal,Lu.render(e)}dispose(){this._reset(),super.dispose()}_reset(){this._currentShadowType=null,Lw(this.light),this.shadowMap&&(this.shadowMap.dispose(),this.shadowMap=null),this.vsmShadowMapVertical!==null&&(this.vsmShadowMapVertical.dispose(),this.vsmShadowMapVertical=null,this.vsmMaterialVertical.dispose(),this.vsmMaterialVertical=null),this.vsmShadowMapHorizontal!==null&&(this.vsmShadowMapHorizontal.dispose(),this.vsmShadowMapHorizontal=null,this.vsmMaterialHorizontal.dispose(),this.vsmMaterialHorizontal=null)}updateBefore(e){let{shadow:t}=this,s=t.needsUpdate||t.autoUpdate;s&&(this._cameraFrameId[e.camera]===e.frameId&&(s=!1),this._cameraFrameId[e.camera]=e.frameId),s&&(this.updateShadow(e),this.shadowMap.depthTexture.version===this._depthVersionCached&&(t.needsUpdate=!1))}},Ow=(o,e)=>new Fh(o,e),LE=new ge,__=new de,Za=new R,tf=new R,UE=[new R(1,0,0),new R(-1,0,0),new R(0,-1,0),new R(0,1,0),new R(0,0,1),new R(0,0,-1)],OE=[new R(0,-1,0),new R(0,-1,0),new R(0,0,-1),new R(0,0,1),new R(0,-1,0),new R(0,-1,0)],VE=[new R(1,0,0),new R(-1,0,0),new R(0,1,0),new R(0,-1,0),new R(0,0,1),new R(0,0,-1)],kE=[new R(0,-1,0),new R(0,-1,0),new R(0,0,1),new R(0,0,-1),new R(0,-1,0),new R(0,-1,0)],Vw=A(({depthTexture:o,bd3D:e,dp:t})=>Ft(o,e).compare(t)),kw=A(({depthTexture:o,bd3D:e,dp:t,shadow:s})=>{let i=Ie("radius","float",s).setGroup(J),n=Ie("mapSize","vec2",s).setGroup(J),r=i.div(n.x),a=Ee(e),c=Ut(ki(e,a.x.greaterThan(a.z).select(v(0,1,0),v(1,0,0)))),l=ki(e,c),u=i0(gr.xy).mul(6.28318530718),h=Cs(0,5,u),d=Cs(1,5,u),p=Cs(2,5,u),m=Cs(3,5,u),g=Cs(4,5,u);return Ft(o,e.add(c.mul(h.x).add(l.mul(h.y)).mul(r))).compare(t).add(Ft(o,e.add(c.mul(d.x).add(l.mul(d.y)).mul(r))).compare(t)).add(Ft(o,e.add(c.mul(p.x).add(l.mul(p.y)).mul(r))).compare(t)).add(Ft(o,e.add(c.mul(m.x).add(l.mul(m.y)).mul(r))).compare(t)).add(Ft(o,e.add(c.mul(g.x).add(l.mul(g.y)).mul(r))).compare(t)).mul(1/5)}),zE=A(({filterFn:o,depthTexture:e,shadowCoord:t,shadow:s},i)=>{let n=t.xyz.toConst(),r=n.abs().toConst(),a=r.x.max(r.y).max(r.z),c=j("float").setGroup(J).onRenderUpdate(()=>s.camera.near),l=j("float").setGroup(J).onRenderUpdate(()=>s.camera.far),u=Ie("bias","float",s).setGroup(J),h=b(1).toVar();return K(a.sub(l).lessThanEqual(0).and(a.sub(c).greaterThanEqual(0)),()=>{let d;i.renderer.reversedDepthBuffer?(d=Uv(a.negate(),c,l),d.subAssign(u)):(d=Yx(a.negate(),c,l),d.addAssign(u));let p=n.normalize();h.assign(o({depthTexture:e,bd3D:p,dp:d,shadow:s}))}),h}),Cg=class extends Fh{static get type(){return"PointShadowNode"}constructor(e,t=null){super(e,t)}getShadowFilterFn(e){return e===X0?Vw:kw}setupShadowCoord(e,t){return t}setupShadowFilter(e,{filterFn:t,depthTexture:s,shadowCoord:i,shadow:n}){return zE({filterFn:t,depthTexture:s,shadowCoord:i,shadow:n})}setupRenderTarget(e,t){let s=new vl(e.mapSize.width);s.name="PointShadowDepthTexture",s.compareFunction=t.renderer.reversedDepthBuffer?Yn:Jr;let i=t.createCubeRenderTarget(e.mapSize.width);return i.texture.name="PointShadowMap",i.depthTexture=s,{shadowMap:i,depthTexture:s}}renderShadow(e){let{shadow:t,shadowMap:s,light:i}=this,{renderer:n,scene:r}=e,a=t.camera,c=t.matrix,l=n.coordinateSystem===Yt,u=l?UE:VE,h=l?OE:kE;s.setSize(t.mapSize.width,t.mapSize.width);let d=n.autoClear,p=n.getClearColor(LE),m=n.getClearAlpha();n.autoClear=!1,n.setClearColor(t.clearColor,t.clearAlpha);for(let g=0;g<6;g++){n.setRenderTarget(s,g),n.clear();let y=i.distance||a.far;y!==a.far&&(a.far=y,a.updateProjectionMatrix()),Za.setFromMatrixPosition(i.matrixWorld),a.position.copy(Za),tf.copy(a.position),tf.add(u[g]),a.up.copy(h[g]),a.lookAt(tf),a.updateMatrixWorld(),c.makeTranslation(-Za.x,-Za.y,-Za.z),__.multiplyMatrices(a.projectionMatrix,a.matrixWorldInverse),t._frustum.setFromProjectionMatrix(__,a.coordinateSystem,a.reversedDepth);let x=r.name;r.name=`Point Light Shadow [ ${i.name||"ID: "+i.id} ] - Face ${g+1}`,n.render(r,a),r.name=x}n.autoClear=d,n.setClearColor(p,m)}},zw=(o,e)=>new Cg(o,e),Wi=class extends Tn{static get type(){return"AnalyticLightNode"}constructor(e=null){super(),this.light=e,this.color=new ge,this.colorNode=e&&e.colorNode||j(this.color).setGroup(J),this.baseColorNode=null,this.shadowNode=null,this.shadowColorNode=null,this.isAnalyticLightNode=!0,this.updateType=te.FRAME,e&&e.shadow&&(this._shadowDisposeListener=()=>{this.disposeShadow()},e.addEventListener("dispose",this._shadowDisposeListener))}dispose(){this._shadowDisposeListener&&this.light.removeEventListener("dispose",this._shadowDisposeListener),super.dispose()}disposeShadow(){this.shadowNode!==null&&(this.shadowNode.dispose(),this.shadowNode=null),this.shadowColorNode=null,this.baseColorNode!==null&&(this.colorNode=this.baseColorNode,this.baseColorNode=null)}getHash(){return this.light.uuid}getLightVector(e){return c0(this.light).sub(e.context.positionView||qe)}setupDirect(){}setupDirectRectArea(){}setupShadowNode(){return Ow(this.light)}setupShadow(e){let{renderer:t}=e;if(t.shadowMap.enabled===!1)return;let s=this.shadowColorNode;if(s===null){let i=this.light.shadow.shadowNode,n;i!==void 0?n=q(i):n=this.setupShadowNode(),this.shadowNode=n,this.shadowColorNode=s=this.colorNode.mul(n),this.baseColorNode=this.colorNode}e.context.getShadow&&(s=e.context.getShadow(this,e)),this.colorNode=s}setup(e){this.colorNode=this.baseColorNode||this.colorNode,this.light.castShadow?e.object.receiveShadow&&this.setupShadow(e):this.shadowNode!==null&&(this.shadowNode.dispose(),this.shadowNode=null,this.shadowColorNode=null);let t=this.setupDirect(e),s=this.setupDirectRectArea(e);t&&e.lightsNode.setupDirectLight(e,this,t),s&&e.lightsNode.setupDirectRectAreaLight(e,this,s)}update(){let{light:e}=this;this.color.copy(e.color).multiplyScalar(e.intensity)}},f0=A(({lightDistance:o,cutoffDistance:e,decayExponent:t})=>{let s=o.pow(t).max(.01).reciprocal();return e.greaterThan(0).select(s.mul(o.div(e).pow4().oneMinus().clamp().pow2()),s)}),Gw=({color:o,lightVector:e,cutoffDistance:t,decayExponent:s})=>{let i=e.normalize(),n=e.length(),r=f0({lightDistance:n,cutoffDistance:t,decayExponent:s}),a=o.mul(r);return{lightDirection:i,lightColor:a}},Eg=class extends Wi{static get type(){return"PointLightNode"}constructor(e=null){super(e),this.cutoffDistanceNode=j(0).setGroup(J),this.decayExponentNode=j(2).setGroup(J)}update(e){let{light:t}=this;super.update(e),this.cutoffDistanceNode.value=t.distance,this.decayExponentNode.value=t.decay}setupShadowNode(){return zw(this.light)}setupDirect(e){return Gw({color:this.colorNode,lightVector:this.getLightVector(e),cutoffDistance:this.cutoffDistanceNode,decayExponent:this.decayExponentNode})}},GE=A(([o=Re()])=>{let e=o.mul(2),t=e.x.floor(),s=e.y.floor();return t.add(s).mod(2).sign()}),WE=A(([o=Re()],{renderer:e,material:t})=>{let s=Mx(o.mul(2).sub(1)),i;if(t.alphaToCoverage&&e.currentSamples>0){let n=b(s.fwidth()).toVar();i=Fs(n.oneMinus(),n.add(1),s).oneMinus()}else i=vt(s.greaterThan(1),0,1);return i}),lc=A(([o,e,t])=>{let s=b(t).toVar(),i=b(e).toVar(),n=hs(o).toVar();return vt(n,i,s)}).setLayout({name:"mx_select",type:"float",inputs:[{name:"b",type:"bool"},{name:"t",type:"float"},{name:"f",type:"float"}]}),Ih=A(([o,e])=>{let t=hs(e).toVar(),s=b(o).toVar();return vt(t,s.negate(),s)}).setLayout({name:"mx_negate_if",type:"float",inputs:[{name:"val",type:"float"},{name:"b",type:"bool"}]}),Xe=A(([o])=>{let e=b(o).toVar();return T(oi(e))}).setLayout({name:"mx_floor",type:"int",inputs:[{name:"x",type:"float"}]}),Le=A(([o,e])=>{let t=b(o).toVar();return e.assign(Xe(t)),t.sub(b(e))}),$E=A(([o,e,t,s,i,n])=>{let r=b(n).toVar(),a=b(i).toVar(),c=b(s).toVar(),l=b(t).toVar(),u=b(e).toVar(),h=b(o).toVar(),d=b(he(1,a)).toVar();return he(1,r).mul(h.mul(d).add(u.mul(a))).add(r.mul(l.mul(d).add(c.mul(a))))}).setLayout({name:"mx_bilerp_0",type:"float",inputs:[{name:"v0",type:"float"},{name:"v1",type:"float"},{name:"v2",type:"float"},{name:"v3",type:"float"},{name:"s",type:"float"},{name:"t",type:"float"}]}),qE=A(([o,e,t,s,i,n])=>{let r=b(n).toVar(),a=b(i).toVar(),c=v(s).toVar(),l=v(t).toVar(),u=v(e).toVar(),h=v(o).toVar(),d=b(he(1,a)).toVar();return he(1,r).mul(h.mul(d).add(u.mul(a))).add(r.mul(l.mul(d).add(c.mul(a))))}).setLayout({name:"mx_bilerp_1",type:"vec3",inputs:[{name:"v0",type:"vec3"},{name:"v1",type:"vec3"},{name:"v2",type:"vec3"},{name:"v3",type:"vec3"},{name:"s",type:"float"},{name:"t",type:"float"}]}),Ww=ft([$E,qE]),HE=A(([o,e,t,s,i,n,r,a,c,l,u])=>{let h=b(u).toVar(),d=b(l).toVar(),p=b(c).toVar(),m=b(a).toVar(),g=b(r).toVar(),y=b(n).toVar(),x=b(i).toVar(),_=b(s).toVar(),w=b(t).toVar(),S=b(e).toVar(),E=b(o).toVar(),B=b(he(1,p)).toVar(),N=b(he(1,d)).toVar();return b(he(1,h)).toVar().mul(N.mul(E.mul(B).add(S.mul(p))).add(d.mul(w.mul(B).add(_.mul(p))))).add(h.mul(N.mul(x.mul(B).add(y.mul(p))).add(d.mul(g.mul(B).add(m.mul(p))))))}).setLayout({name:"mx_trilerp_0",type:"float",inputs:[{name:"v0",type:"float"},{name:"v1",type:"float"},{name:"v2",type:"float"},{name:"v3",type:"float"},{name:"v4",type:"float"},{name:"v5",type:"float"},{name:"v6",type:"float"},{name:"v7",type:"float"},{name:"s",type:"float"},{name:"t",type:"float"},{name:"r",type:"float"}]}),XE=A(([o,e,t,s,i,n,r,a,c,l,u])=>{let h=b(u).toVar(),d=b(l).toVar(),p=b(c).toVar(),m=v(a).toVar(),g=v(r).toVar(),y=v(n).toVar(),x=v(i).toVar(),_=v(s).toVar(),w=v(t).toVar(),S=v(e).toVar(),E=v(o).toVar(),B=b(he(1,p)).toVar(),N=b(he(1,d)).toVar();return b(he(1,h)).toVar().mul(N.mul(E.mul(B).add(S.mul(p))).add(d.mul(w.mul(B).add(_.mul(p))))).add(h.mul(N.mul(x.mul(B).add(y.mul(p))).add(d.mul(g.mul(B).add(m.mul(p))))))}).setLayout({name:"mx_trilerp_1",type:"vec3",inputs:[{name:"v0",type:"vec3"},{name:"v1",type:"vec3"},{name:"v2",type:"vec3"},{name:"v3",type:"vec3"},{name:"v4",type:"vec3"},{name:"v5",type:"vec3"},{name:"v6",type:"vec3"},{name:"v7",type:"vec3"},{name:"s",type:"float"},{name:"t",type:"float"},{name:"r",type:"float"}]}),$w=ft([HE,XE]),YE=A(([o,e,t])=>{let s=b(t).toVar(),i=b(e).toVar(),n=D(o).toVar(),r=D(n.bitAnd(D(7))).toVar(),a=b(lc(r.lessThan(D(4)),i,s)).toVar(),c=b(se(2,lc(r.lessThan(D(4)),s,i))).toVar();return Ih(a,hs(r.bitAnd(D(1)))).add(Ih(c,hs(r.bitAnd(D(2)))))}).setLayout({name:"mx_gradient_float_0",type:"float",inputs:[{name:"hash",type:"uint"},{name:"x",type:"float"},{name:"y",type:"float"}]}),jE=A(([o,e,t,s])=>{let i=b(s).toVar(),n=b(t).toVar(),r=b(e).toVar(),a=D(o).toVar(),c=D(a.bitAnd(D(15))).toVar(),l=b(lc(c.lessThan(D(8)),r,n)).toVar(),u=b(lc(c.lessThan(D(4)),n,lc(c.equal(D(12)).or(c.equal(D(14))),r,i))).toVar();return Ih(l,hs(c.bitAnd(D(1)))).add(Ih(u,hs(c.bitAnd(D(2)))))}).setLayout({name:"mx_gradient_float_1",type:"float",inputs:[{name:"hash",type:"uint"},{name:"x",type:"float"},{name:"y",type:"float"},{name:"z",type:"float"}]}),ot=ft([YE,jE]),ZE=A(([o,e,t])=>{let s=b(t).toVar(),i=b(e).toVar(),n=mr(o).toVar();return v(ot(n.x,i,s),ot(n.y,i,s),ot(n.z,i,s))}).setLayout({name:"mx_gradient_vec3_0",type:"vec3",inputs:[{name:"hash",type:"uvec3"},{name:"x",type:"float"},{name:"y",type:"float"}]}),JE=A(([o,e,t,s])=>{let i=b(s).toVar(),n=b(t).toVar(),r=b(e).toVar(),a=mr(o).toVar();return v(ot(a.x,r,n,i),ot(a.y,r,n,i),ot(a.z,r,n,i))}).setLayout({name:"mx_gradient_vec3_1",type:"vec3",inputs:[{name:"hash",type:"uvec3"},{name:"x",type:"float"},{name:"y",type:"float"},{name:"z",type:"float"}]}),os=ft([ZE,JE]),QE=A(([o])=>{let e=b(o).toVar();return se(.6616,e)}).setLayout({name:"mx_gradient_scale2d_0",type:"float",inputs:[{name:"v",type:"float"}]}),KE=A(([o])=>{let e=b(o).toVar();return se(.982,e)}).setLayout({name:"mx_gradient_scale3d_0",type:"float",inputs:[{name:"v",type:"float"}]}),eB=A(([o])=>{let e=v(o).toVar();return se(.6616,e)}).setLayout({name:"mx_gradient_scale2d_1",type:"vec3",inputs:[{name:"v",type:"vec3"}]}),qw=ft([QE,eB]),tB=A(([o])=>{let e=v(o).toVar();return se(.982,e)}).setLayout({name:"mx_gradient_scale3d_1",type:"vec3",inputs:[{name:"v",type:"vec3"}]}),Hw=ft([KE,tB]),es=A(([o,e])=>{let t=T(e).toVar(),s=D(o).toVar();return s.shiftLeft(t).bitOr(s.shiftRight(T(32).sub(t)))}).setLayout({name:"mx_rotl32",type:"uint",inputs:[{name:"x",type:"uint"},{name:"k",type:"int"}]}),Xw=A(([o,e,t])=>{o.subAssign(t),o.bitXorAssign(es(t,T(4))),t.addAssign(e),e.subAssign(o),e.bitXorAssign(es(o,T(6))),o.addAssign(t),t.subAssign(e),t.bitXorAssign(es(e,T(8))),e.addAssign(o),o.subAssign(t),o.bitXorAssign(es(t,T(16))),t.addAssign(e),e.subAssign(o),e.bitXorAssign(es(o,T(19))),o.addAssign(t),t.subAssign(e),t.bitXorAssign(es(e,T(4))),e.addAssign(o)}),Lc=A(([o,e,t])=>{let s=D(t).toVar(),i=D(e).toVar(),n=D(o).toVar();return s.bitXorAssign(i),s.subAssign(es(i,T(14))),n.bitXorAssign(s),n.subAssign(es(s,T(11))),i.bitXorAssign(n),i.subAssign(es(n,T(25))),s.bitXorAssign(i),s.subAssign(es(i,T(16))),n.bitXorAssign(s),n.subAssign(es(s,T(4))),i.bitXorAssign(n),i.subAssign(es(n,T(14))),s.bitXorAssign(i),s.subAssign(es(i,T(24))),s}).setLayout({name:"mx_bjfinal",type:"uint",inputs:[{name:"a",type:"uint"},{name:"b",type:"uint"},{name:"c",type:"uint"}]}),wt=A(([o])=>{let e=D(o).toVar();return b(e).div(b(D(T(4294967295))))}).setLayout({name:"mx_bits_to_01",type:"float",inputs:[{name:"bits",type:"uint"}]}),hi=A(([o])=>{let e=b(o).toVar();return e.mul(e).mul(e).mul(e.mul(e.mul(6).sub(15)).add(10))}).setLayout({name:"mx_fade",type:"float",inputs:[{name:"t",type:"float"}]}),sB=A(([o])=>{let e=T(o).toVar(),t=D(D(1)).toVar(),s=D(D(T(3735928559)).add(t.shiftLeft(D(2))).add(D(13))).toVar();return Lc(s.add(D(e)),s,s)}).setLayout({name:"mx_hash_int_0",type:"uint",inputs:[{name:"x",type:"int"}]}),iB=A(([o,e])=>{let t=T(e).toVar(),s=T(o).toVar(),i=D(D(2)).toVar(),n=D().toVar(),r=D().toVar(),a=D().toVar();return n.assign(r.assign(a.assign(D(T(3735928559)).add(i.shiftLeft(D(2))).add(D(13))))),n.addAssign(D(s)),r.addAssign(D(t)),Lc(n,r,a)}).setLayout({name:"mx_hash_int_1",type:"uint",inputs:[{name:"x",type:"int"},{name:"y",type:"int"}]}),nB=A(([o,e,t])=>{let s=T(t).toVar(),i=T(e).toVar(),n=T(o).toVar(),r=D(D(3)).toVar(),a=D().toVar(),c=D().toVar(),l=D().toVar();return a.assign(c.assign(l.assign(D(T(3735928559)).add(r.shiftLeft(D(2))).add(D(13))))),a.addAssign(D(n)),c.addAssign(D(i)),l.addAssign(D(s)),Lc(a,c,l)}).setLayout({name:"mx_hash_int_2",type:"uint",inputs:[{name:"x",type:"int"},{name:"y",type:"int"},{name:"z",type:"int"}]}),rB=A(([o,e,t,s])=>{let i=T(s).toVar(),n=T(t).toVar(),r=T(e).toVar(),a=T(o).toVar(),c=D(D(4)).toVar(),l=D().toVar(),u=D().toVar(),h=D().toVar();return l.assign(u.assign(h.assign(D(T(3735928559)).add(c.shiftLeft(D(2))).add(D(13))))),l.addAssign(D(a)),u.addAssign(D(r)),h.addAssign(D(n)),Xw(l,u,h),l.addAssign(D(i)),Lc(l,u,h)}).setLayout({name:"mx_hash_int_3",type:"uint",inputs:[{name:"x",type:"int"},{name:"y",type:"int"},{name:"z",type:"int"},{name:"xx",type:"int"}]}),oB=A(([o,e,t,s,i])=>{let n=T(i).toVar(),r=T(s).toVar(),a=T(t).toVar(),c=T(e).toVar(),l=T(o).toVar(),u=D(D(5)).toVar(),h=D().toVar(),d=D().toVar(),p=D().toVar();return h.assign(d.assign(p.assign(D(T(3735928559)).add(u.shiftLeft(D(2))).add(D(13))))),h.addAssign(D(l)),d.addAssign(D(c)),p.addAssign(D(a)),Xw(h,d,p),h.addAssign(D(r)),d.addAssign(D(n)),Lc(h,d,p)}).setLayout({name:"mx_hash_int_4",type:"uint",inputs:[{name:"x",type:"int"},{name:"y",type:"int"},{name:"z",type:"int"},{name:"xx",type:"int"},{name:"yy",type:"int"}]}),Ae=ft([sB,iB,nB,rB,oB]),aB=A(([o,e])=>{let t=T(e).toVar(),s=T(o).toVar(),i=D(Ae(s,t)).toVar(),n=mr().toVar();return n.x.assign(i.bitAnd(T(255))),n.y.assign(i.shiftRight(T(8)).bitAnd(T(255))),n.z.assign(i.shiftRight(T(16)).bitAnd(T(255))),n}).setLayout({name:"mx_hash_vec3_0",type:"uvec3",inputs:[{name:"x",type:"int"},{name:"y",type:"int"}]}),cB=A(([o,e,t])=>{let s=T(t).toVar(),i=T(e).toVar(),n=T(o).toVar(),r=D(Ae(n,i,s)).toVar(),a=mr().toVar();return a.x.assign(r.bitAnd(T(255))),a.y.assign(r.shiftRight(T(8)).bitAnd(T(255))),a.z.assign(r.shiftRight(T(16)).bitAnd(T(255))),a}).setLayout({name:"mx_hash_vec3_1",type:"uvec3",inputs:[{name:"x",type:"int"},{name:"y",type:"int"},{name:"z",type:"int"}]}),as=ft([aB,cB]),lB=A(([o])=>{let e=U(o).toVar(),t=T().toVar(),s=T().toVar(),i=b(Le(e.x,t)).toVar(),n=b(Le(e.y,s)).toVar(),r=b(hi(i)).toVar(),a=b(hi(n)).toVar(),c=b(Ww(ot(Ae(t,s),i,n),ot(Ae(t.add(T(1)),s),i.sub(1),n),ot(Ae(t,s.add(T(1))),i,n.sub(1)),ot(Ae(t.add(T(1)),s.add(T(1))),i.sub(1),n.sub(1)),r,a)).toVar();return qw(c)}).setLayout({name:"mx_perlin_noise_float_0",type:"float",inputs:[{name:"p",type:"vec2"}]}),uB=A(([o])=>{let e=v(o).toVar(),t=T().toVar(),s=T().toVar(),i=T().toVar(),n=b(Le(e.x,t)).toVar(),r=b(Le(e.y,s)).toVar(),a=b(Le(e.z,i)).toVar(),c=b(hi(n)).toVar(),l=b(hi(r)).toVar(),u=b(hi(a)).toVar(),h=b($w(ot(Ae(t,s,i),n,r,a),ot(Ae(t.add(T(1)),s,i),n.sub(1),r,a),ot(Ae(t,s.add(T(1)),i),n,r.sub(1),a),ot(Ae(t.add(T(1)),s.add(T(1)),i),n.sub(1),r.sub(1),a),ot(Ae(t,s,i.add(T(1))),n,r,a.sub(1)),ot(Ae(t.add(T(1)),s,i.add(T(1))),n.sub(1),r,a.sub(1)),ot(Ae(t,s.add(T(1)),i.add(T(1))),n,r.sub(1),a.sub(1)),ot(Ae(t.add(T(1)),s.add(T(1)),i.add(T(1))),n.sub(1),r.sub(1),a.sub(1)),c,l,u)).toVar();return Hw(h)}).setLayout({name:"mx_perlin_noise_float_1",type:"float",inputs:[{name:"p",type:"vec3"}]}),m0=ft([lB,uB]),hB=A(([o])=>{let e=U(o).toVar(),t=T().toVar(),s=T().toVar(),i=b(Le(e.x,t)).toVar(),n=b(Le(e.y,s)).toVar(),r=b(hi(i)).toVar(),a=b(hi(n)).toVar(),c=v(Ww(os(as(t,s),i,n),os(as(t.add(T(1)),s),i.sub(1),n),os(as(t,s.add(T(1))),i,n.sub(1)),os(as(t.add(T(1)),s.add(T(1))),i.sub(1),n.sub(1)),r,a)).toVar();return qw(c)}).setLayout({name:"mx_perlin_noise_vec3_0",type:"vec3",inputs:[{name:"p",type:"vec2"}]}),dB=A(([o])=>{let e=v(o).toVar(),t=T().toVar(),s=T().toVar(),i=T().toVar(),n=b(Le(e.x,t)).toVar(),r=b(Le(e.y,s)).toVar(),a=b(Le(e.z,i)).toVar(),c=b(hi(n)).toVar(),l=b(hi(r)).toVar(),u=b(hi(a)).toVar(),h=v($w(os(as(t,s,i),n,r,a),os(as(t.add(T(1)),s,i),n.sub(1),r,a),os(as(t,s.add(T(1)),i),n,r.sub(1),a),os(as(t.add(T(1)),s.add(T(1)),i),n.sub(1),r.sub(1),a),os(as(t,s,i.add(T(1))),n,r,a.sub(1)),os(as(t.add(T(1)),s,i.add(T(1))),n.sub(1),r,a.sub(1)),os(as(t,s.add(T(1)),i.add(T(1))),n,r.sub(1),a.sub(1)),os(as(t.add(T(1)),s.add(T(1)),i.add(T(1))),n.sub(1),r.sub(1),a.sub(1)),c,l,u)).toVar();return Hw(h)}).setLayout({name:"mx_perlin_noise_vec3_1",type:"vec3",inputs:[{name:"p",type:"vec3"}]}),Uc=ft([hB,dB]),pB=A(([o])=>{let e=b(o).toVar(),t=T(Xe(e)).toVar();return wt(Ae(t))}).setLayout({name:"mx_cell_noise_float_0",type:"float",inputs:[{name:"p",type:"float"}]}),fB=A(([o])=>{let e=U(o).toVar(),t=T(Xe(e.x)).toVar(),s=T(Xe(e.y)).toVar();return wt(Ae(t,s))}).setLayout({name:"mx_cell_noise_float_1",type:"float",inputs:[{name:"p",type:"vec2"}]}),mB=A(([o])=>{let e=v(o).toVar(),t=T(Xe(e.x)).toVar(),s=T(Xe(e.y)).toVar(),i=T(Xe(e.z)).toVar();return wt(Ae(t,s,i))}).setLayout({name:"mx_cell_noise_float_2",type:"float",inputs:[{name:"p",type:"vec3"}]}),gB=A(([o])=>{let e=Z(o).toVar(),t=T(Xe(e.x)).toVar(),s=T(Xe(e.y)).toVar(),i=T(Xe(e.z)).toVar(),n=T(Xe(e.w)).toVar();return wt(Ae(t,s,i,n))}).setLayout({name:"mx_cell_noise_float_3",type:"float",inputs:[{name:"p",type:"vec4"}]}),yB=ft([pB,fB,mB,gB]),xB=A(([o])=>{let e=b(o).toVar(),t=T(Xe(e)).toVar();return v(wt(Ae(t,T(0))),wt(Ae(t,T(1))),wt(Ae(t,T(2))))}).setLayout({name:"mx_cell_noise_vec3_0",type:"vec3",inputs:[{name:"p",type:"float"}]}),bB=A(([o])=>{let e=U(o).toVar(),t=T(Xe(e.x)).toVar(),s=T(Xe(e.y)).toVar();return v(wt(Ae(t,s,T(0))),wt(Ae(t,s,T(1))),wt(Ae(t,s,T(2))))}).setLayout({name:"mx_cell_noise_vec3_1",type:"vec3",inputs:[{name:"p",type:"vec2"}]}),_B=A(([o])=>{let e=v(o).toVar(),t=T(Xe(e.x)).toVar(),s=T(Xe(e.y)).toVar(),i=T(Xe(e.z)).toVar();return v(wt(Ae(t,s,i,T(0))),wt(Ae(t,s,i,T(1))),wt(Ae(t,s,i,T(2))))}).setLayout({name:"mx_cell_noise_vec3_2",type:"vec3",inputs:[{name:"p",type:"vec3"}]}),TB=A(([o])=>{let e=Z(o).toVar(),t=T(Xe(e.x)).toVar(),s=T(Xe(e.y)).toVar(),i=T(Xe(e.z)).toVar(),n=T(Xe(e.w)).toVar();return v(wt(Ae(t,s,i,n,T(0))),wt(Ae(t,s,i,n,T(1))),wt(Ae(t,s,i,n,T(2))))}).setLayout({name:"mx_cell_noise_vec3_3",type:"vec3",inputs:[{name:"p",type:"vec4"}]}),Md=ft([xB,bB,_B,TB]),Ph=A(([o,e,t,s])=>{let i=b(s).toVar(),n=b(t).toVar(),r=T(e).toVar(),a=v(o).toVar(),c=b(0).toVar(),l=b(1).toVar();return Me(r,()=>{c.addAssign(l.mul(m0(a))),l.mulAssign(i),a.mulAssign(n)}),c}).setLayout({name:"mx_fractal_noise_float",type:"float",inputs:[{name:"p",type:"vec3"},{name:"octaves",type:"int"},{name:"lacunarity",type:"float"},{name:"diminish",type:"float"}]}),Ad=A(([o,e,t,s])=>{let i=b(s).toVar(),n=b(t).toVar(),r=T(e).toVar(),a=v(o).toVar(),c=v(0).toVar(),l=b(1).toVar();return Me(r,()=>{c.addAssign(l.mul(Uc(a))),l.mulAssign(i),a.mulAssign(n)}),c}).setLayout({name:"mx_fractal_noise_vec3",type:"vec3",inputs:[{name:"p",type:"vec3"},{name:"octaves",type:"int"},{name:"lacunarity",type:"float"},{name:"diminish",type:"float"}]}),SB=A(([o,e,t,s])=>{let i=b(s).toVar(),n=b(t).toVar(),r=T(e).toVar(),a=v(o).toVar();return U(Ph(a,r,n,i),Ph(a.add(v(T(19),T(193),T(17))),r,n,i))}).setLayout({name:"mx_fractal_noise_vec2",type:"vec2",inputs:[{name:"p",type:"vec3"},{name:"octaves",type:"int"},{name:"lacunarity",type:"float"},{name:"diminish",type:"float"}]}),vB=A(([o,e,t,s])=>{let i=b(s).toVar(),n=b(t).toVar(),r=T(e).toVar(),a=v(o).toVar(),c=v(Ad(a,r,n,i)).toVar(),l=b(Ph(a.add(v(T(19),T(193),T(17))),r,n,i)).toVar();return Z(c,l)}).setLayout({name:"mx_fractal_noise_vec4",type:"vec4",inputs:[{name:"p",type:"vec3"},{name:"octaves",type:"int"},{name:"lacunarity",type:"float"},{name:"diminish",type:"float"}]}),wB=A(([o,e,t,s,i,n,r])=>{let a=T(r).toVar(),c=b(n).toVar(),l=T(i).toVar(),u=T(s).toVar(),h=T(t).toVar(),d=T(e).toVar(),p=U(o).toVar(),m=v(Md(U(d.add(u),h.add(l)))).toVar(),g=U(m.x,m.y).toVar();g.subAssign(.5),g.mulAssign(c),g.addAssign(.5);let y=U(U(b(d),b(h)).add(g)).toVar(),x=U(y.sub(p)).toVar();return K(a.equal(T(2)),()=>Ee(x.x).add(Ee(x.y))),K(a.equal(T(3)),()=>ze(Ee(x.x),Ee(x.y))),ds(x,x)}).setLayout({name:"mx_worley_distance_0",type:"float",inputs:[{name:"p",type:"vec2"},{name:"x",type:"int"},{name:"y",type:"int"},{name:"xoff",type:"int"},{name:"yoff",type:"int"},{name:"jitter",type:"float"},{name:"metric",type:"int"}]}),MB=A(([o,e,t,s,i,n,r,a,c])=>{let l=T(c).toVar(),u=b(a).toVar(),h=T(r).toVar(),d=T(n).toVar(),p=T(i).toVar(),m=T(s).toVar(),g=T(t).toVar(),y=T(e).toVar(),x=v(o).toVar(),_=v(Md(v(y.add(p),g.add(d),m.add(h)))).toVar();_.subAssign(.5),_.mulAssign(u),_.addAssign(.5);let w=v(v(b(y),b(g),b(m)).add(_)).toVar(),S=v(w.sub(x)).toVar();return K(l.equal(T(2)),()=>Ee(S.x).add(Ee(S.y)).add(Ee(S.z))),K(l.equal(T(3)),()=>ze(Ee(S.x),Ee(S.y),Ee(S.z))),ds(S,S)}).setLayout({name:"mx_worley_distance_1",type:"float",inputs:[{name:"p",type:"vec3"},{name:"x",type:"int"},{name:"y",type:"int"},{name:"z",type:"int"},{name:"xoff",type:"int"},{name:"yoff",type:"int"},{name:"zoff",type:"int"},{name:"jitter",type:"float"},{name:"metric",type:"int"}]}),Bo=ft([wB,MB]),AB=A(([o,e,t])=>{let s=T(t).toVar(),i=b(e).toVar(),n=U(o).toVar(),r=T().toVar(),a=T().toVar(),c=U(Le(n.x,r),Le(n.y,a)).toVar(),l=b(1e6).toVar();return Me({start:-1,end:T(1),name:"x",condition:"<="},({x:u})=>{Me({start:-1,end:T(1),name:"y",condition:"<="},({y:h})=>{let d=b(Bo(c,u,h,r,a,i,s)).toVar();l.assign(Vt(l,d))})}),K(s.equal(T(0)),()=>{l.assign(It(l))}),l}).setLayout({name:"mx_worley_noise_float_0",type:"float",inputs:[{name:"p",type:"vec2"},{name:"jitter",type:"float"},{name:"metric",type:"int"}]}),NB=A(([o,e,t])=>{let s=T(t).toVar(),i=b(e).toVar(),n=U(o).toVar(),r=T().toVar(),a=T().toVar(),c=U(Le(n.x,r),Le(n.y,a)).toVar(),l=U(1e6,1e6).toVar();return Me({start:-1,end:T(1),name:"x",condition:"<="},({x:u})=>{Me({start:-1,end:T(1),name:"y",condition:"<="},({y:h})=>{let d=b(Bo(c,u,h,r,a,i,s)).toVar();K(d.lessThan(l.x),()=>{l.y.assign(l.x),l.x.assign(d)}).ElseIf(d.lessThan(l.y),()=>{l.y.assign(d)})})}),K(s.equal(T(0)),()=>{l.assign(It(l))}),l}).setLayout({name:"mx_worley_noise_vec2_0",type:"vec2",inputs:[{name:"p",type:"vec2"},{name:"jitter",type:"float"},{name:"metric",type:"int"}]}),RB=A(([o,e,t])=>{let s=T(t).toVar(),i=b(e).toVar(),n=U(o).toVar(),r=T().toVar(),a=T().toVar(),c=U(Le(n.x,r),Le(n.y,a)).toVar(),l=v(1e6,1e6,1e6).toVar();return Me({start:-1,end:T(1),name:"x",condition:"<="},({x:u})=>{Me({start:-1,end:T(1),name:"y",condition:"<="},({y:h})=>{let d=b(Bo(c,u,h,r,a,i,s)).toVar();K(d.lessThan(l.x),()=>{l.z.assign(l.y),l.y.assign(l.x),l.x.assign(d)}).ElseIf(d.lessThan(l.y),()=>{l.z.assign(l.y),l.y.assign(d)}).ElseIf(d.lessThan(l.z),()=>{l.z.assign(d)})})}),K(s.equal(T(0)),()=>{l.assign(It(l))}),l}).setLayout({name:"mx_worley_noise_vec3_0",type:"vec3",inputs:[{name:"p",type:"vec2"},{name:"jitter",type:"float"},{name:"metric",type:"int"}]}),CB=A(([o,e,t])=>{let s=T(t).toVar(),i=b(e).toVar(),n=v(o).toVar(),r=T().toVar(),a=T().toVar(),c=T().toVar(),l=v(Le(n.x,r),Le(n.y,a),Le(n.z,c)).toVar(),u=b(1e6).toVar();return Me({start:-1,end:T(1),name:"x",condition:"<="},({x:h})=>{Me({start:-1,end:T(1),name:"y",condition:"<="},({y:d})=>{Me({start:-1,end:T(1),name:"z",condition:"<="},({z:p})=>{let m=b(Bo(l,h,d,p,r,a,c,i,s)).toVar();u.assign(Vt(u,m))})})}),K(s.equal(T(0)),()=>{u.assign(It(u))}),u}).setLayout({name:"mx_worley_noise_float_1",type:"float",inputs:[{name:"p",type:"vec3"},{name:"jitter",type:"float"},{name:"metric",type:"int"}]}),EB=ft([AB,CB]),BB=A(([o,e,t])=>{let s=T(t).toVar(),i=b(e).toVar(),n=v(o).toVar(),r=T().toVar(),a=T().toVar(),c=T().toVar(),l=v(Le(n.x,r),Le(n.y,a),Le(n.z,c)).toVar(),u=U(1e6,1e6).toVar();return Me({start:-1,end:T(1),name:"x",condition:"<="},({x:h})=>{Me({start:-1,end:T(1),name:"y",condition:"<="},({y:d})=>{Me({start:-1,end:T(1),name:"z",condition:"<="},({z:p})=>{let m=b(Bo(l,h,d,p,r,a,c,i,s)).toVar();K(m.lessThan(u.x),()=>{u.y.assign(u.x),u.x.assign(m)}).ElseIf(m.lessThan(u.y),()=>{u.y.assign(m)})})})}),K(s.equal(T(0)),()=>{u.assign(It(u))}),u}).setLayout({name:"mx_worley_noise_vec2_1",type:"vec2",inputs:[{name:"p",type:"vec3"},{name:"jitter",type:"float"},{name:"metric",type:"int"}]}),FB=ft([NB,BB]),IB=A(([o,e,t])=>{let s=T(t).toVar(),i=b(e).toVar(),n=v(o).toVar(),r=T().toVar(),a=T().toVar(),c=T().toVar(),l=v(Le(n.x,r),Le(n.y,a),Le(n.z,c)).toVar(),u=v(1e6,1e6,1e6).toVar();return Me({start:-1,end:T(1),name:"x",condition:"<="},({x:h})=>{Me({start:-1,end:T(1),name:"y",condition:"<="},({y:d})=>{Me({start:-1,end:T(1),name:"z",condition:"<="},({z:p})=>{let m=b(Bo(l,h,d,p,r,a,c,i,s)).toVar();K(m.lessThan(u.x),()=>{u.z.assign(u.y),u.y.assign(u.x),u.x.assign(m)}).ElseIf(m.lessThan(u.y),()=>{u.z.assign(u.y),u.y.assign(m)}).ElseIf(m.lessThan(u.z),()=>{u.z.assign(m)})})})}),K(s.equal(T(0)),()=>{u.assign(It(u))}),u}).setLayout({name:"mx_worley_noise_vec3_1",type:"vec3",inputs:[{name:"p",type:"vec3"},{name:"jitter",type:"float"},{name:"metric",type:"int"}]}),g0=ft([RB,IB]),PB=A(([o,e,t,s,i,n,r,a,c,l,u])=>{let h=T(o).toVar(),d=U(e).toVar(),p=U(t).toVar(),m=U(s).toVar(),g=b(i).toVar(),y=b(n).toVar(),x=b(r).toVar(),_=hs(a).toVar(),w=T(c).toVar(),S=b(l).toVar(),E=b(u).toVar(),B=d.mul(p).add(m),N=b(0).toVar();return K(h.equal(T(0)),()=>{N.assign(Uc(B))}),K(h.equal(T(1)),()=>{N.assign(Md(B))}),K(h.equal(T(2)),()=>{N.assign(g0(B,g,T(0)))}),K(h.equal(T(3)),()=>{N.assign(Ad(v(B,0),w,S,E))}),N.assign(N.mul(x.sub(y)).add(y)),K(_,()=>{N.assign(Bs(N,y,x))}),N}).setLayout({name:"mx_unifiednoise2d",type:"float",inputs:[{name:"noiseType",type:"int"},{name:"texcoord",type:"vec2"},{name:"freq",type:"vec2"},{name:"offset",type:"vec2"},{name:"jitter",type:"float"},{name:"outmin",type:"float"},{name:"outmax",type:"float"},{name:"clampoutput",type:"bool"},{name:"octaves",type:"int"},{name:"lacunarity",type:"float"},{name:"diminish",type:"float"}]}),DB=A(([o,e,t,s,i,n,r,a,c,l,u])=>{let h=T(o).toVar(),d=v(e).toVar(),p=v(t).toVar(),m=v(s).toVar(),g=b(i).toVar(),y=b(n).toVar(),x=b(r).toVar(),_=hs(a).toVar(),w=T(c).toVar(),S=b(l).toVar(),E=b(u).toVar(),B=d.mul(p).add(m),N=b(0).toVar();return K(h.equal(T(0)),()=>{N.assign(Uc(B))}),K(h.equal(T(1)),()=>{N.assign(Md(B))}),K(h.equal(T(2)),()=>{N.assign(g0(B,g,T(0)))}),K(h.equal(T(3)),()=>{N.assign(Ad(B,w,S,E))}),N.assign(N.mul(x.sub(y)).add(y)),K(_,()=>{N.assign(Bs(N,y,x))}),N}).setLayout({name:"mx_unifiednoise3d",type:"float",inputs:[{name:"noiseType",type:"int"},{name:"position",type:"vec3"},{name:"freq",type:"vec3"},{name:"offset",type:"vec3"},{name:"jitter",type:"float"},{name:"outmin",type:"float"},{name:"outmax",type:"float"},{name:"clampoutput",type:"bool"},{name:"octaves",type:"int"},{name:"lacunarity",type:"float"},{name:"diminish",type:"float"}]}),LB=A(([o])=>{let e=o.y,t=o.z,s=v().toVar();return K(e.lessThan(1e-4),()=>{s.assign(v(t,t,t))}).Else(()=>{let i=o.x;i=i.sub(oi(i)).mul(6).toVar();let n=T(Tx(i)),r=i.sub(b(n)),a=t.mul(e.oneMinus()),c=t.mul(e.mul(r).oneMinus()),l=t.mul(e.mul(r.oneMinus()).oneMinus());K(n.equal(T(0)),()=>{s.assign(v(t,l,a))}).ElseIf(n.equal(T(1)),()=>{s.assign(v(c,t,a))}).ElseIf(n.equal(T(2)),()=>{s.assign(v(a,t,l))}).ElseIf(n.equal(T(3)),()=>{s.assign(v(a,c,t))}).ElseIf(n.equal(T(4)),()=>{s.assign(v(l,a,t))}).Else(()=>{s.assign(v(t,a,c))})}),s}).setLayout({name:"mx_hsvtorgb",type:"vec3",inputs:[{name:"hsv",type:"vec3"}]}),UB=A(([o])=>{let e=v(o).toVar(),t=b(e.x).toVar(),s=b(e.y).toVar(),i=b(e.z).toVar(),n=b(Vt(t,Vt(s,i))).toVar(),r=b(ze(t,ze(s,i))).toVar(),a=b(r.sub(n)).toVar(),c=b().toVar(),l=b().toVar(),u=b().toVar();return u.assign(r),K(r.greaterThan(0),()=>{l.assign(a.div(r))}).Else(()=>{l.assign(0)}),K(l.lessThanEqual(0),()=>{c.assign(0)}).Else(()=>{K(t.greaterThanEqual(r),()=>{c.assign(s.sub(i).div(a))}).ElseIf(s.greaterThanEqual(r),()=>{c.assign(Ye(2,i.sub(t).div(a)))}).Else(()=>{c.assign(Ye(4,t.sub(s).div(a)))}),c.mulAssign(1/6),K(c.lessThan(0),()=>{c.addAssign(1)})}),v(c,l,u)}).setLayout({name:"mx_rgbtohsv",type:"vec3",inputs:[{name:"c",type:"vec3"}]}),OB=A(([o])=>{let e=v(o).toVar(),t=ix(hx(e,v(.04045))).toVar(),s=v(e.div(12.92)).toVar(),i=v(cs(ze(e.add(v(.055)),v(0)).div(1.055),v(2.4))).toVar();return le(s,i,t)}).setLayout({name:"mx_srgb_texture_to_lin_rec709",type:"vec3",inputs:[{name:"color",type:"vec3"}]}),Yw=(o,e)=>{o=b(o),e=b(e);let t=U(e.dFdx(),e.dFdy()).length().mul(.7071067811865476);return Fs(o.sub(t),o.add(t),e)},jw=(o,e,t,s)=>le(o,e,t[s].clamp()),VB=(o,e,t=Re())=>jw(o,e,t,"x"),kB=(o,e,t=Re())=>jw(o,e,t,"y"),zB=(o,e,t,s,i=Re())=>{let n=i.x.clamp(),r=i.y.clamp(),a=le(o,e,n),c=le(t,s,n);return le(a,c,r)},Zw=(o,e,t,s,i)=>le(o,e,Yw(t,s[i])),GB=(o,e,t,s=Re())=>Zw(o,e,t,s,"x"),WB=(o,e,t,s=Re())=>Zw(o,e,t,s,"y"),$B=(o=1,e=0,t=Re())=>t.mul(o).add(e),qB=(o,e=1)=>(o=b(o),o.abs().pow(e).mul(o.sign())),HB=(o,e=1,t=.5)=>b(o).sub(t).mul(e).add(t),XB=(o=Re(),e=1,t=0)=>m0(o.convert("vec2|vec3")).mul(e).add(t),YB=(o=Re(),e=1,t=0)=>Uc(o.convert("vec2|vec3")).mul(e).add(t),jB=(o=Re(),e=1,t=0)=>(o=o.convert("vec2|vec3"),Z(Uc(o),m0(o.add(U(19,73)))).mul(e).add(t)),ZB=(o,e=Re(),t=U(1,1),s=U(0,0),i=1,n=0,r=1,a=!1,c=1,l=2,u=.5)=>PB(o,e.convert("vec2|vec3"),t,s,i,n,r,a,c,l,u),JB=(o,e=Re(),t=U(1,1),s=U(0,0),i=1,n=0,r=1,a=!1,c=1,l=2,u=.5)=>DB(o,e.convert("vec2|vec3"),t,s,i,n,r,a,c,l,u),QB=(o=Re(),e=1)=>EB(o.convert("vec2|vec3"),e,T(1)),KB=(o=Re(),e=1)=>FB(o.convert("vec2|vec3"),e,T(1)),eF=(o=Re(),e=1)=>g0(o.convert("vec2|vec3"),e,T(1)),tF=(o=Re())=>yB(o.convert("vec2|vec3")),sF=(o=Re(),e=3,t=2,s=.5,i=1)=>Ph(o,T(e),t,s).mul(i),iF=(o=Re(),e=3,t=2,s=.5,i=1)=>SB(o,T(e),t,s).mul(i),nF=(o=Re(),e=3,t=2,s=.5,i=1)=>Ad(o,T(e),t,s).mul(i),rF=(o=Re(),e=3,t=2,s=.5,i=1)=>vB(o,T(e),t,s).mul(i),oF=(o,e=b(0))=>Ye(o,e),aF=(o,e=b(0))=>he(o,e),cF=(o,e=b(1))=>se(o,e),lF=(o,e=b(1))=>ss(o,e),uF=(o,e=b(1))=>Bc(o,e),hF=(o,e=b(1))=>cs(o,e),dF=(o=b(0),e=b(1))=>gx(o,e),pF=()=>Eo,fF=()=>aw,mF=(o,e=b(1))=>he(e,o),gF=(o,e,t,s)=>o.greaterThan(e).mix(t,s),yF=(o,e,t,s)=>o.greaterThanEqual(e).mix(t,s),xF=(o,e,t,s)=>o.equal(e).mix(t,s),bF=(o,e=null)=>{if(typeof e=="string"){let t={x:0,r:0,y:1,g:1,z:2,b:2,w:3,a:3},s=e.replace(/^out/,"").toLowerCase();if(t[s]!==void 0)return o.element(t[s])}if(typeof e=="number")return o.element(e);if(typeof e=="string"&&e.length===1){let t={x:0,r:0,y:1,g:1,z:2,b:2,w:3,a:3};if(t[e]!==void 0)return o.element(t[e])}return o},_F=(o,e=U(.5,.5),t=U(1,1),s=b(0),i=U(0,0))=>{let n=o;if(e&&(n=n.sub(e)),t&&(n=n.mul(t)),s){let r=s.mul(Math.PI/180),a=r.cos(),c=r.sin();n=U(n.x.mul(a).sub(n.y.mul(c)),n.x.mul(c).add(n.y.mul(a)))}return e&&(n=n.add(e)),i&&(n=n.add(i)),n},TF=(o,e)=>{o=U(o),e=b(e);let t=e.mul(Math.PI/180);return Pc(o,t)},SF=(o,e,t)=>{o=v(o),e=b(e),t=v(t);let s=e.mul(Math.PI/180),i=t.normalize(),n=s.cos(),r=s.sin(),a=b(1).sub(n);return o.mul(n).add(i.cross(o).mul(r)).add(i.mul(i.dot(o)).mul(a))},vF=(o,e)=>(o=v(o),e=b(e),Wx(o,e)),wF=A(([o,e,t])=>{let s=Ut(o).toVar(),i=he(b(.5).mul(e.sub(t)),li).div(s).toVar(),n=he(b(-.5).mul(e.sub(t)),li).div(s).toVar(),r=v().toVar();r.x=s.x.greaterThan(b(0)).select(i.x,n.x),r.y=s.y.greaterThan(b(0)).select(i.y,n.y),r.z=s.z.greaterThan(b(0)).select(i.z,n.z);let a=Vt(r.x,r.y,r.z).toVar();return li.add(s.mul(a)).toVar().sub(t)}),Jw=A(([o,e])=>{let t=o.x,s=o.y,i=o.z,n=e.element(0).mul(.886227);return n=n.add(e.element(1).mul(2*.511664).mul(s)),n=n.add(e.element(2).mul(2*.511664).mul(i)),n=n.add(e.element(3).mul(2*.511664).mul(t)),n=n.add(e.element(4).mul(2*.429043).mul(t).mul(s)),n=n.add(e.element(5).mul(2*.429043).mul(s).mul(i)),n=n.add(e.element(6).mul(i.mul(i).mul(.743125).sub(.247708))),n=n.add(e.element(7).mul(2*.429043).mul(t).mul(i)),n=n.add(e.element(8).mul(.429043).mul(se(t,t).sub(se(s,s)))),n}),f=Object.freeze({__proto__:null,BRDF_GGX:e0,BRDF_Lambert:dr,BasicPointShadowFilter:Vw,BasicShadowFilter:Bw,Break:Iv,Const:nS,Continue:LA,DFGLUT:bc,D_GGX:qv,Discard:xS,EPSILON:dx,F_Schlick:Ao,Fn:A,HALF_PI:LM,INFINITY:IM,If:K,Loop:Me,NodeAccess:dt,NodeShaderStage:ec,NodeType:hM,NodeUpdateType:te,OnBeforeMaterialUpdate:aC,OnBeforeObjectUpdate:oC,OnMaterialUpdate:rC,OnObjectUpdate:nC,PCFShadowFilter:Fw,PCFSoftShadowFilter:Iw,PI:rh,PI2:PM,PointShadowFilter:kw,Return:$M,Schlick_to_F0:Mm,ShaderNode:ho,Stack:nd,Switch:AM,TBNViewMatrix:nr,TWO_PI:DM,VSMShadowFilter:Pw,V_GGX_SmithCorrelated:$v,Var:iS,VarIntent:rS,abs:Ee,acesFilmicToneMapping:yw,acos:mx,add:Ye,addMethodChaining:P,addNodeElement:qM,agxToneMapping:xw,all:BT,alphaT:eh,and:gT,anisotropy:cn,anisotropyB:ar,anisotropyT:nc,any:FT,append:EM,array:cT,arrayBuffer:RM,asin:LT,assign:lT,atan:gx,atomicAdd:JC,atomicAnd:tE,atomicFunc:yi,atomicLoad:jC,atomicMax:KC,atomicMin:eE,atomicOr:sE,atomicStore:ZC,atomicSub:QC,atomicXor:iE,attenuationColor:cx,attenuationDistance:ax,attribute:zi,attributeArray:cC,backgroundBlurriness:uw,backgroundIntensity:mg,backgroundRotation:hw,batch:Bv,bentNormalView:YS,billboarding:HR,bitAnd:_T,bitNot:TT,bitOr:ST,bitXor:vT,bitangentGeometry:SA,bitangentLocal:vA,bitangentView:HS,bitangentWorld:wA,bitcast:rw,blendBurn:jA,blendColor:KA,blendDodge:ZA,blendOverlay:QA,blendScreen:JA,blur:Jv,bool:hs,buffer:Fc,bufferAttribute:Bx,builtin:qi,builtinAOContext:tS,builtinShadowContext:eS,bumpMap:Wx,bvec2:sT,bvec3:ix,bvec4:iT,bypass:mS,cache:fS,call:uT,cameraFar:hn,cameraIndex:vn,cameraNear:un,cameraNormalMatrix:eA,cameraPosition:wS,cameraProjectionMatrix:Oi,cameraProjectionMatrixInverse:vS,cameraViewMatrix:fs,cameraViewport:tA,cameraWorldMatrix:KM,cbrt:YT,cdl:TC,ceil:ld,checker:GE,cineonToneMapping:gw,clamp:Bs,clearcoat:Ju,clearcoatNormalView:dn,clearcoatRoughness:po,clipSpace:NS,code:Sd,color:tT,colorSpaceToWorking:hd,colorToDirection:AA,compute:pS,computeKernel:Fx,computeSkinning:DA,context:$i,convert:rT,convertColorSpace:kM,convertToTexture:eC,cos:Rs,countLeadingZeros:vR,countOneBits:wR,countTrailingZeros:SR,cross:ki,cubeTexture:Ft,cubeTextureBase:Gx,dFdx:bx,dFdy:_x,dashSize:$u,debug:bS,decrement:CT,decrementBefore:NT,defaultBuildStages:mf,defaultShaderStages:J_,defined:dc,degrees:PT,deltaTime:OR,densityFogFactor:Sw,depth:Jx,depthPass:AC,determinant:zT,difference:qT,diffuseColor:we,diffuseContribution:er,directPointLight:Gw,directionToColor:jS,directionToFaceDirection:Co,dispersion:lx,disposeShadowMaterial:Lw,distance:$T,div:ss,dot:ds,drawIndex:Cv,dynamicBufferAttribute:WM,element:nT,emissive:Af,equal:hT,equirectUV:Qx,exp:px,exp2:bo,exponentialHeightFogFactor:UC,expression:ts,faceDirection:Vx,faceForward:Nx,faceforward:UM,float:b,floatBitsToInt:bR,floatBitsToUint:ow,floor:oi,fog:Sg,fract:Es,frameGroup:aT,frameId:aw,frontFacing:RS,fwidth:Sx,gain:AR,gapSize:Nf,getConstNodeType:eT,getCurrentStack:ex,getDirection:jv,getDistanceAttenuation:f0,getGeometryRoughness:Wv,getNormalFromDepth:sC,getParallaxCorrectNormal:wF,getRoughness:Kx,getScreenPosition:tC,getShIrradianceAt:Jw,getShadowMaterial:Dw,getShadowRenderObjectFunction:Uw,getTextureIndex:iw,getViewPosition:uo,ggxConvolution:Qv,globalId:zC,glsl:PC,glslFn:DC,grayscale:yC,greaterThan:hx,greaterThanEqual:mT,hash:MR,highpModelNormalViewMatrix:Yf,highpModelViewMatrix:Xf,hue:_C,increment:RT,incrementBefore:AT,inspector:_S,instance:PA,instanceIndex:ui,instancedArray:lC,instancedBufferAttribute:ch,instancedDynamicBufferAttribute:Df,instancedMesh:Ev,int:T,intBitsToFloat:_R,interleavedGradientNoise:i0,inverse:GT,inverseSqrt:fx,inversesqrt:OM,invocationLocalIndex:IA,invocationSubgroupIndex:FA,ior:rc,iridescence:od,iridescenceIOR:Qu,iridescenceThickness:Ku,isolate:go,ivec2:Qe,ivec3:sx,ivec4:nx,js:FC,label:sS,length:ai,lengthSq:Mx,lessThan:pT,lessThanEqual:fT,lightPosition:a0,lightProjectionUV:vw,lightShadowMatrix:wd,lightTargetDirection:l0,lightTargetPosition:ww,lightViewPosition:c0,lightingContext:Dv,lights:BE,linearDepth:mh,linearToneMapping:fw,localId:GC,log:cd,log2:ri,logarithmicDepthToViewZ:GA,luminance:n0,mat2:rd,mat3:at,mat4:gn,matcapUV:Kv,materialAO:Av,materialAlphaTest:ZS,materialAnisotropy:hv,materialAnisotropyVector:lo,materialAttenuationColor:bv,materialAttenuationDistance:xv,materialClearcoat:rv,materialClearcoatNormal:av,materialClearcoatRoughness:ov,materialColor:JS,materialDispersion:Mv,materialEmissive:KS,materialEnvIntensity:qu,materialEnvRotation:zx,materialIOR:yv,materialIridescence:dv,materialIridescenceIOR:pv,materialIridescenceThickness:fv,materialLightMap:qx,materialLineDashOffset:vv,materialLineDashSize:Tv,materialLineGapSize:Sv,materialLineScale:_v,materialLineWidth:CA,materialMetalness:iv,materialNormal:nv,materialOpacity:$x,materialPointSize:wv,materialReference:Di,materialReflectivity:Hu,materialRefractionRatio:FS,materialRotation:cv,materialRoughness:sv,materialSheen:lv,materialSheenRoughness:uv,materialShininess:QS,materialSpecular:ev,materialSpecularColor:tv,materialSpecularIntensity:om,materialSpecularStrength:oc,materialThickness:gv,materialTransmission:mv,max:ze,maxMipLevel:Px,mediumpModelViewMatrix:AS,metalness:Li,min:Vt,mix:le,mixElement:ZT,mod:Bc,modInt:ET,modelDirection:cA,modelNormalMatrix:MS,modelPosition:lA,modelRadius:dA,modelScale:uA,modelViewMatrix:wn,modelViewPosition:hA,modelViewProjection:Nv,modelWorldMatrix:ls,modelWorldMatrixInverse:pA,morphReference:Pv,mrt:nw,mul:se,mx_aastep:Yw,mx_add:oF,mx_atan2:dF,mx_cell_noise_float:tF,mx_contrast:HB,mx_divide:lF,mx_fractal_noise_float:sF,mx_fractal_noise_vec2:iF,mx_fractal_noise_vec3:nF,mx_fractal_noise_vec4:rF,mx_frame:fF,mx_heighttonormal:vF,mx_hsvtorgb:LB,mx_ifequal:xF,mx_ifgreater:gF,mx_ifgreatereq:yF,mx_invert:mF,mx_modulo:uF,mx_multiply:cF,mx_noise_float:XB,mx_noise_vec3:YB,mx_noise_vec4:jB,mx_place2d:_F,mx_power:hF,mx_ramp4:zB,mx_ramplr:VB,mx_ramptb:kB,mx_rgbtohsv:UB,mx_rotate2d:TF,mx_rotate3d:SF,mx_safepower:qB,mx_separate:bF,mx_splitlr:GB,mx_splittb:WB,mx_srgb_texture_to_lin_rec709:OB,mx_subtract:aF,mx_timer:pF,mx_transform_uv:$B,mx_unifiednoise2d:ZB,mx_unifiednoise3d:JB,mx_worley_noise_float:QB,mx_worley_noise_vec2:KB,mx_worley_noise_vec3:eF,negate:xx,neutralToneMapping:bw,nodeArray:or,nodeImmutable:G,nodeObject:q,nodeObjectIntent:tc,nodeObjects:id,nodeProxy:oe,nodeProxyIntent:V,normalFlat:CS,normalGeometry:pd,normalLocal:zt,normalMap:nm,normalView:ye,normalViewGeometry:To,normalWorld:Mn,normalWorldGeometry:ES,normalize:Ut,not:xT,notEqual:dT,numWorkgroups:VC,objectDirection:sA,objectGroup:ux,objectPosition:nA,objectRadius:aA,objectScale:rA,objectViewPosition:oA,objectWorldMatrix:iA,oneMinus:UT,or:yT,orthographicDepthToViewZ:zA,oscSawtooth:GR,oscSine:VR,oscSquare:kR,oscTriangle:zR,output:fo,outputStruct:gR,overloadingFn:ft,packHalf2x16:BR,packSnorm2x16:CR,packUnorm2x16:ER,parabola:rg,parallaxDirection:XS,parallaxUV:MA,parameter:pR,pass:wC,passTexture:MC,pcurve:NR,perspectiveDepthToViewZ:jx,pmremTexture:s0,pointShadow:zw,pointUV:uC,pointWidth:BM,positionGeometry:Ic,positionLocal:Ve,positionPrevious:_o,positionView:qe,positionViewDirection:Ce,positionWorld:li,positionWorldDirection:Ox,posterize:SC,pow:cs,pow2:vx,pow3:HT,pow4:wx,premultiplyAlpha:kv,property:Ui,quadBroadcast:RE,quadSwapDiagonal:SE,quadSwapX:_E,quadSwapY:TE,radians:IT,rand:jT,range:OC,rangeFogFactor:Tw,reciprocal:VT,reference:Ie,referenceBuffer:Qf,reflect:WT,reflectVector:DS,reflectView:IS,reflector:JR,refract:Ax,refractVector:LS,refractView:PS,reinhardToneMapping:mw,remap:gS,remapClamp:yS,renderGroup:J,renderOutput:Ix,rendererReference:uS,replaceDefaultUV:WR,rotate:Pc,rotateUV:$R,roughness:ii,round:OT,rtt:lw,sRGBTransferEOTF:aS,sRGBTransferOETF:cS,sample:iC,sampler:jM,samplerComparison:ZM,saturate:ud,saturation:xC,screenCoordinate:gr,screenDPR:TS,screenSize:hr,screenUV:ci,select:vt,setCurrentStack:pc,setName:Rx,shaderStages:gf,shadow:Ow,shadowPositionWorld:u0,shapeCircle:WE,sharedUniformGroup:ad,sheen:Kt,sheenRoughness:ln,shiftLeft:wT,shiftRight:MT,shininess:th,sign:yx,sin:Bt,sinc:RR,skinning:Fv,smoothstep:Fs,smoothstepElement:JT,specularColor:_n,specularColorBlended:sr,specularF90:ir,spherizeUV:qR,split:CM,spritesheetUV:YR,sqrt:It,stack:Xu,step:ur,stepElement:QT,storage:xn,storageBarrier:qC,storageTexture:dw,string:NM,struct:mR,sub:he,subBuild:cr,subgroupAdd:oE,subgroupAll:yE,subgroupAnd:dE,subgroupAny:xE,subgroupBallot:rE,subgroupBroadcast:vE,subgroupBroadcastFirst:bE,subgroupElect:nE,subgroupExclusiveAdd:cE,subgroupExclusiveMul:hE,subgroupInclusiveAdd:aE,subgroupInclusiveMul:uE,subgroupIndex:BA,subgroupMax:gE,subgroupMin:mE,subgroupMul:lE,subgroupOr:pE,subgroupShuffle:wE,subgroupShuffleDown:NE,subgroupShuffleUp:AE,subgroupShuffleXor:ME,subgroupSize:WC,subgroupXor:fE,tan:DT,tangentGeometry:fd,tangentLocal:vo,tangentView:md,tangentWorld:qS,texture:xe,texture3D:Td,texture3DLevel:fC,texture3DLoad:pC,textureBarrier:HC,textureBicubic:_N,textureBicubicLevel:t0,textureCubeUV:Zv,textureLevel:YM,textureLoad:Ge,textureSize:yn,textureStore:hC,thickness:ox,time:Eo,toneMapping:hS,toneMappingExposure:dS,toonOutlinePass:NC,transformDirection:XT,transformNormal:BS,transformNormalToView:kx,transformedClearcoatNormalView:gA,transformedNormalView:fA,transformedNormalWorld:mA,transmission:sh,transpose:kT,triNoise3D:LR,triplanarTexture:jR,triplanarTextures:cw,trunc:Tx,uint:D,uintBitsToFloat:TR,uniform:j,uniformArray:St,uniformCubeTexture:yA,uniformFlow:KT,uniformGroup:oT,uniformTexture:XM,unpackHalf2x16:PR,unpackNormal:sm,unpackSnorm2x16:FR,unpackUnorm2x16:IR,unpremultiplyAlpha:eN,userData:mC,uv:Re,uvec2:tx,uvec3:mr,uvec4:rx,varying:Sn,varyingProperty:fc,vec2:U,vec3:v,vec4:Z,vectorComponents:fr,velocity:gC,vertexColor:Vv,vertexIndex:Rv,vertexStage:oS,vibrance:bC,viewZToLogarithmicDepth:Zx,viewZToOrthographicDepth:xo,viewZToPerspectiveDepth:Yx,viewZToReversedOrthographicDepth:kA,viewZToReversedPerspectiveDepth:Uv,viewport:Lx,viewportCoordinate:SS,viewportDepthTexture:Xx,viewportLinearDepth:WA,viewportMipTexture:Hx,viewportOpaqueMipTexture:Lv,viewportResolution:QM,viewportSafeUV:XR,viewportSharedTexture:vC,viewportSize:Ux,viewportTexture:OA,viewportUV:JM,vogelDiskSample:Cs,wgsl:IC,wgslFn:LC,workgroupArray:XC,workgroupBarrier:$C,workgroupId:kC,workingToColorSpace:lS,xor:bT}),Ns=new Tc,Bg=class extends fi{constructor(e,t){super(),this.renderer=e,this.nodes=t}update(e,t,s){let i=this.renderer,n=this.nodes.getBackgroundNode(e)||e.background,r=!1;if(n===null)i._clearColor.getRGB(Ns),Ns.a=i._clearColor.a;else if(n.isColor===!0)n.getRGB(Ns),Ns.a=1,r=!0;else if(n.isNode===!0){let c=this.get(e),l=n;Ns.copy(i._clearColor);let u=c.backgroundMesh;if(u===void 0){let w=function(){n.removeEventListener("dispose",w),u.material.dispose(),u.geometry.dispose()},d=Z(l).mul(mg).context({getUV:()=>hw.mul(ES),getTextureLevel:()=>uw}),p=Oi.element(3).element(3).equal(1),m=ss(1,Oi.element(1).element(1)).mul(3),g=p.select(Ve.mul(m),Ve),y=wn.mul(Z(g,0)),x=Oi.mul(Z(y.xyz,1));x=x.setZ(x.w);let _=new Ne;_.name="Background.material",_.side=rt,_.depthTest=!1,_.depthWrite=!1,_.allowOverride=!1,_.fog=!1,_.lights=!1,_.vertexNode=x,_.colorNode=d,c.backgroundMeshNode=d,c.backgroundMesh=u=new Zt(new Ml(1,32,32),_),u.frustumCulled=!1,u.name="Background.mesh",n.addEventListener("dispose",w)}let h=l.getCacheKey();c.backgroundCacheKey!==h&&(c.backgroundMeshNode.node=Z(l).mul(mg),c.backgroundMeshNode.needsUpdate=!0,u.material.needsUpdate=!0,c.backgroundCacheKey=h),t.unshift(u,u.geometry,u.material,0,0,null,null)}else O("Renderer: Unsupported background configuration.",n);let a=i.xr.getEnvironmentBlendMode();if(a==="additive"?Ns.set(0,0,0,1):a==="alpha-blend"&&Ns.set(0,0,0,0),i.autoClear===!0||r===!0){let c=s.clearColorValue;c.r=Ns.r,c.g=Ns.g,c.b=Ns.b,c.a=Ns.a,(i.backend.isWebGLBackend===!0||i.alpha===!0)&&(c.r*=c.a,c.g*=c.a,c.b*=c.a),s.depthClearValue=i.getClearDepth(),s.stencilClearValue=i.getClearStencil(),s.clearColor=i.autoClearColor===!0,s.clearDepth=i.autoClearDepth===!0,s.clearStencil=i.autoClearStencil===!0}else s.clearColor=!1,s.clearDepth=!1,s.clearStencil=!1}},MF=0,Mc=class{constructor(e="",t=[],s=0){this.name=e,this.bindings=t,this.index=s,this.id=MF++}},Fg=class{constructor(e,t,s,i,n,r,a,c,l,u=[]){this.vertexShader=e,this.fragmentShader=t,this.computeShader=s,this.transforms=u,this.nodeAttributes=i,this.bindings=n,this.updateNodes=r,this.updateBeforeNodes=a,this.updateAfterNodes=c,this.observer=l,this.usedTimes=0}createBindings(){let e=[];for(let t of this.bindings)if(t.bindings[0].groupNode.shared!==!0){let i=new Mc(t.name,[],t.index);e.push(i);for(let n of t.bindings)i.bindings.push(n.clone())}else e.push(t);return e}},Dh=class{constructor(e,t,s=null){this.isNodeAttribute=!0,this.name=e,this.type=t,this.node=s}},Ig=class{constructor(e,t,s){this.isNodeUniform=!0,this.name=e,this.type=t,this.node=s}get value(){return this.node.value}set value(e){this.node.value=e}get id(){return this.node.id}get groupNode(){return this.node.groupNode}},Lh=class{constructor(e,t,s=!1,i=null){this.isNodeVar=!0,this.name=e,this.type=t,this.readOnly=s,this.count=i}},Pg=class extends Lh{constructor(e,t,s=null,i=null){super(e,t),this.needsInterpolation=!1,this.isNodeVarying=!0,this.interpolationType=s,this.interpolationSampling=i}},Dg=class{constructor(e,t,s=""){this.name=e,this.type=t,this.code=s,Object.defineProperty(this,"isNodeCode",{value:!0})}},AF=0,uc=class{constructor(e=null){this.id=AF++,this.nodesData=new WeakMap,this.parent=e}getData(e){let t=this.nodesData.get(e);return t===void 0&&this.parent!==null&&(t=this.parent.getData(e)),t}setData(e,t){this.nodesData.set(e,t)}},Lg=class{constructor(e,t){this.name=e,this.members=t,this.output=!1}},gi=class{constructor(e,t){this.name=e,this.value=t,this.boundary=0,this.itemSize=0,this.offset=0,this.index=-1}setValue(e){this.value=e}getValue(){return this.value}},Ug=class extends gi{constructor(e,t=0){super(e,t),this.isNumberUniform=!0,this.boundary=4,this.itemSize=1}},Og=class extends gi{constructor(e,t=new re){super(e,t),this.isVector2Uniform=!0,this.boundary=8,this.itemSize=2}},Vg=class extends gi{constructor(e,t=new R){super(e,t),this.isVector3Uniform=!0,this.boundary=16,this.itemSize=3}},kg=class extends gi{constructor(e,t=new Te){super(e,t),this.isVector4Uniform=!0,this.boundary=16,this.itemSize=4}},zg=class extends gi{constructor(e,t=new ge){super(e,t),this.isColorUniform=!0,this.boundary=16,this.itemSize=3}},Gg=class extends gi{constructor(e,t=new oa){super(e,t),this.isMatrix2Uniform=!0,this.boundary=8,this.itemSize=4}},Wg=class extends gi{constructor(e,t=new Nt){super(e,t),this.isMatrix3Uniform=!0,this.boundary=48,this.itemSize=12}},$g=class extends gi{constructor(e,t=new de){super(e,t),this.isMatrix4Uniform=!0,this.boundary=64,this.itemSize=16}},qg=class extends Ug{constructor(e){super(e.name,e.value),this.nodeUniform=e}getValue(){return this.nodeUniform.value}getType(){return this.nodeUniform.type}},Hg=class extends Og{constructor(e){super(e.name,e.value),this.nodeUniform=e}getValue(){return this.nodeUniform.value}getType(){return this.nodeUniform.type}},Xg=class extends Vg{constructor(e){super(e.name,e.value),this.nodeUniform=e}getValue(){return this.nodeUniform.value}getType(){return this.nodeUniform.type}},Yg=class extends kg{constructor(e){super(e.name,e.value),this.nodeUniform=e}getValue(){return this.nodeUniform.value}getType(){return this.nodeUniform.type}},jg=class extends zg{constructor(e){super(e.name,e.value),this.nodeUniform=e}getValue(){return this.nodeUniform.value}getType(){return this.nodeUniform.type}},Zg=class extends Gg{constructor(e){super(e.name,e.value),this.nodeUniform=e}getValue(){return this.nodeUniform.value}getType(){return this.nodeUniform.type}},Jg=class extends Wg{constructor(e){super(e.name,e.value),this.nodeUniform=e}getValue(){return this.nodeUniform.value}getType(){return this.nodeUniform.type}},Qg=class extends $g{constructor(e){super(e.name,e.value),this.nodeUniform=e}getValue(){return this.nodeUniform.value}getType(){return this.nodeUniform.type}},NF=0,T_=new WeakMap,RF=new WeakMap,CF=new Map([[Int8Array,"int"],[Int16Array,"int"],[Int32Array,"int"],[Uint8Array,"uint"],[Uint16Array,"uint"],[Uint32Array,"uint"],[Float32Array,"float"]]),Uu=o=>/e/g.test(o)?String(o).replace(/\+/g,""):(o=Number(o),o+(o%1?"":".0")),Uh=class{constructor(e,t,s){this.object=e,this.material=e&&e.material||null,this.geometry=e&&e.geometry||null,this.renderer=t,this.parser=s,this.scene=null,this.camera=null,this.nodes=[],this.sequentialNodes=[],this.updateNodes=[],this.updateBeforeNodes=[],this.updateAfterNodes=[],this.hashNodes={},this.observer=null,this.lightsNode=null,this.environmentNode=null,this.fogNode=null,this.clippingContext=null,this.vertexShader=null,this.fragmentShader=null,this.computeShader=null,this.flowNodes={vertex:[],fragment:[],compute:[]},this.flowCode={vertex:"",fragment:"",compute:""},this.uniforms={vertex:[],fragment:[],compute:[],index:0},this.structs={vertex:[],fragment:[],compute:[],index:0},this.types={vertex:[],fragment:[],compute:[],index:0},this.bindings={vertex:{},fragment:{},compute:{}},this.bindingsIndexes={},this.bindGroups=null,this.attributes=[],this.bufferAttributes=[],this.varyings=[],this.codes={},this.vars={},this.declarations={},this.flow={code:""},this.chaining=[],this.stack=Xu(),this.stacks=[],this.tab=" ",this.currentFunctionNode=null,this.context={material:this.material},this.cache=new uc,this.globalCache=this.cache,this.flowsData=new WeakMap,this.shaderStage=null,this.buildStage=null,this.subBuildLayers=[],this.activeStacks=[],this.subBuildFn=null,this.fnCall=null,Object.defineProperty(this,"id",{value:NF++})}isFlatShading(){return this.material.flatShading===!0||this.geometry.hasAttribute("normal")===!1}isOpaque(){let e=this.material;return e.transparent===!1&&e.blending===Ht&&e.alphaToCoverage===!1}createRenderTarget(e,t,s){return new bt(e,t,s)}createCubeRenderTarget(e,t){return new gh(e,t)}includes(e){return this.nodes.includes(e)}getOutputStructName(){}_getBindGroup(e,t){let s=t[0].groupNode,i=s.shared;if(i)for(let r=1;rh.nodeUniform.node.id-d.nodeUniform.node.id);for(let h of u.uniforms)r+=h.nodeUniform.node.id}else r+=u.nodeUniform.id;let a=this.renderer._currentRenderContext||this.renderer,c=T_.get(a);c===void 0&&(c=new Map,T_.set(a,c));let l=Ro(r);n=c.get(l),n===void 0&&(n=new Mc(e,t,this.bindingsIndexes[e].group),c.set(l,n))}else n=new Mc(e,t,this.bindingsIndexes[e].group);return n}getBindGroupArray(e,t){let s=this.bindings[t],i=s[e];return i===void 0&&(this.bindingsIndexes[e]===void 0&&(this.bindingsIndexes[e]={binding:0,group:Object.keys(this.bindingsIndexes).length}),s[e]=i=[]),i}getBindings(){let e=this.bindGroups;if(e===null){let t={},s=this.bindings;for(let i of gf)for(let n in s[i]){let r=s[i][n],a=t[n]||(t[n]=[]);for(let c of r)a.includes(c)===!1&&a.push(c)}e=[];for(let i in t){let n=t[i],r=this._getBindGroup(i,n);e.push(r)}this.bindGroups=e}return e}sortBindingGroups(){let e=this.getBindings();e.sort((t,s)=>t.bindings[0].groupNode.order-s.bindings[0].groupNode.order);for(let t=0;t=0?`${Math.round(t)}u`:"0u";if(e==="bool")return t?"true":"false";if(e==="color")return`${this.getType("vec3")}( ${Uu(t.r)}, ${Uu(t.g)}, ${Uu(t.b)} )`;let s=this.getTypeLength(e),i=this.getComponentType(e),n=r=>this.generateConst(i,r);if(s===2)return`${this.getType(e)}( ${n(t.x)}, ${n(t.y)} )`;if(s===3)return`${this.getType(e)}( ${n(t.x)}, ${n(t.y)}, ${n(t.z)} )`;if(s===4&&e!=="mat2")return`${this.getType(e)}( ${n(t.x)}, ${n(t.y)}, ${n(t.z)}, ${n(t.w)} )`;if(s>=4&&t&&(t.isMatrix2||t.isMatrix3||t.isMatrix4))return`${this.getType(e)}( ${t.elements.map(n).join(", ")} )`;if(s>4)return`${this.getType(e)}()`;throw new Error(`NodeBuilder: Type '${e}' not found in generate constant attempt.`)}getType(e){return e==="color"?"vec3":e}hasGeometryAttribute(e){return this.geometry&&this.geometry.getAttribute(e)!==void 0}getAttribute(e,t){let s=this.attributes;for(let n of s)if(n.name===e)return n;let i=new Dh(e,t);return this.registerDeclaration(i),s.push(i),i}getPropertyName(e){return e.name}isVector(e){return/vec\d/.test(e)}isMatrix(e){return/mat\d/.test(e)}isReference(e){return e==="void"||e==="property"||e==="sampler"||e==="samplerComparison"||e==="texture"||e==="cubeTexture"||e==="storageTexture"||e==="depthTexture"||e==="texture3D"}needsToWorkingColorSpace(){return!1}getComponentTypeFromTexture(e){let t=e.type;if(e.isDataTexture){if(t===ut)return"int";if(t===Oe)return"uint"}return"float"}getElementType(e){return e==="mat2"?"vec2":e==="mat3"?"vec3":e==="mat4"?"vec4":this.getComponentType(e)}getComponentType(e){if(e=this.getVectorType(e),e==="float"||e==="bool"||e==="int"||e==="uint")return e;let t=/(b|i|u|)(vec|mat)([2-4])/.exec(e);return t===null?null:t[1]==="b"?"bool":t[1]==="i"?"int":t[1]==="u"?"uint":"float"}getVectorType(e){return e==="color"?"vec3":e==="texture"||e==="cubeTexture"||e==="storageTexture"||e==="texture3D"?"vec4":e}getTypeFromLength(e,t="float"){if(e===1)return t;let s=Y_(e),i=t==="float"?"":t[0];return/mat2/.test(t)===!0&&(s=s.replace("vec","mat")),i+s}getTypeFromArray(e){return CF.get(e.constructor)}isInteger(e){return/int|uint|(i|u)vec/.test(e)}getTypeFromAttribute(e){let t=e;e.isInterleavedBufferAttribute&&(t=e.data);let s=t.array,i=e.itemSize,n=e.normalized,r;return!(e instanceof Zo)&&n!==!0&&(r=this.getTypeFromArray(s)),this.getTypeFromLength(i,r)}getTypeLength(e){let t=this.getVectorType(e),s=/vec([2-4])/.exec(t);return s!==null?Number(s[1]):t==="float"||t==="bool"||t==="int"||t==="uint"?1:/mat2/.test(e)===!0?4:/mat3/.test(e)===!0?9:/mat4/.test(e)===!0?16:0}getVectorFromMatrix(e){return e.replace("mat","vec")}changeComponentType(e,t){return this.getTypeFromLength(this.getTypeLength(e),t)}getIntegerType(e){let t=this.getComponentType(e);return t==="int"||t==="uint"?e:this.changeComponentType(e,"int")}setActiveStack(e){this.activeStacks.push(e)}removeActiveStack(e){if(this.activeStacks[this.activeStacks.length-1]===e)this.activeStacks.pop();else throw new Error("NodeBuilder: Invalid active stack removal.")}getActiveStack(){return this.activeStacks[this.activeStacks.length-1]}getBaseStack(){return this.activeStacks[0]}addStack(){this.stack=Xu(this.stack);let e=ex();return this.stacks.push(e),pc(this.stack),this.stack}removeStack(){let e=this.stack;for(let t of e.nodes){let s=this.getDataFromNode(t);s.stack=e}return this.stack=e.parent,pc(this.stacks.pop()),e}getDataFromNode(e,t=this.shaderStage,s=null){s=s===null?e.isGlobal(this)?this.globalCache:this.cache:s;let i=s.getData(e);i===void 0&&(i={},s.setData(e,i)),i[t]===void 0&&(i[t]={});let n=i[t],r=i.any?i.any.subBuilds:null,a=this.getClosestSubBuild(r);return a&&(n.subBuildsCache===void 0&&(n.subBuildsCache={}),n=n.subBuildsCache[a]||(n.subBuildsCache[a]={}),n.subBuilds=r),n}getNodeProperties(e,t="any"){let s=this.getDataFromNode(e,t);return s.properties||(s.properties={outputNode:null})}getBufferAttributeFromNode(e,t){let s=this.getDataFromNode(e,"vertex"),i=s.bufferAttribute;if(i===void 0){let n=this.uniforms.index++;i=new Dh("nodeAttribute"+n,t,e),this.bufferAttributes.push(i),s.bufferAttribute=i}return i}getStructTypeNode(e,t=this.shaderStage){return this.types[t][e]||null}getStructTypeFromNode(e,t,s=null,i=this.shaderStage){let n=this.getDataFromNode(e,i,this.globalCache),r=n.structType;if(r===void 0){let a=this.structs.index++;s===null&&(s="StructType"+a),r=new Lg(s,t),this.structs[i].push(r),this.types[i][s]=e,n.structType=r}return r}getOutputStructTypeFromNode(e,t){let s=this.getStructTypeFromNode(e,t,"OutputType","fragment");return s.output=!0,s}getUniformFromNode(e,t,s=this.shaderStage,i=null){let n=this.getDataFromNode(e,s,this.globalCache),r=n.uniform;if(r===void 0){let a=this.uniforms.index++;r=new Ig(i||"nodeUniform"+a,t,e),this.uniforms[s].push(r),this.registerDeclaration(r),n.uniform=r}return r}getVarFromNode(e,t=null,s=e.getNodeType(this),i=this.shaderStage,n=!1){let r=this.getDataFromNode(e,i),a=this.getSubBuildProperty("variable",r.subBuilds),c=r[a];if(c===void 0){let l=n?"_const":"_var",u=this.vars[i]||(this.vars[i]=[]),h=this.vars[l]||(this.vars[l]=0);t===null&&(t=(n?"nodeConst":"nodeVar")+h,this.vars[l]++),a!=="variable"&&(t=this.getSubBuildProperty(t,r.subBuilds));let d=e.getArrayCount(this);c=new Lh(t,s,n,d),n||u.push(c),this.registerDeclaration(c),r[a]=c}return c}isDeterministic(e){if(e.isMathNode)return this.isDeterministic(e.aNode)&&(e.bNode?this.isDeterministic(e.bNode):!0)&&(e.cNode?this.isDeterministic(e.cNode):!0);if(e.isOperatorNode)return this.isDeterministic(e.aNode)&&(e.bNode?this.isDeterministic(e.bNode):!0);if(e.isArrayNode){if(e.values!==null){for(let t of e.values)if(!this.isDeterministic(t))return!1}return!0}else if(e.isConstNode)return!0;return!1}getVaryingFromNode(e,t=null,s=e.getNodeType(this),i=null,n=null){let r=this.getDataFromNode(e,"any"),a=this.getSubBuildProperty("varying",r.subBuilds),c=r[a];if(c===void 0){let l=this.varyings,u=l.length;t===null&&(t="nodeVarying"+u),a!=="varying"&&(t=this.getSubBuildProperty(t,r.subBuilds)),c=new Pg(t,s,i,n),l.push(c),this.registerDeclaration(c),r[a]=c}return c}registerDeclaration(e){let t=this.shaderStage,s=this.declarations[t]||(this.declarations[t]={}),i=this.getPropertyName(e),n=1,r=i;for(;s[r]!==void 0;)r=i+"_"+n++;n>1&&(e.name=r,z(`TSL: Declaration name '${i}' of '${e.type}' already in use. Renamed to '${r}'.`)),s[r]=e}getCodeFromNode(e,t,s=this.shaderStage){let i=this.getDataFromNode(e),n=i.code;if(n===void 0){let r=this.codes[s]||(this.codes[s]=[]),a=r.length;n=new Dg("nodeCode"+a,t),r.push(n),i.code=n}return n}addFlowCodeHierarchy(e,t){let{flowCodes:s,flowCodeBlock:i}=this.getDataFromNode(e),n=!0,r=t;for(;r;){if(i.get(r)===!0){n=!1;break}r=this.getDataFromNode(r).parentNodeBlock}if(n)for(let a of s)this.addLineFlowCode(a)}addLineFlowCodeBlock(e,t,s){let i=this.getDataFromNode(e),n=i.flowCodes||(i.flowCodes=[]),r=i.flowCodeBlock||(i.flowCodeBlock=new WeakMap);n.push(t),r.set(s,!0)}addLineFlowCode(e,t=null){return e===""?this:(t!==null&&this.context.nodeBlock&&this.addLineFlowCodeBlock(t,e,this.context.nodeBlock),e=this.tab+e,/;\s*$/.test(e)||(e=e+`; +`),this.flow.code+=e,this)}addFlowCode(e){return this.flow.code+=e,this}addFlowTab(){return this.tab+=" ",this}removeFlowTab(){return this.tab=this.tab.slice(0,-1),this}getFlowData(e){return this.flowsData.get(e)}flowNode(e){let t=e.getNodeType(this),s=this.flowChildNode(e,t);return this.flowsData.set(e,s),s}addInclude(e){this.currentFunctionNode!==null&&this.currentFunctionNode.includes.push(e)}buildFunctionNode(e){let t=new Eh,s=this.currentFunctionNode;return this.currentFunctionNode=t,t.code=this.buildFunctionCode(e),this.currentFunctionNode=s,t}flowShaderNode(e){let t=e.layout,s={[Symbol.iterator](){let r=0,a=Object.values(this);return{next:()=>({value:a[r],done:r++>=a.length})}}};for(let r of t.inputs)s[r.name]=new wh(r.type,r.name);e.layout=null;let i=e.call(s),n=this.flowStagesNode(i,t.type);return e.layout=t,n}flowBuildStage(e,t,s=null){let i=this.getBuildStage();this.setBuildStage(t);let n=e.build(this,s);return this.setBuildStage(i),n}flowStagesNode(e,t=null){let s=this.flow,i=this.vars,n=this.declarations,r=this.cache,a=this.buildStage,c=this.stack,l={code:""};this.flow=l,this.vars={},this.declarations={},this.cache=new uc,this.stack=Xu();for(let u of mf)this.setBuildStage(u),l.result=e.build(this,t);return l.vars=this.getVars(this.shaderStage),this.flow=s,this.vars=i,this.declarations=n,this.cache=r,this.stack=c,this.setBuildStage(a),l}getFunctionOperator(){return null}buildFunctionCode(){z("Abstract function.")}flowChildNode(e,t=null){let s=this.flow,i={code:""};return this.flow=i,i.result=e.build(this,t),this.flow=s,i}flowNodeFromShaderStage(e,t,s=null,i=null){let n=this.tab,r=this.cache,a=this.shaderStage,c=this.context;this.setShaderStage(e);let l={...this.context};delete l.nodeBlock,this.cache=this.globalCache,this.tab=" ",this.context=l;let u=null;if(this.buildStage==="generate"){let h=this.flowChildNode(t,s);i!==null&&(h.code+=`${this.tab+i} = ${h.result}; +`),this.flowCode[e]=this.flowCode[e]+h.code,u=h}else u=t.build(this);return this.setShaderStage(a),this.cache=r,this.tab=n,this.context=c,u}getAttributesArray(){return this.attributes.concat(this.bufferAttributes)}getAttributes(){z("Abstract function.")}getVaryings(){z("Abstract function.")}getVar(e,t,s=null){return`${s!==null?this.generateArrayDeclaration(e,s):this.getType(e)} ${t}`}getVars(e){let t="",s=this.vars[e];if(s!==void 0)for(let i of s)t+=`${this.getVar(i.type,i.name)}; `;return t}getUniforms(){z("Abstract function.")}getCodes(e){let t=this.codes[e],s="";if(t!==void 0)for(let i of t)s+=i.code+` +`;return s}getHash(){return this.vertexShader+this.fragmentShader+this.computeShader}setShaderStage(e){this.shaderStage=e}getShaderStage(){return this.shaderStage}setBuildStage(e){this.buildStage=e}getBuildStage(){return this.buildStage}buildCode(){z("Abstract function.")}get subBuild(){return this.subBuildLayers[this.subBuildLayers.length-1]||null}addSubBuild(e){this.subBuildLayers.push(e)}removeSubBuild(){return this.subBuildLayers.pop()}getClosestSubBuild(e){let t;if(e&&e.isNode?e.isShaderCallNodeInternal?t=e.shaderNode.subBuilds:e.isStackNode?t=[e.subBuild]:t=this.getDataFromNode(e,"any").subBuilds:e instanceof Set?t=[...e]:t=e,!t)return null;let s=this.subBuildLayers;for(let i=t.length-1;i>=0;i--){let n=t[i];if(s.includes(n))return n}return null}getSubBuildOutput(e){return this.getSubBuildProperty("outputNode",e)}getSubBuildProperty(e="",t=null){let s;t!==null?s=this.getClosestSubBuild(t):s=this.subBuildFn;let i;return s?i=e?s+"_"+e:s:i=e,i}build(){let{object:e,material:t,renderer:s}=this;if(t!==null){let i=s.library.fromMaterial(t);i===null&&(O(`NodeMaterial: Material "${t.type}" is not compatible.`),i=new Ne),i.build(this)}else this.addFlow("compute",e);for(let i of mf){this.setBuildStage(i),this.context.position&&this.context.position.isNode&&this.flowNodeFromShaderStage("vertex",this.context.position);for(let n of gf){this.setShaderStage(n);let r=this.flowNodes[n];for(let a of r)i==="generate"?this.flowNode(a):a.build(this)}}return this.setBuildStage(null),this.setShaderStage(null),this.buildCode(),this.buildUpdateNodes(),this}getSharedDataFromNode(e){let t=RF.get(e);return t===void 0&&(t={}),t}getNodeUniform(e,t){let s=this.getSharedDataFromNode(e),i=s.cache;if(i===void 0){if(t==="float"||t==="int"||t==="uint")i=new qg(e);else if(t==="vec2"||t==="ivec2"||t==="uvec2")i=new Hg(e);else if(t==="vec3"||t==="ivec3"||t==="uvec3")i=new Xg(e);else if(t==="vec4"||t==="ivec4"||t==="uvec4")i=new Yg(e);else if(t==="color")i=new jg(e);else if(t==="mat2")i=new Zg(e);else if(t==="mat3")i=new Jg(e);else if(t==="mat4")i=new Qg(e);else throw new Error(`Uniform "${t}" not implemented.`);s.cache=i}return i}format(e,t,s){if(t=this.getVectorType(t),s=this.getVectorType(s),t===s||s===null||this.isReference(s))return e;let i=this.getTypeLength(t),n=this.getTypeLength(s);return i===16&&n===9?`${this.getType(s)}( ${e}[ 0 ].xyz, ${e}[ 1 ].xyz, ${e}[ 2 ].xyz )`:i===9&&n===4?`${this.getType(s)}( ${e}[ 0 ].xy, ${e}[ 1 ].xy )`:i>4||n>4||n===0?e:i===n?`${this.getType(s)}( ${e} )`:i>n?(e=s==="bool"?`all( ${e} )`:`${e}.${"xyz".slice(0,n)}`,this.format(e,this.getTypeFromLength(n,this.getComponentType(t)),s)):n===4&&i>1?`${this.getType(s)}( ${this.format(e,t,"vec3")}, 1.0 )`:i===2?`${this.getType(s)}( ${this.format(e,t,"vec2")}, 0.0 )`:(i===1&&n>1&&t!==this.getComponentType(s)&&(e=`${this.getType(this.getComponentType(s))}( ${e} )`),`${this.getType(s)}( ${e} )`)}getSignature(){return`// Three.js r${"183"} - Node System +`}needsPreviousData(){let e=this.renderer.getMRT();return e&&e.has("velocity")||Z_(this.object).useVelocity===!0}},Oh=class{constructor(){this.time=0,this.deltaTime=0,this.frameId=0,this.renderId=0,this.updateMap=new WeakMap,this.updateBeforeMap=new WeakMap,this.updateAfterMap=new WeakMap,this.renderer=null,this.material=null,this.camera=null,this.object=null,this.scene=null}_getMaps(e,t){let s=e.get(t);return s===void 0&&(s={renderId:0,frameId:0},e.set(t,s)),s}updateBeforeNode(e){let t=e.getUpdateBeforeType(),s=e.updateReference(this);if(t===te.FRAME){let i=this._getMaps(this.updateBeforeMap,s);if(i.frameId!==this.frameId){let n=i.frameId;i.frameId=this.frameId,e.updateBefore(this)===!1&&(i.frameId=n)}}else if(t===te.RENDER){let i=this._getMaps(this.updateBeforeMap,s);if(i.renderId!==this.renderId){let n=i.renderId;i.renderId=this.renderId,e.updateBefore(this)===!1&&(i.renderId=n)}}else t===te.OBJECT&&e.updateBefore(this)}updateAfterNode(e){let t=e.getUpdateAfterType(),s=e.updateReference(this);if(t===te.FRAME){let i=this._getMaps(this.updateAfterMap,s);i.frameId!==this.frameId&&e.updateAfter(this)!==!1&&(i.frameId=this.frameId)}else if(t===te.RENDER){let i=this._getMaps(this.updateAfterMap,s);i.renderId!==this.renderId&&e.updateAfter(this)!==!1&&(i.renderId=this.renderId)}else t===te.OBJECT&&e.updateAfter(this)}updateNode(e){let t=e.getUpdateType(),s=e.updateReference(this);if(t===te.FRAME){let i=this._getMaps(this.updateMap,s);i.frameId!==this.frameId&&e.update(this)!==!1&&(i.frameId=this.frameId)}else if(t===te.RENDER){let i=this._getMaps(this.updateMap,s);i.renderId!==this.renderId&&e.update(this)!==!1&&(i.renderId=this.renderId)}else t===te.OBJECT&&e.update(this)}update(){this.frameId++,this.lastTime===void 0&&(this.lastTime=performance.now()),this.deltaTime=(performance.now()-this.lastTime)/1e3,this.lastTime=performance.now(),this.time+=this.deltaTime}},Ac=class{constructor(e,t,s=null,i="",n=!1){this.type=e,this.name=t,this.count=s,this.qualifier=i,this.isConst=n}};Ac.isNodeFunctionInput=!0;var Kg=class extends Wi{static get type(){return"AmbientLightNode"}constructor(e=null){super(e)}setup({context:e}){e.irradiance.addAssign(this.colorNode)}},ey=class extends Wi{static get type(){return"DirectionalLightNode"}constructor(e=null){super(e)}setupDirect(){let e=this.colorNode;return{lightDirection:l0(this.light),lightColor:e}}},ty=class extends Wi{static get type(){return"HemisphereLightNode"}constructor(e=null){super(e),this.lightPositionNode=a0(e),this.lightDirectionNode=this.lightPositionNode.normalize(),this.groundColorNode=j(new ge).setGroup(J)}update(e){let{light:t}=this;super.update(e),this.lightPositionNode.object3d=t,this.groundColorNode.value.copy(t.groundColor).multiplyScalar(t.intensity)}setup(e){let{colorNode:t,groundColorNode:s,lightDirectionNode:i}=this,r=Mn.dot(i).mul(.5).add(.5),a=le(s,t,r);e.context.irradiance.addAssign(a)}},Nc=class extends Wi{static get type(){return"SpotLightNode"}constructor(e=null){super(e),this.coneCosNode=j(0).setGroup(J),this.penumbraCosNode=j(0).setGroup(J),this.cutoffDistanceNode=j(0).setGroup(J),this.decayExponentNode=j(0).setGroup(J),this.colorNode=j(this.color).setGroup(J)}update(e){super.update(e);let{light:t}=this;this.coneCosNode.value=Math.cos(t.angle),this.penumbraCosNode.value=Math.cos(t.angle*(1-t.penumbra)),this.cutoffDistanceNode.value=t.distance,this.decayExponentNode.value=t.decay}getSpotAttenuation(e,t){let{coneCosNode:s,penumbraCosNode:i}=this;return Fs(s,i,t)}getLightCoord(e){let t=e.getNodeProperties(this),s=t.projectionUV;return s===void 0&&(s=vw(this.light,e.context.positionWorld),t.projectionUV=s),s}setupDirect(e){let{colorNode:t,cutoffDistanceNode:s,decayExponentNode:i,light:n}=this,r=this.getLightVector(e),a=r.normalize(),c=a.dot(l0(n)),l=this.getSpotAttenuation(e,c),u=r.length(),h=f0({lightDistance:u,cutoffDistance:s,decayExponent:i}),d=t.mul(l).mul(h),p,m;return n.colorNode?(m=this.getLightCoord(e),p=n.colorNode(m)):n.map&&(m=this.getLightCoord(e),p=xe(n.map,m.xy).onRenderUpdate(()=>n.map)),p&&(d=m.mul(2).sub(1).abs().lessThan(1).all().select(d.mul(p),d)),{lightColor:d,lightDirection:a}}},sy=class extends Nc{static get type(){return"IESSpotLightNode"}getSpotAttenuation(e,t){let s=this.light.iesMap,i=null;if(s&&s.isTexture===!0){let n=t.acos().mul(1/Math.PI);i=xe(s,U(n,0),0).r}else i=super.getSpotAttenuation(t);return i}},iy=class extends Wi{static get type(){return"LightProbeNode"}constructor(e=null){super(e);let t=[];for(let s=0;s<9;s++)t.push(new R);this.lightProbe=St(t)}update(e){let{light:t}=this;super.update(e);for(let s=0;s<9;s++)this.lightProbe.array[s].copy(t.sh.coefficients[s]).multiplyScalar(t.intensity)}setup(e){let t=Jw(Mn,this.lightProbe);e.context.irradiance.addAssign(t)}},EF=A(([o,e])=>{let t=o.abs().sub(e);return ai(ze(t,0)).add(Vt(ze(t.x,t.y),0))}),ny=class extends Nc{static get type(){return"ProjectorLightNode"}update(e){super.update(e);let t=this.light;if(this.penumbraCosNode.value=Math.min(Math.cos(t.angle*(1-t.penumbra)),.99999),t.aspect===null){let s=1;t.map!==null&&(s=t.map.width/t.map.height),t.shadow.aspect=s}else t.shadow.aspect=t.aspect}getSpotAttenuation(e){let t=b(0),s=this.penumbraCosNode,i=wd(this.light).mul(e.context.positionWorld||li);return K(i.w.greaterThan(0),()=>{let n=i.xyz.div(i.w),r=EF(n.xy.sub(U(.5)),U(.5)),a=ss(-1,he(1,mx(s)).sub(1));t.assign(ud(r.mul(-2).mul(a)))}),t}},sf=new de,Ou=new de,Ja=null,ry=class extends Wi{static get type(){return"RectAreaLightNode"}constructor(e=null){super(e),this.halfHeight=j(new R).setGroup(J),this.halfWidth=j(new R).setGroup(J),this.updateType=te.RENDER}update(e){super.update(e);let{light:t}=this,s=e.camera.matrixWorldInverse;Ou.identity(),sf.copy(t.matrixWorld),sf.premultiply(s),Ou.extractRotation(sf),this.halfWidth.value.set(t.width*.5,0,0),this.halfHeight.value.set(0,t.height*.5,0),this.halfWidth.value.applyMatrix4(Ou),this.halfHeight.value.applyMatrix4(Ou)}setupDirectRectArea(e){let t,s;e.isAvailable("float32Filterable")?(t=xe(Ja.LTC_FLOAT_1),s=xe(Ja.LTC_FLOAT_2)):(t=xe(Ja.LTC_HALF_1),s=xe(Ja.LTC_HALF_2));let{colorNode:i,light:n}=this,r=c0(n);return{lightColor:i,lightPosition:r,halfWidth:this.halfWidth,halfHeight:this.halfHeight,ltc_1:t,ltc_2:s}}static setLTC(e){Ja=e}},Vh=class{parseFunction(){z("Abstract function.")}},Rc=class{constructor(e,t,s="",i=""){this.type=e,this.inputs=t,this.name=s,this.precision=i}getCode(){z("Abstract function.")}};Rc.isNodeFunction=!0;var BF=/^\s*(highp|mediump|lowp)?\s*([a-z_0-9]+)\s*([a-z_0-9]+)?\s*\(([\s\S]*?)\)/i,FF=/[a-z_0-9]+/ig,S_="#pragma main",IF=o=>{o=o.trim();let e=o.indexOf(S_),t=e!==-1?o.slice(e+S_.length):o,s=t.match(BF);if(s!==null&&s.length===5){let i=s[4],n=[],r=null;for(;(r=FF.exec(i))!==null;)n.push(r);let a=[],c=0;for(;c{let l=this.backend.createNodeBuilder(e.object,this.renderer);return l.scene=e.scene,l.material=c,l.camera=e.camera,l.context.material=c,l.lightsNode=e.lightsNode,l.environmentNode=this.getEnvironmentNode(e.scene),l.fogNode=this.getFogNode(e.scene),l.clippingContext=e.clippingContext,this.renderer.getOutputRenderTarget()&&this.renderer.getOutputRenderTarget().multiview&&l.enableMultiview(),l},a=r(e.material);try{a.build()}catch(c){a=r(new Ne),a.build();let l=c.stackTrace;!l&&c.stack&&(l=new ke(c.stack)),O("TSL: "+c,l)}s=this._createNodeBuilderState(a),i.set(n,s)}s.usedTimes++,t.nodeBuilderState=s}return s}delete(e){if(e.isRenderObject){let t=this.get(e).nodeBuilderState;t.usedTimes--,t.usedTimes===0&&this.nodeBuilderCache.delete(this.getForRenderCacheKey(e))}return super.delete(e)}getForCompute(e){let t=this.get(e),s=t.nodeBuilderState;if(s===void 0){let i=this.backend.createNodeBuilder(e,this.renderer);i.build(),s=this._createNodeBuilderState(i),t.nodeBuilderState=s}return s}_createNodeBuilderState(e){return new Fg(e.vertexShader,e.fragmentShader,e.computeShader,e.getAttributesArray(),e.getBindings(),e.updateNodes,e.updateBeforeNodes,e.updateAfterNodes,e.observer,e.transforms)}getEnvironmentNode(e){this.updateEnvironment(e);let t=null;if(e.environmentNode&&e.environmentNode.isNode)t=e.environmentNode;else{let s=this.get(e);s.environmentNode&&(t=s.environmentNode)}return t}getBackgroundNode(e){this.updateBackground(e);let t=null;if(e.backgroundNode&&e.backgroundNode.isNode)t=e.backgroundNode;else{let s=this.get(e);s.backgroundNode&&(t=s.backgroundNode)}return t}getFogNode(e){return this.updateFog(e),e.fogNode||this.get(e).fogNode||null}getCacheKey(e,t){rs[0]=e,rs[1]=t;let s=this.renderer.info.calls,i=this.callHashCache.get(rs)||{};if(i.callId!==s){let n=this.getEnvironmentNode(e),r=this.getFogNode(e);t&&on.push(t.getCacheKey(!0)),n&&on.push(n.getCacheKey()),r&&on.push(r.getCacheKey()),on.push(this.renderer.getOutputRenderTarget()&&this.renderer.getOutputRenderTarget().multiview?1:0),on.push(this.renderer.shadowMap.enabled?1:0),on.push(this.renderer.shadowMap.type),i.callId=s,i.cacheKey=Ec(on),this.callHashCache.set(rs,i),on.length=0}return rs[0]=null,rs[1]=null,i.cacheKey}get isToneMappingState(){return!this.renderer.getRenderTarget()}updateBackground(e){let t=this.get(e),s=e.background;if(s){let i=e.backgroundBlurriness===0&&t.backgroundBlurriness>0||e.backgroundBlurriness>0&&t.backgroundBlurriness===0;if(t.background!==s||i){let n=this.getCacheNode("background",s,()=>{if(s.isCubeTexture===!0||s.mapping===su||s.mapping===iu||s.mapping===nu){if(e.backgroundBlurriness>0||s.mapping===nu)return s0(s);{let r;return s.isCubeTexture===!0?r=Ft(s):r=xe(s),Gv(r)}}else{if(s.isTexture===!0)return xe(s,ci.flipY()).setUpdateMatrix(!0);s.isColor!==!0&&O("WebGPUNodes: Unsupported background configuration.",s)}},i);t.backgroundNode=n,t.background=s,t.backgroundBlurriness=e.backgroundBlurriness}}else t.backgroundNode&&(delete t.backgroundNode,delete t.background)}getCacheNode(e,t,s,i=!1){let n=this.cacheLib[e]||(this.cacheLib[e]=new WeakMap),r=n.get(t);return(r===void 0||i)&&(r=s(),n.set(t,r)),r}updateFog(e){let t=this.get(e),s=e.fog;if(s){if(t.fog!==s){let i=this.getCacheNode("fog",s,()=>{if(s.isFogExp2){let n=Ie("color","color",s).setGroup(J),r=Ie("density","float",s).setGroup(J);return Sg(n,Sw(r))}else if(s.isFog){let n=Ie("color","color",s).setGroup(J),r=Ie("near","float",s).setGroup(J),a=Ie("far","float",s).setGroup(J);return Sg(n,Tw(r,a))}else O("Renderer: Unsupported fog configuration.",s)});t.fogNode=i,t.fog=s}}else delete t.fogNode,delete t.fog}updateEnvironment(e){let t=this.get(e),s=e.environment;if(s){if(t.environment!==s){let i=this.getCacheNode("environment",s,()=>{if(s.isCubeTexture===!0)return Ft(s);if(s.isTexture===!0)return xe(s);O("Nodes: Unsupported environment configuration.",s)});t.environmentNode=i,t.environment=s}}else t.environmentNode&&(delete t.environmentNode,delete t.environment)}getNodeFrame(e=this.renderer,t=null,s=null,i=null,n=null){let r=this.nodeFrame;return r.renderer=e,r.scene=t,r.object=s,r.camera=i,r.material=n,r}getNodeFrameForRender(e){return this.getNodeFrame(e.renderer,e.scene,e.object,e.camera,e.material)}getOutputCacheKey(){let e=this.renderer;return e.toneMapping+","+e.currentColorSpace+","+e.xr.isPresenting}hasOutputChange(e){return v_.get(e)!==this.getOutputCacheKey()}getOutputNode(e){let t=this.renderer,s=this.getOutputCacheKey(),i=e.isArrayTexture?Td(e,v(ci,qi("gl_ViewID_OVR"))).renderOutput(t.toneMapping,t.currentColorSpace):xe(e,ci).renderOutput(t.toneMapping,t.currentColorSpace);return v_.set(e,s),i}updateBefore(e){let t=e.getNodeBuilderState();for(let s of t.updateBeforeNodes)this.getNodeFrameForRender(e).updateBeforeNode(s)}updateAfter(e){let t=e.getNodeBuilderState();for(let s of t.updateAfterNodes)this.getNodeFrameForRender(e).updateAfterNode(s)}updateForCompute(e){let t=this.getNodeFrame(),s=this.getForCompute(e);for(let i of s.updateNodes)t.updateNode(i)}updateForRender(e){let t=this.getNodeFrameForRender(e),s=e.getNodeBuilderState();for(let i of s.updateNodes)t.updateNode(i)}needsRefresh(e){let t=this.getNodeFrameForRender(e);return e.getMonitor().needsRefresh(e,t)}dispose(){super.dispose(),this.nodeFrame=new Oh,this.nodeBuilderCache=new Map,this.cacheLib={}}},nf=new xs,kh=class o{constructor(e=null){this.version=0,this.clipIntersection=null,this.cacheKey="",this.shadowPass=!1,this.viewNormalMatrix=new Nt,this.clippingGroupContexts=new WeakMap,this.intersectionPlanes=[],this.unionPlanes=[],this.parentVersion=null,e!==null&&(this.viewNormalMatrix=e.viewNormalMatrix,this.clippingGroupContexts=e.clippingGroupContexts,this.shadowPass=e.shadowPass,this.viewMatrix=e.viewMatrix)}projectPlanes(e,t,s){let i=e.length;for(let n=0;n0,alpha:!0,depth:t.depth,stencil:t.stencil,framebufferScaleFactor:this.getFramebufferScaleFactor()},a=new XRWebGLLayer(e,i,r);this._glBaseLayer=a,e.updateRenderState({baseLayer:a}),t.setPixelRatio(1),t._setXRLayerSize(a.framebufferWidth,a.framebufferHeight),this._xrRenderTarget=new rr(a.framebufferWidth,a.framebufferHeight,{format:Lt,type:lt,colorSpace:t.outputColorSpace,stencilBuffer:t.stencil,resolveDepthBuffer:a.ignoreDepthValues===!1,resolveStencilBuffer:a.ignoreDepthValues===!1}),this._xrRenderTarget._isOpaqueFramebuffer=!0,this._referenceSpace=await e.requestReferenceSpace(this.getReferenceSpaceType())}this.setFoveation(this.getFoveation()),t._animation.setAnimationLoop(this._onAnimationFrame),t._animation.setContext(e),t._animation.start(),this.isPresenting=!0,this.dispatchEvent({type:"sessionstart"})}}updateCamera(e){let t=this._session;if(t===null)return;let s=e.near,i=e.far,n=this._cameraXR,r=this._cameraL,a=this._cameraR;n.near=a.near=r.near=s,n.far=a.far=r.far=i,n.isMultiViewCamera=this._useMultiview,(this._currentDepthNear!==n.near||this._currentDepthFar!==n.far)&&(t.updateRenderState({depthNear:n.near,depthFar:n.far}),this._currentDepthNear=n.near,this._currentDepthFar=n.far),n.layers.mask=e.layers.mask|6,r.layers.mask=n.layers.mask&-5,a.layers.mask=n.layers.mask&-3;let c=e.parent,l=n.cameras;N_(n,c);for(let u=0;u=0&&(t[n]=null,e[n].disconnect(i))}for(let s=0;s=t.length){t.push(i),n=a;break}else if(t[a]===null){t[a]=i,n=a;break}if(n===-1)break}let r=e[n];r&&r.connect(i)}}function kF(o){return o.type==="quad"?this._glBinding.createQuadLayer({transform:new XRRigidTransform(o.translation,o.quaternion),width:o.width/2,height:o.height/2,space:this._referenceSpace,viewPixelWidth:o.pixelwidth,viewPixelHeight:o.pixelheight,clearOnAccess:!1}):this._glBinding.createCylinderLayer({transform:new XRRigidTransform(o.translation,o.quaternion),radius:o.radius,centralAngle:o.centralAngle,aspectRatio:o.aspectRatio,space:this._referenceSpace,viewPixelWidth:o.pixelwidth,viewPixelHeight:o.pixelheight,clearOnAccess:!1})}function zF(o,e){if(e===void 0)return;let t=this._cameraXR,s=this._renderer,i=s.backend,n=this._glBaseLayer,r=this.getReferenceSpace(),a=e.getViewerPose(r);if(this._xrFrame=e,a!==null){let c=a.views;this._glBaseLayer!==null&&i.setXRTarget(n.framebuffer);let l=!1;c.length!==t.cameras.length&&(t.cameras.length=0,l=!0);for(let u=0;u{await this.compileAsync(m,g);let x=this._renderLists.get(m,g),_=this._renderContexts.get(this._renderTarget,this._mrt),w=m.overrideMaterial||y.material,S=this._objects.get(y,w,m,g,x.lightsNode,_,_.clippingContext),{fragmentShader:E,vertexShader:B}=S.getNodeBuilderState();return{fragmentShader:E,vertexShader:B}}}}async init(){return this._initPromise!==null?this._initPromise:(this._initPromise=new Promise(async(e,t)=>{let s=this.backend;try{await s.init(this)}catch(i){if(this._getFallback!==null)try{this.backend=s=this._getFallback(i),await s.init(this)}catch(n){t(n);return}else{t(i);return}}this._nodes=new cy(this,s),this._animation=new km(this,this._nodes,this.info),this._attributes=new Wm(s),this._background=new Bg(this,this._nodes),this._geometries=new $m(this._attributes,this.info),this._textures=new eg(this,s,this.info),this._pipelines=new Ym(s,this._nodes),this._bindings=new jm(s,this._nodes,this._textures,this._attributes,this._pipelines,this.info),this._objects=new Gm(this,this._nodes,this._geometries,this._pipelines,this._bindings,this.info),this._renderLists=new Jm(this.lighting),this._bundles=new uy,this._renderContexts=new Km(this),this._animation.start(),this._initialized=!0,this._inspector.init(),e(this)}),this._initPromise)}get domElement(){return this._canvasTarget.domElement}get coordinateSystem(){return this.backend.coordinateSystem}async compileAsync(e,t,s=null){if(this._isDeviceLost===!0)return;this._initialized===!1&&await this.init();let i=this._nodes.nodeFrame,n=i.renderId,r=this._currentRenderContext,a=this._currentRenderObjectFunction,c=this._handleObjectFunction,l=this._compilationPromises,u=e.isScene===!0?e:R_;s===null&&(s=e);let h=this._renderTarget,d=this._renderContexts.get(h,this._mrt),p=this._activeMipmapLevel,m=[];this._currentRenderContext=d,this._currentRenderObjectFunction=this.renderObject,this._handleObjectFunction=this._createObjectPipeline,this._compilationPromises=m,i.renderId++,i.update(),d.depth=this.depth,d.stencil=this.stencil,d.clippingContext||(d.clippingContext=new kh),d.clippingContext.updateGlobal(u,t),u.onBeforeRender(this,e,t,h);let g=this._renderLists.get(e,t);if(g.begin(),this._projectObject(e,t,0,g,d.clippingContext),s!==e&&s.traverseVisible(function(S){S.isLight&&S.layers.test(t.layers)&&g.pushLight(S)}),g.finish(),h!==null){this._textures.updateRenderTarget(h,p);let S=this._textures.get(h);d.textures=S.textures,d.depthTexture=S.depthTexture}else d.textures=null,d.depthTexture=null;s!==e?this._background.update(s,g,d):this._background.update(u,g,d);let y=g.opaque,x=g.transparent,_=g.transparentDoublePass,w=g.lightsNode;this.opaque===!0&&y.length>0&&this._renderObjects(y,t,u,w),this.transparent===!0&&x.length>0&&this._renderTransparents(x,_,t,u,w),i.renderId=n,this._currentRenderContext=r,this._currentRenderObjectFunction=a,this._handleObjectFunction=c,this._compilationPromises=l,await Promise.all(m)}async renderAsync(e,t){_e('Renderer: "renderAsync()" has been deprecated. Use "render()" and "await renderer.init();" when creating the renderer.'),await this.init(),this.render(e,t)}async waitForGPU(){O("Renderer: waitForGPU() has been removed. Read https://github.com/mrdoob/three.js/issues/32012 for more information.")}set inspector(e){this._inspector!==null&&this._inspector.setRenderer(null),this._inspector=e,this._inspector.setRenderer(this)}get inspector(){return this._inspector}set highPrecision(e){let t=this.contextNode.value;e===!0?(t.modelViewMatrix=Xf,t.modelNormalViewMatrix=Yf):this.highPrecision&&(delete t.modelViewMatrix,delete t.modelNormalViewMatrix)}get highPrecision(){let e=this.contextNode.value;return e.modelViewMatrix===Xf&&e.modelNormalViewMatrix===Yf}setMRT(e){return this._mrt=e,this}getMRT(){return this._mrt}getOutputBufferType(){return this._outputBufferType}getColorBufferType(){return _e('Renderer: ".getColorBufferType()" has been renamed to ".getOutputBufferType()".'),this.getOutputBufferType()}_onDeviceLost(e){let t=`THREE.WebGPURenderer: ${e.api} Device Lost: + +Message: ${e.message}`;e.reason&&(t+=` +Reason: ${e.reason}`),O(t),this._isDeviceLost=!0}_renderBundle(e,t,s){let{bundleGroup:i,camera:n,renderList:r}=e,a=this._currentRenderContext,c=this._bundles.get(i,n),l=this.backend.get(c);l.renderContexts===void 0&&(l.renderContexts=new Set);let u=i.version!==l.version,h=l.renderContexts.has(a)===!1||u;if(l.renderContexts.add(a),h){this.backend.beginBundle(a),(l.renderObjects===void 0||u)&&(l.renderObjects=[]),this._currentRenderBundle=c;let{transparentDoublePass:d,transparent:p,opaque:m}=r;this.opaque===!0&&m.length>0&&this._renderObjects(m,n,t,s),this.transparent===!0&&p.length>0&&this._renderTransparents(p,d,n,t,s),this._currentRenderBundle=null,this.backend.finishBundle(a,c),l.version=i.version}else{let{renderObjects:d}=l;for(let p=0,m=d.length;p>=p,g.viewportValue.height>>=p,g.viewportValue.minDepth=E,g.viewportValue.maxDepth=B,g.viewport=g.viewportValue.equals(rf)===!1,g.scissorValue.copy(w).multiplyScalar(S).floor(),g.scissor=x._scissorTest&&g.scissorValue.equals(rf)===!1,g.scissorValue.width>>=p,g.scissorValue.height>>=p,g.clippingContext||(g.clippingContext=new kh),g.clippingContext.updateGlobal(u,t),u.onBeforeRender(this,e,t,m);let N=t.isArrayCamera?af:of;t.isArrayCamera||(Vu.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),N.setFromProjectionMatrix(Vu,t.coordinateSystem,t.reversedDepth));let C=this._renderLists.get(e,t);if(C.begin(),this._projectObject(e,t,0,C,g.clippingContext),C.finish(),this.sortObjects===!0&&C.sort(this._opaqueSort,this._transparentSort),m!==null){this._textures.updateRenderTarget(m,p);let ee=this._textures.get(m);g.textures=ee.textures,g.depthTexture=ee.depthTexture,g.width=ee.width,g.height=ee.height,g.renderTarget=m,g.depth=m.depthBuffer,g.stencil=m.stencilBuffer}else g.textures=null,g.depthTexture=null,g.width=ao.width,g.height=ao.height,g.depth=this.depth,g.stencil=this.stencil;g.width>>=p,g.height>>=p,g.activeCubeFace=d,g.activeMipmapLevel=p,g.occlusionQueryCount=C.occlusionQueryCount,g.scissorValue.max(Fi.set(0,0,0,0)),g.scissorValue.x+g.scissorValue.width>g.width&&(g.scissorValue.width=Math.max(g.width-g.scissorValue.x,0)),g.scissorValue.y+g.scissorValue.height>g.height&&(g.scissorValue.height=Math.max(g.height-g.scissorValue.y,0)),this._background.update(u,C,g),g.camera=t,this.backend.beginRender(g);let{bundles:I,lightsNode:k,transparentDoublePass:W,transparent:X,opaque:Y}=C;return I.length>0&&this._renderBundles(I,u,k),this.opaque===!0&&Y.length>0&&this._renderObjects(Y,t,u,k),this.transparent===!0&&X.length>0&&this._renderTransparents(X,W,t,u,k),this.backend.finishRender(g),n.renderId=r,this._currentRenderContext=a,this._currentRenderObjectFunction=c,this._handleObjectFunction=l,this._callDepth--,i!==null&&(this.setRenderTarget(h,d,p),this._renderOutput(m)),u.onAfterRender(this,e,t,m),this.inspector.finishRender(this.backend.getTimestampUID(g)),g}_setXRLayerSize(e,t){this._canvasTarget._width=e,this._canvasTarget._height=t,this.setViewport(0,0,e,t)}_renderOutput(e){let t=this._quad;this._nodes.hasOutputChange(e.texture)&&(t.material.fragmentNode=this._nodes.getOutputNode(e.texture),t.material.needsUpdate=!0);let s=this.autoClear,i=this.xr.enabled;this.autoClear=!1,this.xr.enabled=!1,this._renderScene(t,t.camera,!1),this.autoClear=s,this.xr.enabled=i}getMaxAnisotropy(){return this.backend.getMaxAnisotropy()}getActiveCubeFace(){return this._activeCubeFace}getActiveMipmapLevel(){return this._activeMipmapLevel}async setAnimationLoop(e){this._initialized===!1&&await this.init(),this._animation.setAnimationLoop(e)}getAnimationLoop(){return this._animation.getAnimationLoop()}async getArrayBufferAsync(e){return await this.backend.getArrayBufferAsync(e)}getContext(){return this.backend.getContext()}getPixelRatio(){return this._canvasTarget.getPixelRatio()}getDrawingBufferSize(e){return this._canvasTarget.getDrawingBufferSize(e)}getSize(e){return this._canvasTarget.getSize(e)}setPixelRatio(e=1){this._canvasTarget.setPixelRatio(e)}setDrawingBufferSize(e,t,s){this.xr&&this.xr.isPresenting||this._canvasTarget.setDrawingBufferSize(e,t,s)}setSize(e,t,s=!0){this.xr&&this.xr.isPresenting||this._canvasTarget.setSize(e,t,s)}setOpaqueSort(e){this._opaqueSort=e}setTransparentSort(e){this._transparentSort=e}getScissor(e){return this._canvasTarget.getScissor(e)}setScissor(e,t,s,i){this._canvasTarget.setScissor(e,t,s,i)}getScissorTest(){return this._canvasTarget.getScissorTest()}setScissorTest(e){this._canvasTarget.setScissorTest(e),this.backend.setScissorTest(e)}getViewport(e){return this._canvasTarget.getViewport(e)}setViewport(e,t,s,i,n=0,r=1){this._canvasTarget.setViewport(e,t,s,i,n,r)}getClearColor(e){return e.copy(this._clearColor)}setClearColor(e,t=1){this._clearColor.set(e),this._clearColor.a=t}getClearAlpha(){return this._clearColor.a}setClearAlpha(e){this._clearColor.a=e}getClearDepth(){return this.reversedDepthBuffer===!0?1-this._clearDepth:this._clearDepth}setClearDepth(e){this._clearDepth=e}getClearStencil(){return this._clearStencil}setClearStencil(e){this._clearStencil=e}isOccluded(e){let t=this._currentRenderContext;return t&&this.backend.isOccluded(t,e)}clear(e=!0,t=!0,s=!0){if(this._initialized===!1)throw new Error('Renderer: .clear() called before the backend is initialized. Use "await renderer.init();" before before using this method.');let i=this._renderTarget||this._getFrameBufferTarget(),n=null;if(i!==null){this._textures.updateRenderTarget(i);let r=this._textures.get(i);n=this._renderContexts.get(i),n.textures=r.textures,n.depthTexture=r.depthTexture,n.width=r.width,n.height=r.height,n.renderTarget=i,n.depth=i.depthBuffer,n.stencil=i.stencilBuffer;let a=this.backend.getClearColor();n.clearColorValue.r=a.r,n.clearColorValue.g=a.g,n.clearColorValue.b=a.b,n.clearColorValue.a=a.a,n.clearDepthValue=this.getClearDepth(),n.clearStencilValue=this.getClearStencil(),n.activeCubeFace=this.getActiveCubeFace(),n.activeMipmapLevel=this.getActiveMipmapLevel()}this.backend.clear(e,t,s,n),i!==null&&this._renderTarget===null&&this._renderOutput(i)}clearColor(){this.clear(!0,!1,!1)}clearDepth(){this.clear(!1,!0,!1)}clearStencil(){this.clear(!1,!1,!0)}async clearAsync(e=!0,t=!0,s=!0){_e('Renderer: "clearAsync()" has been deprecated. Use "clear()" and "await renderer.init();" when creating the renderer.'),await this.init(),this.clear(e,t,s)}async clearColorAsync(){_e('Renderer: "clearColorAsync()" has been deprecated. Use "clearColor()" and "await renderer.init();" when creating the renderer.'),this.clear(!0,!1,!1)}async clearDepthAsync(){_e('Renderer: "clearDepthAsync()" has been deprecated. Use "clearDepth()" and "await renderer.init();" when creating the renderer.'),this.clear(!1,!0,!1)}async clearStencilAsync(){_e('Renderer: "clearStencilAsync()" has been deprecated. Use "clearStencil()" and "await renderer.init();" when creating the renderer.'),this.clear(!1,!1,!0)}get needsFrameBufferTarget(){let e=this.currentToneMapping!==Ri,t=this.currentColorSpace!==me.workingColorSpace;return e||t}get samples(){return this._samples}get currentSamples(){let e=this._samples;return this._renderTarget!==null?e=this._renderTarget.samples:this.needsFrameBufferTarget&&(e=0),e}get currentToneMapping(){return this.isOutputTarget?this.toneMapping:Ri}get currentColorSpace(){return this.isOutputTarget?this.outputColorSpace:me.workingColorSpace}get isOutputTarget(){return this._renderTarget===this._outputRenderTarget||this._renderTarget===null}dispose(){this._initialized===!0&&(this.info.dispose(),this.backend.dispose(),this._animation.dispose(),this._objects.dispose(),this._geometries.dispose(),this._pipelines.dispose(),this._nodes.dispose(),this._bindings.dispose(),this._renderLists.dispose(),this._renderContexts.dispose(),this._textures.dispose(),this._frameBufferTarget!==null&&this._frameBufferTarget.dispose(),Object.values(this.backend.timestampQueryPool).forEach(e=>{e!==null&&e.dispose()})),this.setRenderTarget(null),this.setAnimationLoop(null)}setRenderTarget(e,t=0,s=0){this._renderTarget=e,this._activeCubeFace=t,this._activeMipmapLevel=s}getRenderTarget(){return this._renderTarget}setOutputRenderTarget(e){this._outputRenderTarget=e}getOutputRenderTarget(){return this._outputRenderTarget}setCanvasTarget(e){this._canvasTarget.removeEventListener("resize",this._onCanvasTargetResize),this._canvasTarget=e,this._canvasTarget.addEventListener("resize",this._onCanvasTargetResize)}getCanvasTarget(){return this._canvasTarget}_resetXRState(){this.backend.setXRTarget(null),this.setOutputRenderTarget(null),this.setRenderTarget(null),this._frameBufferTarget.dispose(),this._frameBufferTarget=null}setRenderObjectFunction(e){this._renderObjectFunction=e}getRenderObjectFunction(){return this._renderObjectFunction}compute(e,t=null){if(this._isDeviceLost===!0)return;if(this._initialized===!1)return z("Renderer: .compute() called before the backend is initialized. Try using .computeAsync() instead."),this.computeAsync(e,t);let s=this._nodes.nodeFrame,i=s.renderId;this.info.calls++,this.info.compute.calls++,this.info.compute.frameCalls++,s.renderId=this.info.calls,this.backend.updateTimeStampUID(e),this.inspector.beginCompute(this.backend.getTimestampUID(e),e);let n=this.backend,r=this._pipelines,a=this._bindings,c=this._nodes,l=Array.isArray(e)?e:[e];if(l[0]===void 0||l[0].isComputeNode!==!0)throw new Error("THREE.Renderer: .compute() expects a ComputeNode.");n.beginCompute(e);for(let u of l){if(r.has(u)===!1){let p=()=>{u.removeEventListener("dispose",p),r.delete(u),a.deleteForCompute(u),c.delete(u)};u.addEventListener("dispose",p);let m=u.onInitFunction;m!==null&&m.call(u,{renderer:this})}c.updateForCompute(u),a.updateForCompute(u);let h=a.getForCompute(u),d=r.getForCompute(u,h);n.compute(e,u,h,d,t)}n.finishCompute(e),s.renderId=i,this.inspector.finishCompute(this.backend.getTimestampUID(e))}async computeAsync(e,t=null){this._initialized===!1&&await this.init(),this.compute(e,t)}async hasFeatureAsync(e){return _e('Renderer: "hasFeatureAsync()" has been deprecated. Use "hasFeature()" and "await renderer.init();" when creating the renderer.'),await this.init(),this.hasFeature(e)}async resolveTimestampsAsync(e="render"){return this._initialized===!1&&await this.init(),this.backend.resolveTimestampsAsync(e)}hasFeature(e){if(this._initialized===!1)throw new Error('Renderer: .hasFeature() called before the backend is initialized. Use "await renderer.init();" before before using this method.');return this.backend.hasFeature(e)}hasInitialized(){return this._initialized}async initTextureAsync(e){_e('Renderer: "initTextureAsync()" has been deprecated. Use "initTexture()" and "await renderer.init();" when creating the renderer.'),await this.init(),this.initTexture(e)}initTexture(e){if(this._initialized===!1)throw new Error('Renderer: .initTexture() called before the backend is initialized. Use "await renderer.init();" before before using this method.');this._textures.updateTexture(e)}initRenderTarget(e){if(this._initialized===!1)throw new Error('Renderer: .initRenderTarget() called before the backend is initialized. Use "await renderer.init();" before before using this method.');this._textures.updateRenderTarget(e);let t=this._textures.get(e),s=this._renderContexts.get(e);s.textures=t.textures,s.depthTexture=t.depthTexture,s.width=t.width,s.height=t.height,s.renderTarget=e,s.depth=e.depthBuffer,s.stencil=e.stencilBuffer,this.backend.initRenderTarget(s)}copyFramebufferToTexture(e,t=null){if(t!==null)if(t.isVector2)t=Fi.set(t.x,t.y,e.image.width,e.image.height).floor();else if(t.isVector4)t=Fi.copy(t).floor();else{O("Renderer.copyFramebufferToTexture: Invalid rectangle.");return}else t=Fi.set(0,0,e.image.width,e.image.height);let s=this._currentRenderContext,i;s!==null?i=s.renderTarget:(i=this._renderTarget||this._getFrameBufferTarget(),i!==null&&(this._textures.updateRenderTarget(i),s=this._textures.get(i))),this._textures.updateTexture(e,{renderTarget:i}),this.backend.copyFramebufferToTexture(e,s,t),this._inspector.copyFramebufferToTexture(e)}copyTextureToTexture(e,t,s=null,i=null,n=0,r=0){this._textures.updateTexture(e),this._textures.updateTexture(t),this.backend.copyTextureToTexture(e,t,s,i,n,r),this._inspector.copyTextureToTexture(e,t)}async readRenderTargetPixelsAsync(e,t,s,i,n,r=0,a=0){return this.backend.copyTextureToBuffer(e.textures[r],t,s,i,n,a)}_projectObject(e,t,s,i,n){if(e.visible===!1)return;if(e.layers.test(t.layers)){if(e.isGroup)s=e.renderOrder,e.isClippingGroup&&e.enabled&&(n=n.getGroupContext(e));else if(e.isLOD)e.autoUpdate===!0&&e.update(t);else if(e.isLight)i.pushLight(e);else if(e.isSprite){let c=t.isArrayCamera?af:of;if(!e.frustumCulled||c.intersectsSprite(e,t)){this.sortObjects===!0&&Fi.setFromMatrixPosition(e.matrixWorld).applyMatrix4(Vu);let{geometry:l,material:u}=e;u.visible&&i.push(e,l,u,s,Fi.z,null,n)}}else if(e.isLineLoop)O("Renderer: Objects of type THREE.LineLoop are not supported. Please use THREE.Line or THREE.LineSegments.");else if(e.isMesh||e.isLine||e.isPoints){let c=t.isArrayCamera?af:of;if(!e.frustumCulled||c.intersectsObject(e,t)){let{geometry:l,material:u}=e;if(this.sortObjects===!0&&(l.boundingSphere===null&&l.computeBoundingSphere(),Fi.copy(l.boundingSphere.center).applyMatrix4(e.matrixWorld).applyMatrix4(Vu)),Array.isArray(u)){let h=l.groups;for(let d=0,p=h.length;d0){for(let{material:r}of t)r.side=rt;this._renderObjects(t,s,i,n,"backSide");for(let{material:r}of t)r.side=_s;this._renderObjects(e,s,i,n);for(let{material:r}of t)r.side=$s}else this._renderObjects(e,s,i,n)}_renderObjects(e,t,s,i,n=null){for(let r=0,a=e.length;r(p.not().discard(),m))(l)}}e.depthNode&&e.depthNode.isNode&&(u=e.depthNode),e.castShadowPositionNode&&e.castShadowPositionNode.isNode?c=e.castShadowPositionNode:e.positionNode&&e.positionNode.isNode&&(c=e.positionNode),s={version:t,colorNode:l,depthNode:u,positionNode:c},this._cacheShadowNodes.set(e,s)}return s}renderObject(e,t,s,i,n,r,a,c=null,l=null){let u=!1,h,d,p,m;if(e.onBeforeRender(this,t,s,i,n,r),n.allowOverride===!0&&t.overrideMaterial!==null){let g=t.overrideMaterial;if(u=!0,h=g.isNodeMaterial?g.colorNode:null,d=g.isNodeMaterial?g.depthNode:null,p=g.isNodeMaterial?g.positionNode:null,m=t.overrideMaterial.side,n.positionNode&&n.positionNode.isNode&&(g.positionNode=n.positionNode),g.alphaTest=n.alphaTest,g.alphaMap=n.alphaMap,g.transparent=n.transparent||n.transmission>0||n.transmissionNode&&n.transmissionNode.isNode||n.backdropNode&&n.backdropNode.isNode,g.isShadowPassMaterial){let{colorNode:y,depthNode:x,positionNode:_}=this._getShadowNodes(n);this.shadowMap.type===Wr?g.side=n.shadowSide!==null?n.shadowSide:n.side:g.side=n.shadowSide!==null?n.shadowSide:GF[n.side],y!==null&&(g.colorNode=y),x!==null&&(g.depthNode=x),_!==null&&(g.positionNode=_)}n=g}n.transparent===!0&&n.side===$s&&n.forceSinglePass===!1?(n.side=rt,this._handleObjectFunction(e,n,t,s,a,r,c,"backSide"),n.side=_s,this._handleObjectFunction(e,n,t,s,a,r,c,l),n.side=$s):this._handleObjectFunction(e,n,t,s,a,r,c,l),u&&(t.overrideMaterial.colorNode=h,t.overrideMaterial.depthNode=d,t.overrideMaterial.positionNode=p,t.overrideMaterial.side=m),e.onAfterRender(this,t,s,i,n,r)}hasCompatibility(e){return this.backend.hasCompatibility(e)}_renderObjectDirect(e,t,s,i,n,r,a,c){let l=this._objects.get(e,t,s,i,n,this._currentRenderContext,a,c);l.drawRange=e.geometry.drawRange,l.group=r,this._currentRenderBundle!==null&&(this.backend.get(this._currentRenderBundle).renderObjects.push(l),l.bundle=this._currentRenderBundle.bundleGroup);let u=this._nodes.needsRefresh(l);u&&(this._nodes.updateBefore(l),this._geometries.updateForRender(l),this._nodes.updateForRender(l),this._bindings.updateForRender(l)),this._pipelines.updateForRender(l),this.backend.draw(l,this.info),u&&this._nodes.updateAfter(l)}_createObjectPipeline(e,t,s,i,n,r,a,c){let l=this._objects.get(e,t,s,i,n,this._currentRenderContext,a,c);l.drawRange=e.geometry.drawRange,l.group=r,this._nodes.updateBefore(l),this._geometries.updateForRender(l),this._nodes.updateForRender(l),this._bindings.updateForRender(l),this._pipelines.getForRender(l,this._compilationPromises),this._nodes.updateAfter(l)}_onCanvasTargetResize(){this._initialized&&this.backend.updateSize()}get compile(){return this.compileAsync}},Gh=class{constructor(e=""){this.name=e,this.visibility=0}setVisibility(e){this.visibility|=e}getVisibility(){return this.visibility}clone(){return Object.assign(new this.constructor,this)}};function WF(o){return o+(pn-o%pn)%pn}var Wh=class extends Gh{constructor(e,t=null){super(e),this.isBuffer=!0,this.bytesPerElement=Float32Array.BYTES_PER_ELEMENT,this._buffer=t,this._updateRanges=[]}get updateRanges(){return this._updateRanges}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}get byteLength(){return WF(this._buffer.byteLength)}get buffer(){return this._buffer}update(){return!0}},$h=class extends Wh{constructor(e,t=null){super(e,t),this.isUniformBuffer=!0}},$F=0,qh=class extends $h{constructor(e,t){super("UniformBuffer_"+$F++,e?e.value:null),this.nodeUniform=e,this.groupNode=t,this.isNodeUniformBuffer=!0}set updateRanges(e){this.nodeUniform.updateRanges=e}get updateRanges(){return this.nodeUniform.updateRanges}addUpdateRange(e,t){this.nodeUniform.addUpdateRange(e,t)}clearUpdateRanges(){this.nodeUniform.clearUpdateRanges()}get buffer(){return this.nodeUniform.value}},my=class extends $h{constructor(e){super(e),this.isUniformsGroup=!0,this._values=null,this.uniforms=[],this._updateRangeCache=new Map}addUniformUpdateRange(e){let t=e.index;if(this._updateRangeCache.has(t)!==!0){let s=this.updateRanges,i=e.offset,n=e.itemSize,r={start:i,count:n};s.push(r),this._updateRangeCache.set(t,r)}}clearUpdateRanges(){this._updateRangeCache.clear(),super.clearUpdateRanges()}addUniform(e){return this.uniforms.push(e),this}removeUniform(e){let t=this.uniforms.indexOf(e);return t!==-1&&this.uniforms.splice(t,1),this}get values(){return this._values===null&&(this._values=Array.from(this.buffer)),this._values}get buffer(){let e=this._buffer;if(e===null){let t=this.byteLength;e=new Float32Array(new ArrayBuffer(t)),this._buffer=e}return e}get byteLength(){let e=this.bytesPerElement,t=0;for(let s=0,i=this.uniforms.length;s{this.generation=null,this.version=-1},this.texture=t,this.version=t?t.version:-1,this.generation=null,this.samplerKey="",this.isSampler=!0}set texture(e){this._texture!==e&&(this._texture&&this._texture.removeEventListener("dispose",this._onTextureDispose),this._texture=e,this.generation=null,this.version=-1,this._texture&&this._texture.addEventListener("dispose",this._onTextureDispose))}get texture(){return this._texture}update(){let{texture:e,version:t}=this;return t!==e.version?(this.version=e.version,!0):!1}clone(){let e=super.clone();return e._texture=null,e._onTextureDispose=()=>{e.generation=null,e.version=-1},e.texture=this.texture,e}},YF=0,gy=class extends Xh{constructor(e,t){super(e,t),this.id=YF++,this.store=!1,this.mipLevel=0,this.isSampledTexture=!0}},No=class extends gy{constructor(e,t,s,i=null){super(e,t?t.value:null),this.textureNode=t,this.groupNode=s,this.access=i}update(){let{textureNode:e}=this;return this.texture!==e.value?(this.texture=e.value,!0):super.update()}},Yh=class extends No{constructor(e,t,s,i=null){super(e,t,s,i),this.isSampledCubeTexture=!0}},Cc=class extends No{constructor(e,t,s,i=null){super(e,t,s,i),this.isSampledTexture3D=!0}},C_={bitcast_int_uint:new He("uint tsl_bitcast_int_to_uint ( int x ) { return floatBitsToUint( intBitsToFloat ( x ) ); }"),bitcast_uint_int:new He("uint tsl_bitcast_uint_to_int ( uint x ) { return floatBitsToInt( uintBitsToFloat ( x ) ); }")},jF={textureDimensions:"textureSize",equals:"equal",bitcast_float_int:"floatBitsToInt",bitcast_int_float:"intBitsToFloat",bitcast_uint_float:"uintBitsToFloat",bitcast_float_uint:"floatBitsToUint",bitcast_uint_int:"tsl_bitcast_uint_to_int",bitcast_int_uint:"tsl_bitcast_int_to_uint",floatpack_snorm_2x16:"packSnorm2x16",floatpack_unorm_2x16:"packUnorm2x16",floatpack_float16_2x16:"packHalf2x16",floatunpack_snorm_2x16:"unpackSnorm2x16",floatunpack_unorm_2x16:"unpackUnorm2x16",floatunpack_float16_2x16:"unpackHalf2x16"},E_={low:"lowp",medium:"mediump",high:"highp"},B_={swizzleAssign:!0,storageBuffer:!1},F_={perspective:"smooth",linear:"noperspective"},I_={centroid:"centroid"},P_=` +precision highp float; +precision highp int; +precision highp sampler2D; +precision highp sampler3D; +precision highp samplerCube; +precision highp sampler2DArray; + +precision highp usampler2D; +precision highp usampler3D; +precision highp usamplerCube; +precision highp usampler2DArray; + +precision highp isampler2D; +precision highp isampler3D; +precision highp isamplerCube; +precision highp isampler2DArray; + +precision highp sampler2DShadow; +precision highp sampler2DArrayShadow; +precision highp samplerCubeShadow; +`,yy=class extends Uh{constructor(e,t){super(e,t,new ay),this.uniformGroups={},this.transforms=[],this.extensions={},this.builtins={vertex:[],fragment:[],compute:[]}}needsToWorkingColorSpace(e){return e.isVideoTexture===!0&&e.colorSpace!==Bi}_include(e){let t=C_[e];return t.build(this),this.addInclude(t),t}getMethod(e){return C_[e]!==void 0&&this._include(e),jF[e]||e}getBitcastMethod(e,t){return this.getMethod(`bitcast_${t}_${e}`)}getFloatPackingMethod(e){return this.getMethod(`floatpack_${e}_2x16`)}getFloatUnpackingMethod(e){return this.getMethod(`floatunpack_${e}_2x16`)}getTernary(e,t,s){return`${e} ? ${t} : ${s}`}getOutputStructName(){return""}buildFunctionCode(e){let t=e.layout,s=this.flowShaderNode(e),i=[];for(let r of t.inputs)i.push(this.getType(r.type)+" "+r.name);return`${this.getType(t.type)} ${t.name}( ${i.join(", ")} ) { + + ${s.vars} + +${s.code} + return ${s.result}; + +}`}setupPBO(e){let t=e.value;if(t.pbo===void 0){let s=t.array,i=t.count*t.itemSize,{itemSize:n}=t,r=t.array.constructor.name.toLowerCase().includes("int"),a=r?ha:ua;n===2?a=r?da:Ms:n===3?a=r?ob:la:n===4&&(a=r?pa:Lt);let c={Float32Array:Ct,Uint8Array:lt,Uint16Array:rn,Uint32Array:Oe,Int8Array:Hn,Int16Array:Xn,Int32Array:ut,Uint8ClampedArray:lt},l=Math.pow(2,Math.ceil(Math.log2(Math.sqrt(i/n)))),u=Math.ceil(i/n/l);l*u*n0?h:"";a=`${l.name} { + ${u} ${r.name}[${d}]; +}; +`}else{let l=r.groupNode.name;if(i[l]===void 0){let u=this.uniformGroups[l];if(u!==void 0){let h=[];for(let d of u.uniforms){let p=d.getType(),m=this.getVectorType(p),g=d.nodeUniform.node.precision,y=`${m} ${d.name};`;g!==null&&(y=E_[g]+" "+y),h.push(" "+y)}i[l]=h}}c=!0}if(!c){let l=r.node.precision;l!==null&&(a=E_[l]+" "+a),a="uniform "+a,s.push(a)}}let n="";for(let r in i){let a=i[r];n+=this._getGLSLUniformStruct(r,a.join(` +`))+` +`}return n+=s.join(` +`),n}getTypeFromAttribute(e){let t=super.getTypeFromAttribute(e);if(/^[iu]/.test(t)&&e.gpuType!==ut){let s=e;e.isInterleavedBufferAttribute&&(s=e.data);let i=s.array;i instanceof Uint32Array||i instanceof Int32Array||(t=t.slice(1))}return t}getAttributes(e){let t="";if(e==="vertex"||e==="compute"){let s=this.getAttributesArray(),i=0;for(let n of s)t+=`layout( location = ${i++} ) in ${n.type} ${n.name}; +`}return t}getStructMembers(e){let t=[];for(let s of e.members)t.push(` ${s.type} ${s.name};`);return t.join(` +`)}getStructs(e){let t=[],s=this.structs[e],i=[];for(let n of s)if(n.output)for(let r of n.members)i.push(`layout( location = ${r.index} ) out ${r.type} ${r.name};`);else{let r="struct "+n.name+` { +`;r+=this.getStructMembers(n),r+=` +}; +`,t.push(r)}return i.length===0&&i.push("layout( location = 0 ) out vec4 fragColor;"),` +`+i.join(` +`)+` + +`+t.join(` +`)}getVaryings(e){let t="",s=this.varyings;if(e==="vertex"||e==="compute")for(let i of s){e==="compute"&&(i.needsInterpolation=!0);let n=this.getType(i.type);if(i.needsInterpolation)if(i.interpolationType){let r=F_[i.interpolationType]||i.interpolationType,a=I_[i.interpolationSampling]||"";t+=`${r} ${a} out ${n} ${i.name}; +`}else{let r=n.includes("int")||n.includes("uv")||n.includes("iv")?"flat ":"";t+=`${r}out ${n} ${i.name}; +`}else t+=`${n} ${i.name}; +`}else if(e==="fragment"){for(let i of s)if(i.needsInterpolation){let n=this.getType(i.type);if(i.interpolationType){let r=F_[i.interpolationType]||i.interpolationType,a=I_[i.interpolationSampling]||"";t+=`${r} ${a} in ${n} ${i.name}; +`}else{let r=n.includes("int")||n.includes("uv")||n.includes("iv")?"flat ":"";t+=`${r}in ${n} ${i.name}; +`}}}for(let i of this.builtins[e])t+=`${i}; +`;return t}getVertexIndex(){return"uint( gl_VertexID )"}getInstanceIndex(){return"uint( gl_InstanceID )"}getInvocationLocalIndex(){return`uint( gl_InstanceID ) % ${this.object.workgroupSize.reduce((s,i)=>s*i,1)}u`}getSubgroupSize(){O("GLSLNodeBuilder: WebGLBackend does not support the subgroupSize node")}getInvocationSubgroupIndex(){O("GLSLNodeBuilder: WebGLBackend does not support the invocationSubgroupIndex node")}getSubgroupIndex(){O("GLSLNodeBuilder: WebGLBackend does not support the subgroupIndex node")}getDrawIndex(){return this.renderer.backend.extensions.has("WEBGL_multi_draw")?"uint( gl_DrawID )":null}getFrontFacing(){return"gl_FrontFacing"}getFragCoord(){return"gl_FragCoord.xy"}getFragDepth(){return"gl_FragDepth"}enableExtension(e,t,s=this.shaderStage){let i=this.extensions[s]||(this.extensions[s]=new Map);i.has(e)===!1&&i.set(e,{name:e,behavior:t})}getExtensions(e){let t=[];if(e==="vertex"){let i=this.renderer.backend.extensions;this.object.isBatchedMesh&&i.has("WEBGL_multi_draw")&&this.enableExtension("GL_ANGLE_multi_draw","require",e)}let s=this.extensions[e];if(s!==void 0)for(let{name:i,behavior:n}of s.values())t.push(`#extension ${i} : ${n}`);return t.join(` +`)}getClipDistance(){return"gl_ClipDistance"}isAvailable(e){let t=B_[e];if(t===void 0){let s;switch(t=!1,e){case"float32Filterable":s="OES_texture_float_linear";break;case"clipDistance":s="WEBGL_clip_cull_distance";break}if(s!==void 0){let i=this.renderer.backend.extensions;i.has(s)&&(i.get(s),t=!0)}B_[e]=t}return t}isFlipY(){return!0}getUniformBufferLimit(){let e=this.renderer.backend.gl;return e.getParameter(e.MAX_UNIFORM_BLOCK_SIZE)}enableHardwareClipping(e){this.enableExtension("GL_ANGLE_clip_cull_distance","require"),this.builtins.vertex.push(`out float gl_ClipDistance[ ${e} ]`)}enableMultiview(){this.enableExtension("GL_OVR_multiview2","require","fragment"),this.enableExtension("GL_OVR_multiview2","require","vertex"),this.builtins.vertex.push("layout(num_views = 2) in")}registerTransform(e,t){this.transforms.push({varyingName:e,attributeNode:t})}getTransforms(){let e=this.transforms,t="";for(let s=0;s0&&(s+=` +`),s+=` // flow -> ${l} + `),s+=`${c.code} + `,a===n&&t!=="compute"&&(s+=`// result + `,t==="vertex"?(s+="gl_Position = ",s+=`${c.result};`):t==="fragment"&&(a.outputNode.isOutputStructNode||(s+="fragColor = ",s+=`${c.result};`)))}let r=e[t];r.extensions=this.getExtensions(t),r.uniforms=this.getUniforms(t),r.attributes=this.getAttributes(t),r.varyings=this.getVaryings(t),r.vars=this.getVars(t),r.structs=this.getStructs(t),r.codes=this.getCodes(t),r.transforms=this.getTransforms(t),r.flow=s}this.material!==null?(this.vertexShader=this._getGLSLVertexCode(e.vertex),this.fragmentShader=this._getGLSLFragmentCode(e.fragment)):this.computeShader=this._getGLSLVertexCode(e.compute)}getUniformFromNode(e,t,s,i=null){let n=super.getUniformFromNode(e,t,s,i),r=this.getDataFromNode(e,s,this.globalCache),a=r.uniformGPU;if(a===void 0){let c=e.groupNode,l=c.name,u=this.getBindGroupArray(l,s);if(t==="texture")a=new No(n.name,n.node,c),u.push(a);else if(t==="cubeTexture"||t==="cubeDepthTexture")a=new Yh(n.name,n.node,c),u.push(a);else if(t==="texture3D")a=new Cc(n.name,n.node,c),u.push(a);else if(t==="buffer"){n.name=`buffer${e.id}`;let h=this.getSharedDataFromNode(e),d=h.buffer;d===void 0&&(e.name=`NodeBuffer_${e.id}`,d=new qh(e,c),d.name=e.name,h.buffer=d),u.push(d),a=d}else{let h=this.uniformGroups[l];h===void 0?(h=new Hh(l,c),this.uniformGroups[l]=h,u.push(h)):u.indexOf(h)===-1&&u.push(h),a=this.getNodeUniform(n,t);let d=a.name;h.uniforms.some(m=>m.name===d)||h.addUniform(a)}r.uniformGPU=a}return n}},cf=null,co=null,jh=class{constructor(e={}){this.parameters=Object.assign({},e),this.data=new WeakMap,this.renderer=null,this.domElement=null,this.timestampQueryPool={[As.RENDER]:null,[As.COMPUTE]:null},this.trackTimestamp=e.trackTimestamp===!0}async init(e){this.renderer=e}get coordinateSystem(){}beginRender(){}finishRender(){}beginCompute(){}finishCompute(){}draw(){}compute(){}createProgram(){}destroyProgram(){}createBindings(){}updateBindings(){}updateBinding(){}createRenderPipeline(){}createComputePipeline(){}needsRenderUpdate(){}getRenderCacheKey(){}createNodeBuilder(){}updateSampler(){}createDefaultTexture(){}createTexture(){}updateTexture(){}generateMipmaps(){}destroyTexture(){}async copyTextureToBuffer(){}copyTextureToTexture(){}copyFramebufferToTexture(){}createAttribute(){}createIndexAttribute(){}createStorageAttribute(){}updateAttribute(){}destroyAttribute(){}getContext(){}updateSize(){}updateViewport(){}updateTimeStampUID(e){let t=this.get(e),s=this.renderer.info.frame,i;e.isComputeNode===!0?i="c:"+this.renderer.info.compute.frameCalls:i="r:"+this.renderer.info.render.frameCalls,t.timestampUID=i+":"+e.id+":f"+s}getTimestampUID(e){return this.get(e).timestampUID}getTimestampFrames(e){let t=this.timestampQueryPool[e];return t?t.getTimestampFrames():[]}_getQueryPool(e){let t=e.startsWith("c:")?As.COMPUTE:As.RENDER;return this.timestampQueryPool[t]}getTimestamp(e){return this._getQueryPool(e).getTimestamp(e)}hasTimestamp(e){return this._getQueryPool(e).hasTimestamp(e)}isOccluded(){}async resolveTimestampsAsync(e="render"){if(!this.trackTimestamp){_e("WebGPURenderer: Timestamp tracking is disabled.");return}let t=this.timestampQueryPool[e];if(!t)return;let s=await t.resolveQueriesAsync();return this.renderer.info[e].timestamp=s,s}async getArrayBufferAsync(){}async hasFeatureAsync(){}hasFeature(){}getMaxAnisotropy(){}getDrawingBufferSize(){return cf=cf||new re,this.renderer.getDrawingBufferSize(cf)}setScissorTest(){}getClearColor(){let e=this.renderer;return co=co||new Tc,e.getClearColor(co),co.getRGB(co),co}getDomElement(){let e=this.domElement;return e===null&&(e=this.parameters.canvas!==void 0?this.parameters.canvas:Mb(),"setAttribute"in e&&e.setAttribute("data-engine",`three.js r${"183"} webgpu`),this.domElement=e),e}hasCompatibility(){return!1}initRenderTarget(){}set(e,t){this.data.set(e,t)}get(e){let t=this.data.get(e);return t===void 0&&(t={},this.data.set(e,t)),t}has(e){return this.data.has(e)}delete(e){this.data.delete(e)}deleteBindGroupData(){}dispose(){}},ZF=0,xy=class{constructor(e,t){this.buffers=[e.bufferGPU,t],this.type=e.type,this.bufferType=e.bufferType,this.pbo=e.pbo,this.byteLength=e.byteLength,this.bytesPerElement=e.BYTES_PER_ELEMENT,this.version=e.version,this.isInteger=e.isInteger,this.activeBufferIndex=0,this.baseId=e.id}get id(){return`${this.baseId}|${this.activeBufferIndex}`}get bufferGPU(){return this.buffers[this.activeBufferIndex]}get transformBuffer(){return this.buffers[this.activeBufferIndex^1]}switchBuffers(){this.activeBufferIndex^=1}},by=class{constructor(e){this.backend=e}createAttribute(e,t){let s=this.backend,{gl:i}=s,n=e.array,r=e.usage||i.STATIC_DRAW,a=e.isInterleavedBufferAttribute?e.data:e,c=s.get(a),l=c.bufferGPU;l===void 0&&(l=this._createBuffer(i,t,n,r),c.bufferGPU=l,c.bufferType=t,c.version=a.version);let u;if(n instanceof Float32Array)u=i.FLOAT;else if(typeof Float16Array<"u"&&n instanceof Float16Array)u=i.HALF_FLOAT;else if(n instanceof Uint16Array)e.isFloat16BufferAttribute?u=i.HALF_FLOAT:u=i.UNSIGNED_SHORT;else if(n instanceof Int16Array)u=i.SHORT;else if(n instanceof Uint32Array)u=i.UNSIGNED_INT;else if(n instanceof Int32Array)u=i.INT;else if(n instanceof Int8Array)u=i.BYTE;else if(n instanceof Uint8Array)u=i.UNSIGNED_BYTE;else if(n instanceof Uint8ClampedArray)u=i.UNSIGNED_BYTE;else throw new Error("THREE.WebGLBackend: Unsupported buffer data format: "+n);let h={bufferGPU:l,bufferType:t,type:u,byteLength:n.byteLength,bytesPerElement:n.BYTES_PER_ELEMENT,version:e.version,pbo:e.pbo,isInteger:u===i.INT||u===i.UNSIGNED_INT||e.gpuType===ut,id:ZF++};if(e.isStorageBufferAttribute||e.isStorageInstancedBufferAttribute){let d=this._createBuffer(i,t,n,r);h=new xy(h,d)}s.set(e,h)}updateAttribute(e){let t=this.backend,{gl:s}=t,i=e.array,n=e.isInterleavedBufferAttribute?e.data:e,r=t.get(n),a=r.bufferType,c=e.isInterleavedBufferAttribute?e.data.updateRanges:e.updateRanges;if(s.bindBuffer(a,r.bufferGPU),c.length===0)s.bufferSubData(a,0,i);else{for(let l=0,u=c.length;l0?this.enable(i.SAMPLE_ALPHA_TO_COVERAGE):this.disable(i.SAMPLE_ALPHA_TO_COVERAGE),s>0&&this.currentClippingPlanes!==s)for(let c=0;c<8;c++)c{function n(){let r=e.clientWaitSync(t,e.SYNC_FLUSH_COMMANDS_BIT,0);if(r===e.WAIT_FAILED){e.deleteSync(t),i();return}if(r===e.TIMEOUT_EXPIRED){requestAnimationFrame(n);return}e.deleteSync(t),s()}n()})}},D_=!1,ku,lf,L_,Sy=class{constructor(e){this.backend=e,this.gl=e.gl,this.extensions=e.extensions,this.defaultTextures={},this._srcFramebuffer=null,this._dstFramebuffer=null,D_===!1&&(this._init(),D_=!0)}_init(){let e=this.gl;ku={[Pn]:e.REPEAT,[bs]:e.CLAMP_TO_EDGE,[Dn]:e.MIRRORED_REPEAT},lf={[Ue]:e.NEAREST,[xp]:e.NEAREST_MIPMAP_NEAREST,[$r]:e.NEAREST_MIPMAP_LINEAR,[ct]:e.LINEAR,[ru]:e.LINEAR_MIPMAP_NEAREST,[Ci]:e.LINEAR_MIPMAP_LINEAR},L_={[vp]:e.NEVER,[Ap]:e.ALWAYS,[pu]:e.LESS,[Jr]:e.LEQUAL,[wp]:e.EQUAL,[Yn]:e.GEQUAL,[Oa]:e.GREATER,[Mp]:e.NOTEQUAL}}getGLTextureType(e){let{gl:t}=this,s;return e.isCubeTexture===!0?s=t.TEXTURE_CUBE_MAP:e.isArrayTexture===!0||e.isDataArrayTexture===!0||e.isCompressedArrayTexture===!0?s=t.TEXTURE_2D_ARRAY:e.isData3DTexture===!0?s=t.TEXTURE_3D:s=t.TEXTURE_2D,s}getInternalFormat(e,t,s,i,n=!1){let{gl:r,extensions:a}=this;if(e!==null){if(r[e]!==void 0)return r[e];z("WebGLBackend: Attempt to use non-existing WebGL internal format '"+e+"'")}let c=t;if(t===r.RED&&(s===r.FLOAT&&(c=r.R32F),s===r.HALF_FLOAT&&(c=r.R16F),s===r.UNSIGNED_BYTE&&(c=r.R8),s===r.UNSIGNED_SHORT&&(c=r.R16),s===r.UNSIGNED_INT&&(c=r.R32UI),s===r.BYTE&&(c=r.R8I),s===r.SHORT&&(c=r.R16I),s===r.INT&&(c=r.R32I)),t===r.RED_INTEGER&&(s===r.UNSIGNED_BYTE&&(c=r.R8UI),s===r.UNSIGNED_SHORT&&(c=r.R16UI),s===r.UNSIGNED_INT&&(c=r.R32UI),s===r.BYTE&&(c=r.R8I),s===r.SHORT&&(c=r.R16I),s===r.INT&&(c=r.R32I)),t===r.RG&&(s===r.FLOAT&&(c=r.RG32F),s===r.HALF_FLOAT&&(c=r.RG16F),s===r.UNSIGNED_BYTE&&(c=r.RG8),s===r.UNSIGNED_SHORT&&(c=r.RG16),s===r.UNSIGNED_INT&&(c=r.RG32UI),s===r.BYTE&&(c=r.RG8I),s===r.SHORT&&(c=r.RG16I),s===r.INT&&(c=r.RG32I)),t===r.RG_INTEGER&&(s===r.UNSIGNED_BYTE&&(c=r.RG8UI),s===r.UNSIGNED_SHORT&&(c=r.RG16UI),s===r.UNSIGNED_INT&&(c=r.RG32UI),s===r.BYTE&&(c=r.RG8I),s===r.SHORT&&(c=r.RG16I),s===r.INT&&(c=r.RG32I)),t===r.RGB){let l=n?Xo:me.getTransfer(i);s===r.FLOAT&&(c=r.RGB32F),s===r.HALF_FLOAT&&(c=r.RGB16F),s===r.UNSIGNED_BYTE&&(c=r.RGB8),s===r.UNSIGNED_SHORT&&(c=r.RGB16),s===r.UNSIGNED_INT&&(c=r.RGB32UI),s===r.BYTE&&(c=r.RGB8I),s===r.SHORT&&(c=r.RGB16I),s===r.INT&&(c=r.RGB32I),s===r.UNSIGNED_BYTE&&(c=l===ne?r.SRGB8:r.RGB8),s===r.UNSIGNED_SHORT_5_6_5&&(c=r.RGB565),s===r.UNSIGNED_SHORT_5_5_5_1&&(c=r.RGB5_A1),s===r.UNSIGNED_SHORT_4_4_4_4&&(c=r.RGB4),s===r.UNSIGNED_INT_5_9_9_9_REV&&(c=r.RGB9_E5),s===r.UNSIGNED_INT_10F_11F_11F_REV&&(c=r.R11F_G11F_B10F)}if(t===r.RGB_INTEGER&&(s===r.UNSIGNED_BYTE&&(c=r.RGB8UI),s===r.UNSIGNED_SHORT&&(c=r.RGB16UI),s===r.UNSIGNED_INT&&(c=r.RGB32UI),s===r.BYTE&&(c=r.RGB8I),s===r.SHORT&&(c=r.RGB16I),s===r.INT&&(c=r.RGB32I)),t===r.RGBA){let l=n?Xo:me.getTransfer(i);s===r.FLOAT&&(c=r.RGBA32F),s===r.HALF_FLOAT&&(c=r.RGBA16F),s===r.UNSIGNED_BYTE&&(c=r.RGBA8),s===r.UNSIGNED_SHORT&&(c=r.RGBA16),s===r.UNSIGNED_INT&&(c=r.RGBA32UI),s===r.BYTE&&(c=r.RGBA8I),s===r.SHORT&&(c=r.RGBA16I),s===r.INT&&(c=r.RGBA32I),s===r.UNSIGNED_BYTE&&(c=l===ne?r.SRGB8_ALPHA8:r.RGBA8),s===r.UNSIGNED_SHORT_4_4_4_4&&(c=r.RGBA4),s===r.UNSIGNED_SHORT_5_5_5_1&&(c=r.RGB5_A1)}return t===r.RGBA_INTEGER&&(s===r.UNSIGNED_BYTE&&(c=r.RGBA8UI),s===r.UNSIGNED_SHORT&&(c=r.RGBA16UI),s===r.UNSIGNED_INT&&(c=r.RGBA32UI),s===r.BYTE&&(c=r.RGBA8I),s===r.SHORT&&(c=r.RGBA16I),s===r.INT&&(c=r.RGBA32I)),t===r.DEPTH_COMPONENT&&(s===r.UNSIGNED_SHORT&&(c=r.DEPTH_COMPONENT16),s===r.UNSIGNED_INT&&(c=r.DEPTH_COMPONENT24),s===r.FLOAT&&(c=r.DEPTH_COMPONENT32F)),t===r.DEPTH_STENCIL&&s===r.UNSIGNED_INT_24_8&&(c=r.DEPTH24_STENCIL8),(c===r.R16F||c===r.R32F||c===r.RG16F||c===r.RG32F||c===r.RGBA16F||c===r.RGBA32F)&&a.get("EXT_color_buffer_float"),c}setTextureParameters(e,t){let{gl:s,extensions:i,backend:n}=this,r=me.getPrimaries(me.workingColorSpace),a=t.colorSpace===Bi?null:me.getPrimaries(t.colorSpace),c=t.colorSpace===Bi||r===a?s.NONE:s.BROWSER_DEFAULT_WEBGL;s.pixelStorei(s.UNPACK_FLIP_Y_WEBGL,t.flipY),s.pixelStorei(s.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),s.pixelStorei(s.UNPACK_ALIGNMENT,t.unpackAlignment),s.pixelStorei(s.UNPACK_COLORSPACE_CONVERSION_WEBGL,c),s.texParameteri(e,s.TEXTURE_WRAP_S,ku[t.wrapS]),s.texParameteri(e,s.TEXTURE_WRAP_T,ku[t.wrapT]),(e===s.TEXTURE_3D||e===s.TEXTURE_2D_ARRAY)&&(t.isArrayTexture||s.texParameteri(e,s.TEXTURE_WRAP_R,ku[t.wrapR])),s.texParameteri(e,s.TEXTURE_MAG_FILTER,lf[t.magFilter]);let l=t.mipmaps!==void 0&&t.mipmaps.length>0,u=t.minFilter===ct&&l?Ci:t.minFilter;if(s.texParameteri(e,s.TEXTURE_MIN_FILTER,lf[u]),t.compareFunction&&(s.texParameteri(e,s.TEXTURE_COMPARE_MODE,s.COMPARE_REF_TO_TEXTURE),s.texParameteri(e,s.TEXTURE_COMPARE_FUNC,L_[t.compareFunction])),i.has("EXT_texture_filter_anisotropic")===!0){if(t.magFilter===Ue||t.minFilter!==$r&&t.minFilter!==Ci||t.type===Ct&&i.has("OES_texture_float_linear")===!1)return;if(t.anisotropy>1){let h=i.get("EXT_texture_filter_anisotropic");s.texParameterf(e,h.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(t.anisotropy,n.getMaxAnisotropy()))}}}createDefaultTexture(e){let{gl:t,backend:s,defaultTextures:i}=this,n=this.getGLTextureType(e),r=i[n];r===void 0&&(r=t.createTexture(),s.state.bindTexture(n,r),t.texParameteri(n,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(n,t.TEXTURE_MAG_FILTER,t.NEAREST),i[n]=r),s.set(e,{textureGPU:r,glTextureType:n})}createTexture(e,t){let{gl:s,backend:i}=this,{levels:n,width:r,height:a,depth:c}=t,l=i.utils.convert(e.format,e.colorSpace),u=i.utils.convert(e.type),h=this.getInternalFormat(e.internalFormat,l,u,e.colorSpace,e.isVideoTexture),d=s.createTexture(),p=this.getGLTextureType(e);i.state.bindTexture(p,d),this.setTextureParameters(p,e),e.isArrayTexture||e.isDataArrayTexture||e.isCompressedArrayTexture?s.texStorage3D(s.TEXTURE_2D_ARRAY,n,h,r,a,c):e.isData3DTexture?s.texStorage3D(s.TEXTURE_3D,n,h,r,a,c):e.isVideoTexture||s.texStorage2D(p,n,h,r,a),i.set(e,{textureGPU:d,glTextureType:p,glFormat:l,glType:u,glInternalFormat:h})}copyBufferToTexture(e,t){let{gl:s,backend:i}=this,{textureGPU:n,glTextureType:r,glFormat:a,glType:c}=i.get(t),{width:l,height:u}=t.source.data;s.bindBuffer(s.PIXEL_UNPACK_BUFFER,e),i.state.bindTexture(r,n),s.pixelStorei(s.UNPACK_FLIP_Y_WEBGL,!1),s.pixelStorei(s.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1),s.texSubImage2D(r,0,0,0,l,u,a,c,0),s.bindBuffer(s.PIXEL_UNPACK_BUFFER,null),i.state.unbindTexture()}updateTexture(e,t){let{gl:s}=this,{width:i,height:n}=t,{textureGPU:r,glTextureType:a,glFormat:c,glType:l,glInternalFormat:u}=this.backend.get(e);if(!(e.isRenderTargetTexture||r===void 0))if(this.backend.state.bindTexture(a,r),this.setTextureParameters(a,e),e.isCompressedTexture){let h=e.mipmaps,d=t.image;for(let p=0;p0){let d=Cb(h.width,h.height,e.format,e.type);for(let p of e.layerUpdates){let m=h.data.subarray(p*d/h.data.BYTES_PER_ELEMENT,(p+1)*d/h.data.BYTES_PER_ELEMENT);s.texSubImage3D(s.TEXTURE_2D_ARRAY,0,0,0,p,h.width,h.height,1,c,l,m)}e.clearLayerUpdates()}else s.texSubImage3D(s.TEXTURE_2D_ARRAY,0,0,0,0,h.width,h.height,h.depth,c,l,h.data)}else if(e.isData3DTexture){let h=t.image;s.texSubImage3D(s.TEXTURE_3D,0,0,0,0,h.width,h.height,h.depth,c,l,h.data)}else if(e.isVideoTexture)e.update(),s.texImage2D(a,0,u,c,l,t.image);else{let h=e.mipmaps;if(h.length>0)for(let d=0,p=h.length;d0,d=t.renderTarget?t.renderTarget.height:this.backend.getDrawingBufferSize().y;if(h){let p=a!==0||c!==0,m,g;if(e.isDepthTexture===!0?(m=i.DEPTH_BUFFER_BIT,g=i.DEPTH_ATTACHMENT,t.stencil&&(m|=i.STENCIL_BUFFER_BIT)):(m=i.COLOR_BUFFER_BIT,g=i.COLOR_ATTACHMENT0),p){let y=this.backend.get(t.renderTarget),x=y.framebuffers[t.getCacheKey()],_=y.msaaFrameBuffer;n.bindFramebuffer(i.DRAW_FRAMEBUFFER,x),n.bindFramebuffer(i.READ_FRAMEBUFFER,_);let w=d-c-u;i.blitFramebuffer(a,w,a+l,w+u,a,w,a+l,w+u,m,i.NEAREST),n.bindFramebuffer(i.READ_FRAMEBUFFER,x),n.bindTexture(i.TEXTURE_2D,r),i.copyTexSubImage2D(i.TEXTURE_2D,0,0,0,a,w,l,u),n.unbindTexture()}else{let y=i.createFramebuffer();n.bindFramebuffer(i.DRAW_FRAMEBUFFER,y),i.framebufferTexture2D(i.DRAW_FRAMEBUFFER,g,i.TEXTURE_2D,r,0),i.blitFramebuffer(0,0,l,u,0,0,l,u,m,i.NEAREST),i.deleteFramebuffer(y)}}else n.bindTexture(i.TEXTURE_2D,r),i.copyTexSubImage2D(i.TEXTURE_2D,0,0,0,a,d-u-c,l,u),n.unbindTexture();e.generateMipmaps&&this.generateMipmaps(e),this.backend._setFramebuffer(t)}setupRenderBufferStorage(e,t,s,i=!1){let{gl:n}=this,r=t.renderTarget,{depthTexture:a,depthBuffer:c,stencilBuffer:l,width:u,height:h}=r;if(n.bindRenderbuffer(n.RENDERBUFFER,e),c&&!l){let d=n.DEPTH_COMPONENT24;i===!0?this.extensions.get("WEBGL_multisampled_render_to_texture").renderbufferStorageMultisampleEXT(n.RENDERBUFFER,r.samples,d,u,h):s>0?(a&&a.isDepthTexture&&a.type===n.FLOAT&&(d=n.DEPTH_COMPONENT32F),n.renderbufferStorageMultisample(n.RENDERBUFFER,s,d,u,h)):n.renderbufferStorage(n.RENDERBUFFER,d,u,h),n.framebufferRenderbuffer(n.FRAMEBUFFER,n.DEPTH_ATTACHMENT,n.RENDERBUFFER,e)}else c&&l&&(s>0?n.renderbufferStorageMultisample(n.RENDERBUFFER,s,n.DEPTH24_STENCIL8,u,h):n.renderbufferStorage(n.RENDERBUFFER,n.DEPTH_STENCIL,u,h),n.framebufferRenderbuffer(n.FRAMEBUFFER,n.DEPTH_STENCIL_ATTACHMENT,n.RENDERBUFFER,e));n.bindRenderbuffer(n.RENDERBUFFER,null)}async copyTextureToBuffer(e,t,s,i,n,r){let{backend:a,gl:c}=this,{textureGPU:l,glFormat:u,glType:h}=this.backend.get(e),d=c.createFramebuffer();a.state.bindFramebuffer(c.READ_FRAMEBUFFER,d);let p=e.isCubeTexture?c.TEXTURE_CUBE_MAP_POSITIVE_X+r:c.TEXTURE_2D;c.framebufferTexture2D(c.READ_FRAMEBUFFER,c.COLOR_ATTACHMENT0,p,l,0);let m=this._getTypedArrayType(h),g=this._getBytesPerTexel(h,u),x=i*n*g,_=c.createBuffer();c.bindBuffer(c.PIXEL_PACK_BUFFER,_),c.bufferData(c.PIXEL_PACK_BUFFER,x,c.STREAM_READ),c.readPixels(t,s,i,n,u,h,0),c.bindBuffer(c.PIXEL_PACK_BUFFER,null),await a.utils._clientWaitAsync();let w=new m(x/m.BYTES_PER_ELEMENT);return c.bindBuffer(c.PIXEL_PACK_BUFFER,_),c.getBufferSubData(c.PIXEL_PACK_BUFFER,0,w),c.bindBuffer(c.PIXEL_PACK_BUFFER,null),a.state.bindFramebuffer(c.READ_FRAMEBUFFER,null),c.deleteFramebuffer(d),w}_getTypedArrayType(e){let{gl:t}=this;if(e===t.UNSIGNED_BYTE)return Uint8Array;if(e===t.UNSIGNED_SHORT_4_4_4_4||e===t.UNSIGNED_SHORT_5_5_5_1||e===t.UNSIGNED_SHORT_5_6_5||e===t.UNSIGNED_SHORT)return Uint16Array;if(e===t.UNSIGNED_INT)return Uint32Array;if(e===t.HALF_FLOAT)return Uint16Array;if(e===t.FLOAT)return Float32Array;throw new Error(`Unsupported WebGL type: ${e}`)}_getBytesPerTexel(e,t){let{gl:s}=this,i=0;if(e===s.UNSIGNED_BYTE&&(i=1),(e===s.UNSIGNED_SHORT_4_4_4_4||e===s.UNSIGNED_SHORT_5_5_5_1||e===s.UNSIGNED_SHORT_5_6_5||e===s.UNSIGNED_SHORT||e===s.HALF_FLOAT)&&(i=2),(e===s.UNSIGNED_INT||e===s.FLOAT)&&(i=4),t===s.RGBA)return i*4;if(t===s.RGB)return i*3;if(t===s.ALPHA)return i}dispose(){let{gl:e}=this;this._srcFramebuffer!==null&&e.deleteFramebuffer(this._srcFramebuffer),this._dstFramebuffer!==null&&e.deleteFramebuffer(this._dstFramebuffer)}};function zu(o){return o.isDataTexture?o.image.data:typeof HTMLImageElement<"u"&&o instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&o instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&o instanceof ImageBitmap||typeof OffscreenCanvas<"u"&&o instanceof OffscreenCanvas?o:o.data}var vy=class{constructor(e){this.backend=e,this.gl=this.backend.gl,this.availableExtensions=this.gl.getSupportedExtensions(),this.extensions={}}get(e){let t=this.extensions[e];return t===void 0&&(t=this.gl.getExtension(e),this.extensions[e]=t),t}has(e){return this.availableExtensions.includes(e)}},wy=class{constructor(e){this.backend=e,this.maxAnisotropy=null}getMaxAnisotropy(){if(this.maxAnisotropy!==null)return this.maxAnisotropy;let e=this.backend.gl,t=this.backend.extensions;if(t.has("EXT_texture_filter_anisotropic")===!0){let s=t.get("EXT_texture_filter_anisotropic");this.maxAnisotropy=e.getParameter(s.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else this.maxAnisotropy=0;return this.maxAnisotropy}},U_={WEBGL_multi_draw:"WEBGL_multi_draw",WEBGL_compressed_texture_astc:"texture-compression-astc",WEBGL_compressed_texture_etc:"texture-compression-etc2",WEBGL_compressed_texture_etc1:"texture-compression-etc1",WEBGL_compressed_texture_pvrtc:"texture-compression-pvrtc",WEBGL_compressed_texture_s3tc:"texture-compression-s3tc",EXT_texture_compression_bptc:"texture-compression-bc",EXT_disjoint_timer_query_webgl2:"timestamp-query",OVR_multiview2:"OVR_multiview2"},My=class{constructor(e){this.gl=e.gl,this.extensions=e.extensions,this.info=e.renderer.info,this.mode=null,this.index=0,this.type=null,this.object=null}render(e,t){let{gl:s,mode:i,object:n,type:r,info:a,index:c}=this;c!==0?s.drawElements(i,t,r,e):s.drawArrays(i,e,t),a.update(n,t,1)}renderInstances(e,t,s){let{gl:i,mode:n,type:r,index:a,object:c,info:l}=this;s!==0&&(a!==0?i.drawElementsInstanced(n,t,r,e,s):i.drawArraysInstanced(n,e,t,s),l.update(c,t,s))}renderMultiDraw(e,t,s){let{extensions:i,mode:n,object:r,info:a}=this;if(s===0)return;let c=i.get("WEBGL_multi_draw");if(c===null)for(let l=0;lthis.maxQueries)return _e(`WebGPUTimestampQueryPool [${this.type}]: Maximum number of queries exceeded, when using trackTimestamp it is necessary to resolves the queries via renderer.resolveTimestampsAsync( THREE.TimestampQuery.${this.type.toUpperCase()} ).`),null;let t=this.currentQueryIndex;return this.currentQueryIndex+=2,this.queryStates.set(t,"inactive"),this.queryOffsets.set(e,t),t}beginQuery(e){if(!this.trackTimestamp||this.isDisposed)return;let t=this.queryOffsets.get(e);if(t==null||this.activeQuery!==null)return;let s=this.queries[t];if(s)try{this.queryStates.get(t)==="inactive"&&(this.gl.beginQuery(this.ext.TIME_ELAPSED_EXT,s),this.activeQuery=t,this.queryStates.set(t,"started"))}catch(i){O("Error in beginQuery:",i),this.activeQuery=null,this.queryStates.set(t,"inactive")}}endQuery(e){if(!this.trackTimestamp||this.isDisposed)return;let t=this.queryOffsets.get(e);if(t!=null&&this.activeQuery===t)try{this.gl.endQuery(this.ext.TIME_ELAPSED_EXT),this.queryStates.set(t,"ended"),this.activeQuery=null}catch(s){O("Error in endQuery:",s),this.queryStates.set(t,"inactive"),this.activeQuery=null}}async resolveQueriesAsync(){if(!this.trackTimestamp||this.pendingResolve)return this.lastValue;this.pendingResolve=!0;try{let e=new Map;for(let[n,r]of this.queryOffsets)if(this.queryStates.get(r)==="ended"){let c=this.queries[r];e.set(n,this.resolveQuery(c))}if(e.size===0)return this.lastValue;let t={},s=[];for(let[n,r]of e){let a=n.match(/^(.*):f(\d+)$/),c=parseInt(a[2]);s.includes(c)===!1&&s.push(c),t[c]===void 0&&(t[c]=0);let l=await r;this.timestamps.set(n,l),t[c]+=l}let i=t[s[s.length-1]];return this.lastValue=i,this.frames=s,this.currentQueryIndex=0,this.queryOffsets.clear(),this.queryStates.clear(),this.activeQuery=null,i}catch(e){return O("Error resolving queries:",e),this.lastValue}finally{this.pendingResolve=!1}}async resolveQuery(e){return new Promise(t=>{if(this.isDisposed){t(this.lastValue);return}let s,i=!1,n=()=>{s&&(clearTimeout(s),s=null)},r=c=>{i||(i=!0,n(),t(c))},a=()=>{if(this.isDisposed){r(this.lastValue);return}try{if(this.gl.getParameter(this.ext.GPU_DISJOINT_EXT)){r(this.lastValue);return}if(!this.gl.getQueryParameter(e,this.gl.QUERY_RESULT_AVAILABLE)){s=setTimeout(a,1);return}let u=this.gl.getQueryParameter(e,this.gl.QUERY_RESULT);t(Number(u)/1e6)}catch(c){O("Error checking query:",c),t(this.lastValue)}};a()})}dispose(){if(!this.isDisposed&&(this.isDisposed=!0,!!this.trackTimestamp)){for(let e of this.queries)this.gl.deleteQuery(e);this.queries=[],this.queryStates.clear(),this.queryOffsets.clear(),this.lastValue=0,this.activeQuery=null}}},Jh=class extends jh{constructor(e={}){super(e),this.isWebGLBackend=!0,this.attributeUtils=null,this.extensions=null,this.capabilities=null,this.textureUtils=null,this.bufferRenderer=null,this.gl=null,this.state=null,this.utils=null,this.vaoCache={},this.transformFeedbackCache={},this.discard=!1,this.disjoint=null,this.parallel=null,this._currentContext=null,this._knownBindings=new WeakSet,this._supportsInvalidateFramebuffer=typeof navigator>"u"?!1:/OculusBrowser/g.test(navigator.userAgent),this._xrFramebuffer=null}init(e){super.init(e);let t=this.parameters,s={antialias:e.currentSamples>0,alpha:!0,depth:e.depth,stencil:e.stencil},i=t.context!==void 0?t.context:e.domElement.getContext("webgl2",s);function n(r){r.preventDefault();let a={api:"WebGL",message:r.statusMessage||"Unknown reason",reason:null,originalEvent:r};e.onDeviceLost(a)}this._onContextLost=n,e.domElement.addEventListener("webglcontextlost",n,!1),this.gl=i,this.extensions=new vy(this),this.capabilities=new wy(this),this.attributeUtils=new by(this),this.textureUtils=new Sy(this),this.bufferRenderer=new My(this),this.state=new _y(this),this.utils=new Ty(this),this.extensions.get("EXT_color_buffer_float"),this.extensions.get("WEBGL_clip_cull_distance"),this.extensions.get("OES_texture_float_linear"),this.extensions.get("EXT_color_buffer_half_float"),this.extensions.get("WEBGL_multisampled_render_to_texture"),this.extensions.get("WEBGL_render_shared_exponent"),this.extensions.get("WEBGL_multi_draw"),this.extensions.get("OVR_multiview2"),this.extensions.get("EXT_clip_control"),this.disjoint=this.extensions.get("EXT_disjoint_timer_query_webgl2"),this.parallel=this.extensions.get("KHR_parallel_shader_compile"),this.drawBuffersIndexedExt=this.extensions.get("OES_draw_buffers_indexed"),t.reversedDepthBuffer===!0&&this.extensions.has("EXT_clip_control")&&this.state.setReversedDepth(!0)}get coordinateSystem(){return Dt}async getArrayBufferAsync(e){return await this.attributeUtils.getArrayBufferAsync(e)}async makeXRCompatible(){this.gl.getContextAttributes().xrCompatible!==!0&&await this.gl.makeXRCompatible()}setXRTarget(e){this._xrFramebuffer=e}setXRRenderTargetTextures(e,t,s=null){let i=this.gl;if(this.set(e.texture,{textureGPU:t,glInternalFormat:i.RGBA8}),s!==null){let n=e.stencilBuffer?i.DEPTH24_STENCIL8:i.DEPTH_COMPONENT24;this.set(e.depthTexture,{textureGPU:s,glInternalFormat:n}),this.extensions.has("WEBGL_multisampled_render_to_texture")===!0&&e._autoAllocateDepthBuffer===!0&&e.multiview===!1&&z("WebGLBackend: Render-to-texture extension was disabled because an external texture was provided"),e._autoAllocateDepthBuffer=!1}}initTimestampQuery(e,t){if(!this.disjoint||!this.trackTimestamp)return;this.timestampQueryPool[e]||(this.timestampQueryPool[e]=new Ay(this.gl,e,2048));let s=this.timestampQueryPool[e];s.allocateQueriesForContext(t)!==null&&s.beginQuery(t)}prepareTimestampBuffer(e,t){if(!this.disjoint||!this.trackTimestamp)return;this.timestampQueryPool[e].endQuery(t)}getContext(){return this.gl}beginRender(e){let{state:t}=this,s=this.get(e);if(e.viewport)this.updateViewport(e);else{let{width:n,height:r}=this.getDrawingBufferSize();t.viewport(0,0,n,r)}if(e.scissor)this.updateScissor(e);else{let{width:n,height:r}=this.getDrawingBufferSize();t.scissor(0,0,n,r)}this.initTimestampQuery(As.RENDER,this.getTimestampUID(e)),s.previousContext=this._currentContext,this._currentContext=e,this._setFramebuffer(e),this.clear(e.clearColor,e.clearDepth,e.clearStencil,e,!1);let i=e.occlusionQueryCount;i>0&&(s.currentOcclusionQueries=s.occlusionQueries,s.currentOcclusionQueryObjects=s.occlusionQueryObjects,s.lastOcclusionObject=null,s.occlusionQueries=new Array(i),s.occlusionQueryObjects=new Array(i),s.occlusionQueryIndex=0)}finishRender(e){let{gl:t,state:s}=this,i=this.get(e),n=i.previousContext;s.resetVertexState();let r=e.occlusionQueryCount;r>0&&(r>i.occlusionQueryIndex&&t.endQuery(t.ANY_SAMPLES_PASSED),this.resolveOccludedAsync(e));let a=e.textures;if(a!==null)for(let c=0;c{let c=0;for(let l=0;l{t.isBatchedMesh?t._multiDrawInstances!==null?(_e("WebGLBackend: renderMultiDrawInstances has been deprecated and will be removed in r184. Append to renderMultiDraw arguments and use indirection."),w.renderMultiDrawInstances(t._multiDrawStarts,t._multiDrawCounts,t._multiDrawCount,t._multiDrawInstances)):this.hasFeature("WEBGL_multi_draw")?w.renderMultiDraw(t._multiDrawStarts,t._multiDrawCounts,t._multiDrawCount):_e("WebGLBackend: WEBGL_multi_draw not supported."):E>1?w.renderInstances(B,S,E):w.render(B,S)};if(e.camera.isArrayCamera===!0&&e.camera.cameras.length>0&&e.camera.isMultiViewCamera===!1){let C=this.get(e.camera),I=e.camera.cameras,k=e.getBindingGroup("cameraIndex").bindings[0];if(C.indexesGPU===void 0||C.indexesGPU.length!==I.length){let ie=new Uint32Array([0,0,0,0]),Pe=[];for(let Se=0,ae=I.length;Se{let d=this.parallel,p=()=>{s.getProgramParameter(a,d.COMPLETION_STATUS_KHR)?(this._completeCompile(e,i),h()):requestAnimationFrame(p)};p()});t.push(u);return}this._completeCompile(e,i)}_handleSource(e,t){let s=e.split(` +`),i=[],n=Math.max(t-6,0),r=Math.min(t+6,s.length);for(let a=n;a":" "} ${c}: ${s[a]}`)}return i.join(` +`)}_getShaderErrors(e,t,s){let i=e.getShaderParameter(t,e.COMPILE_STATUS),r=(e.getShaderInfoLog(t)||"").trim();if(i&&r==="")return"";let a=/ERROR: 0:(\d+)/.exec(r);if(a){let c=parseInt(a[1]);return s.toUpperCase()+` + +`+r+` + +`+this._handleSource(e.getShaderSource(t),c)}else return r}_logProgramError(e,t,s){if(this.renderer.debug.checkShaderErrors){let i=this.gl,r=(i.getProgramInfoLog(e)||"").trim();if(i.getProgramParameter(e,i.LINK_STATUS)===!1)if(typeof this.renderer.debug.onShaderError=="function")this.renderer.debug.onShaderError(i,e,s,t);else{let a=this._getShaderErrors(i,s,"vertex"),c=this._getShaderErrors(i,t,"fragment");O("THREE.WebGLProgram: Shader Error "+i.getError()+" - VALIDATE_STATUS "+i.getProgramParameter(e,i.VALIDATE_STATUS)+` + +Program Info Log: `+r+` +`+a+` +`+c)}else r!==""&&z("WebGLProgram: Program Info Log:",r)}}_completeCompile(e,t){let{state:s,gl:i}=this,n=this.get(t),{programGPU:r,fragmentShader:a,vertexShader:c}=n;i.getProgramParameter(r,i.LINK_STATUS)===!1&&this._logProgramError(r,a,c),s.useProgram(r);let l=e.getBindings();this._setupBindings(l,r),this.set(t,{programGPU:r})}createComputePipeline(e,t){let{state:s,gl:i}=this,n={stage:"fragment",code:`#version 300 es +precision highp float; +void main() {}`};this.createProgram(n);let{computeProgram:r}=e,a=i.createProgram(),c=this.get(n).shaderGPU,l=this.get(r).shaderGPU,u=r.transforms,h=[],d=[];for(let y=0;yU_[i]===e),s=this.extensions;for(let i=0;i1,p=n.isXRRenderTarget===!0,m=p===!0&&n._hasExternalTextures===!0,g=r.msaaFrameBuffer,y=r.depthRenderbuffer,x=this.extensions.get("WEBGL_multisampled_render_to_texture"),_=this.extensions.get("OVR_multiview2"),w=this._useMultisampledExtension(n),S=sw(e),E;if(u?(r.cubeFramebuffers||(r.cubeFramebuffers={}),E=r.cubeFramebuffers[S]):p&&m===!1?E=this._xrFramebuffer:(r.framebuffers||(r.framebuffers={}),E=r.framebuffers[S]),E===void 0){E=t.createFramebuffer(),s.bindFramebuffer(t.FRAMEBUFFER,E);let B=e.textures,N=[];if(u){r.cubeFramebuffers[S]=E;let{textureGPU:I}=this.get(B[0]),k=this.renderer._activeCubeFace,W=this.renderer._activeMipmapLevel;t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_CUBE_MAP_POSITIVE_X+k,I,W)}else{r.framebuffers[S]=E;for(let I=0;I0&&w===!1&&!n.multiview){if(g===void 0){let B=[];g=t.createFramebuffer(),s.bindFramebuffer(t.FRAMEBUFFER,g);let N=[],C=e.textures;for(let I=0;I0&&this._useMultisampledExtension(i)===!1){let r=n.framebuffers[e.getCacheKey()],a=t.COLOR_BUFFER_BIT;i.resolveDepthBuffer&&(i.depthBuffer&&(a|=t.DEPTH_BUFFER_BIT),i.stencilBuffer&&i.resolveStencilBuffer&&(a|=t.STENCIL_BUFFER_BIT));let c=n.msaaFrameBuffer,l=n.msaaRenderbuffers,u=e.textures,h=u.length>1;if(s.bindFramebuffer(t.READ_FRAMEBUFFER,c),s.bindFramebuffer(t.DRAW_FRAMEBUFFER,r),h)for(let d=0;d0&&this.extensions.has("WEBGL_multisampled_render_to_texture")===!0&&e._autoAllocateDepthBuffer!==!1}dispose(){this.textureUtils!==null&&this.textureUtils.dispose();let e=this.extensions.get("WEBGL_lose_context");e&&e.loseContext(),this.renderer.domElement.removeEventListener("webglcontextlost",this._onContextLost)}},Gu={PointList:"point-list",LineList:"line-list",LineStrip:"line-strip",TriangleList:"triangle-list"},ni=typeof self<"u"&&self.GPUShaderStage?self.GPUShaderStage:{VERTEX:1,FRAGMENT:2,COMPUTE:4},ht={Never:"never",Less:"less",Equal:"equal",LessEqual:"less-equal",Greater:"greater",NotEqual:"not-equal",GreaterEqual:"greater-equal",Always:"always"},Et={Store:"store"},ve={Load:"load",Clear:"clear"},O_={CCW:"ccw",CW:"cw"},V_={None:"none",Back:"back"},Qh={Uint16:"uint16",Uint32:"uint32"},M={R8Unorm:"r8unorm",R8Snorm:"r8snorm",R8Uint:"r8uint",R8Sint:"r8sint",R16Uint:"r16uint",R16Sint:"r16sint",R16Float:"r16float",RG8Unorm:"rg8unorm",RG8Snorm:"rg8snorm",RG8Uint:"rg8uint",RG8Sint:"rg8sint",R32Uint:"r32uint",R32Sint:"r32sint",R32Float:"r32float",RG16Uint:"rg16uint",RG16Sint:"rg16sint",RG16Float:"rg16float",RGBA8Unorm:"rgba8unorm",RGBA8UnormSRGB:"rgba8unorm-srgb",RGBA8Snorm:"rgba8snorm",RGBA8Uint:"rgba8uint",RGBA8Sint:"rgba8sint",BGRA8Unorm:"bgra8unorm",BGRA8UnormSRGB:"bgra8unorm-srgb",RGB9E5UFloat:"rgb9e5ufloat",RGB10A2Unorm:"rgb10a2unorm",RG11B10UFloat:"rg11b10ufloat",RG32Uint:"rg32uint",RG32Sint:"rg32sint",RG32Float:"rg32float",RGBA16Uint:"rgba16uint",RGBA16Sint:"rgba16sint",RGBA16Float:"rgba16float",RGBA32Uint:"rgba32uint",RGBA32Sint:"rgba32sint",RGBA32Float:"rgba32float",Depth16Unorm:"depth16unorm",Depth24Plus:"depth24plus",Depth24PlusStencil8:"depth24plus-stencil8",Depth32Float:"depth32float",Depth32FloatStencil8:"depth32float-stencil8",BC1RGBAUnorm:"bc1-rgba-unorm",BC1RGBAUnormSRGB:"bc1-rgba-unorm-srgb",BC2RGBAUnorm:"bc2-rgba-unorm",BC2RGBAUnormSRGB:"bc2-rgba-unorm-srgb",BC3RGBAUnorm:"bc3-rgba-unorm",BC3RGBAUnormSRGB:"bc3-rgba-unorm-srgb",BC4RUnorm:"bc4-r-unorm",BC4RSnorm:"bc4-r-snorm",BC5RGUnorm:"bc5-rg-unorm",BC5RGSnorm:"bc5-rg-snorm",BC6HRGBUFloat:"bc6h-rgb-ufloat",BC6HRGBFloat:"bc6h-rgb-float",BC7RGBAUnorm:"bc7-rgba-unorm",BC7RGBAUnormSRGB:"bc7-rgba-unorm-srgb",ETC2RGB8Unorm:"etc2-rgb8unorm",ETC2RGB8UnormSRGB:"etc2-rgb8unorm-srgb",ETC2RGB8A1Unorm:"etc2-rgb8a1unorm",ETC2RGB8A1UnormSRGB:"etc2-rgb8a1unorm-srgb",ETC2RGBA8Unorm:"etc2-rgba8unorm",ETC2RGBA8UnormSRGB:"etc2-rgba8unorm-srgb",EACR11Unorm:"eac-r11unorm",EACR11Snorm:"eac-r11snorm",EACRG11Unorm:"eac-rg11unorm",EACRG11Snorm:"eac-rg11snorm",ASTC4x4Unorm:"astc-4x4-unorm",ASTC4x4UnormSRGB:"astc-4x4-unorm-srgb",ASTC5x4Unorm:"astc-5x4-unorm",ASTC5x4UnormSRGB:"astc-5x4-unorm-srgb",ASTC5x5Unorm:"astc-5x5-unorm",ASTC5x5UnormSRGB:"astc-5x5-unorm-srgb",ASTC6x5Unorm:"astc-6x5-unorm",ASTC6x5UnormSRGB:"astc-6x5-unorm-srgb",ASTC6x6Unorm:"astc-6x6-unorm",ASTC6x6UnormSRGB:"astc-6x6-unorm-srgb",ASTC8x5Unorm:"astc-8x5-unorm",ASTC8x5UnormSRGB:"astc-8x5-unorm-srgb",ASTC8x6Unorm:"astc-8x6-unorm",ASTC8x6UnormSRGB:"astc-8x6-unorm-srgb",ASTC8x8Unorm:"astc-8x8-unorm",ASTC8x8UnormSRGB:"astc-8x8-unorm-srgb",ASTC10x5Unorm:"astc-10x5-unorm",ASTC10x5UnormSRGB:"astc-10x5-unorm-srgb",ASTC10x6Unorm:"astc-10x6-unorm",ASTC10x6UnormSRGB:"astc-10x6-unorm-srgb",ASTC10x8Unorm:"astc-10x8-unorm",ASTC10x8UnormSRGB:"astc-10x8-unorm-srgb",ASTC10x10Unorm:"astc-10x10-unorm",ASTC10x10UnormSRGB:"astc-10x10-unorm-srgb",ASTC12x10Unorm:"astc-12x10-unorm",ASTC12x10UnormSRGB:"astc-12x10-unorm-srgb",ASTC12x12Unorm:"astc-12x12-unorm",ASTC12x12UnormSRGB:"astc-12x12-unorm-srgb"},uf={ClampToEdge:"clamp-to-edge",Repeat:"repeat",MirrorRepeat:"mirror-repeat"},si={Linear:"linear",Nearest:"nearest"},pe={Zero:"zero",One:"one",Src:"src",OneMinusSrc:"one-minus-src",SrcAlpha:"src-alpha",OneMinusSrcAlpha:"one-minus-src-alpha",Dst:"dst",OneMinusDst:"one-minus-dst",DstAlpha:"dst-alpha",OneMinusDstAlpha:"one-minus-dst-alpha",SrcAlphaSaturated:"src-alpha-saturated",Constant:"constant",OneMinusConstant:"one-minus-constant"},Qn={Add:"add",Subtract:"subtract",ReverseSubtract:"reverse-subtract",Min:"min",Max:"max"},k_={None:0,All:15},an={Keep:"keep",Zero:"zero",Replace:"replace",Invert:"invert",IncrementClamp:"increment-clamp",DecrementClamp:"decrement-clamp",IncrementWrap:"increment-wrap",DecrementWrap:"decrement-wrap"},hf={Storage:"storage",ReadOnlyStorage:"read-only-storage"},df={WriteOnly:"write-only",ReadOnly:"read-only",ReadWrite:"read-write"},z_={NonFiltering:"non-filtering",Comparison:"comparison"},Kn={Float:"float",UnfilterableFloat:"unfilterable-float",Depth:"depth",SInt:"sint",UInt:"uint"},G_={TwoD:"2d",ThreeD:"3d"},Tt={TwoD:"2d",TwoDArray:"2d-array",Cube:"cube",ThreeD:"3d"},JF={All:"all"},Wu={Vertex:"vertex",Instance:"instance"},Ny={CoreFeaturesAndLimits:"core-features-and-limits",DepthClipControl:"depth-clip-control",Depth32FloatStencil8:"depth32float-stencil8",TextureCompressionBC:"texture-compression-bc",TextureCompressionBCSliced3D:"texture-compression-bc-sliced-3d",TextureCompressionETC2:"texture-compression-etc2",TextureCompressionASTC:"texture-compression-astc",TextureCompressionASTCSliced3D:"texture-compression-astc-sliced-3d",TimestampQuery:"timestamp-query",IndirectFirstInstance:"indirect-first-instance",ShaderF16:"shader-f16",RG11B10UFloat:"rg11b10ufloat-renderable",BGRA8UNormStorage:"bgra8unorm-storage",Float32Filterable:"float32-filterable",Float32Blendable:"float32-blendable",ClipDistances:"clip-distances",DualSourceBlending:"dual-source-blending",Subgroups:"subgroups",TextureFormatsTier1:"texture-formats-tier1",TextureFormatsTier2:"texture-formats-tier2"},W_={"texture-compression-s3tc":"texture-compression-bc","texture-compression-etc1":"texture-compression-etc2"},Ry=class extends Xh{constructor(e,t,s){super(e,t?t.value:null),this.textureNode=t,this.groupNode=s}update(){let{textureNode:e}=this;return this.texture!==e.value?(this.texture=e.value,!0):super.update()}},Cy=class extends Wh{constructor(e,t){super(e,t?t.array:null),this._attribute=t,this.isStorageBuffer=!0}get attribute(){return this._attribute}},QF=0,Ey=class extends Cy{constructor(e,t){super("StorageBuffer_"+QF++,e?e.value:null),this.nodeUniform=e,this.access=e?e.access:dt.READ_WRITE,this.groupNode=t}get attribute(){return this.nodeUniform.value}get buffer(){return this.nodeUniform.value.array}},By=class extends fi{constructor(e){super(),this.device=e;let t=` +struct VarysStruct { + @builtin( position ) Position: vec4f, + @location( 0 ) vTex : vec2f, + @location( 1 ) @interpolate(flat, either) vBaseArrayLayer: u32, +}; + +@group( 0 ) @binding ( 2 ) +var flipY: u32; + +@vertex +fn mainVS( + @builtin( vertex_index ) vertexIndex : u32, + @builtin( instance_index ) instanceIndex : u32 ) -> VarysStruct { + + var Varys : VarysStruct; + + var pos = array( + vec2f( -1, -1 ), + vec2f( -1, 3 ), + vec2f( 3, -1 ), + ); + + let p = pos[ vertexIndex ]; + let mult = select( vec2f( 0.5, -0.5 ), vec2f( 0.5, 0.5 ), flipY != 0 ); + Varys.vTex = p * mult + vec2f( 0.5 ); + Varys.Position = vec4f( p, 0, 1 ); + Varys.vBaseArrayLayer = instanceIndex; + + return Varys; + +} + +@group( 0 ) @binding( 0 ) +var imgSampler : sampler; + +@group( 0 ) @binding( 1 ) +var img2d : texture_2d; + +@fragment +fn main_2d( Varys: VarysStruct ) -> @location( 0 ) vec4 { + + return textureSample( img2d, imgSampler, Varys.vTex ); + +} + +@group( 0 ) @binding( 1 ) +var img2dArray : texture_2d_array; + +@fragment +fn main_2d_array( Varys: VarysStruct ) -> @location( 0 ) vec4 { + + return textureSample( img2dArray, imgSampler, Varys.vTex, Varys.vBaseArrayLayer ); + +} + +const faceMat = array( + mat3x3f( 0, 0, -2, 0, -2, 0, 1, 1, 1 ), // pos-x + mat3x3f( 0, 0, 2, 0, -2, 0, -1, 1, -1 ), // neg-x + mat3x3f( 2, 0, 0, 0, 0, 2, -1, 1, -1 ), // pos-y + mat3x3f( 2, 0, 0, 0, 0, -2, -1, -1, 1 ), // neg-y + mat3x3f( 2, 0, 0, 0, -2, 0, -1, 1, 1 ), // pos-z + mat3x3f( -2, 0, 0, 0, -2, 0, 1, 1, -1 ), // neg-z +); + +@group( 0 ) @binding( 1 ) +var imgCube : texture_cube; + +@fragment +fn main_cube( Varys: VarysStruct ) -> @location( 0 ) vec4 { + + return textureSample( imgCube, imgSampler, faceMat[ Varys.vBaseArrayLayer ] * vec3f( fract( Varys.vTex ), 1 ) ); + +} +`;this.mipmapSampler=e.createSampler({minFilter:si.Linear}),this.flipYSampler=e.createSampler({minFilter:si.Nearest}),this.flipUniformBuffer=e.createBuffer({size:4,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),e.queue.writeBuffer(this.flipUniformBuffer,0,new Uint32Array([1])),this.noFlipUniformBuffer=e.createBuffer({size:4,usage:GPUBufferUsage.UNIFORM}),this.transferPipelines={},this.mipmapShaderModule=e.createShaderModule({label:"mipmap",code:t})}getTransferPipeline(e,t){t=t||"2d-array";let s=`${e}-${t}`,i=this.transferPipelines[s];return i===void 0&&(i=this.device.createRenderPipeline({label:`mipmap-${e}-${t}`,vertex:{module:this.mipmapShaderModule},fragment:{module:this.mipmapShaderModule,entryPoint:`main_${t.replace("-","_")}`,targets:[{format:e}]},layout:"auto"}),this.transferPipelines[s]=i),i}flipY(e,t,s=0){let i=t.format,{width:n,height:r}=t.size,a=this.device.createTexture({size:{width:n,height:r},format:i,usage:GPUTextureUsage.RENDER_ATTACHMENT|GPUTextureUsage.TEXTURE_BINDING}),c=this.getTransferPipeline(i,e.textureBindingViewDimension),l=this.getTransferPipeline(i,a.textureBindingViewDimension),u=this.device.createCommandEncoder({}),h=(d,p,m,g,y,x)=>{let _=d.getBindGroupLayout(0),w=this.device.createBindGroup({layout:_,entries:[{binding:0,resource:this.flipYSampler},{binding:1,resource:p.createView({dimension:p.textureBindingViewDimension||"2d-array",baseMipLevel:0,mipLevelCount:1})},{binding:2,resource:{buffer:x?this.flipUniformBuffer:this.noFlipUniformBuffer}}]}),S=u.beginRenderPass({colorAttachments:[{view:g.createView({dimension:"2d",baseMipLevel:0,mipLevelCount:1,baseArrayLayer:y,arrayLayerCount:1}),loadOp:ve.Clear,storeOp:Et.Store}]});S.setPipeline(d),S.setBindGroup(0,w),S.draw(3,1,0,m),S.end()};h(c,e,s,a,0,!1),h(l,a,0,e,s,!0),this.device.queue.submit([u.finish()]),a.destroy()}generateMipmaps(e,t=null){let s=this.get(e),i=s.layers||this._mipmapCreateBundles(e),n=t||this.device.createCommandEncoder({label:"mipmapEncoder"});this._mipmapRunBundles(n,i),t===null&&this.device.queue.submit([n.finish()]),s.layers=i}_mipmapCreateBundles(e){let t=e.textureBindingViewDimension||"2d-array",s=this.getTransferPipeline(e.format,t),i=s.getBindGroupLayout(0),n=[];for(let r=1;r0)for(let r=0,a=i.length;r0)for(let r=0,a=i.length;r0?e.width:s.size.width,u=a>0?e.height:s.size.height;try{c.queue.copyExternalImageToTexture({source:e,flipY:n},{texture:t,mipLevel:a,origin:{x:0,y:0,z:i},premultipliedAlpha:r},{width:l,height:u,depthOrArrayLayers:1})}catch{}}_getPassUtils(){let e=this._passUtils;return e===null&&(this._passUtils=e=new By(this.backend.device)),e}_generateMipmaps(e,t=null){this._getPassUtils().generateMipmaps(e,t)}_flipY(e,t,s=0){this._getPassUtils().flipY(e,t,s)}_copyBufferToTexture(e,t,s,i,n,r=0,a=0){let c=this.backend.device,l=e.data,u=this._getBytesPerTexel(s.format),h=e.width*u;c.queue.writeTexture({texture:t,mipLevel:a,origin:{x:0,y:0,z:i}},l,{offset:e.width*e.height*u*r,bytesPerRow:h},{width:e.width,height:e.height,depthOrArrayLayers:1}),n===!0&&this._flipY(t,s,i)}_copyCompressedBufferToTexture(e,t,s){let i=this.backend.device,n=this._getBlockData(s.format),r=s.size.depthOrArrayLayers>1;for(let a=0;a]*\s*([a-z_0-9]+(?:<[\s\S]+?>)?)/i,sI=/([a-z_0-9]+)\s*:\s*([a-z_0-9]+(?:<[\s\S]+?>)?)/ig,$_={f32:"float",i32:"int",u32:"uint",bool:"bool","vec2":"vec2","vec2":"ivec2","vec2":"uvec2","vec2":"bvec2",vec2f:"vec2",vec2i:"ivec2",vec2u:"uvec2",vec2b:"bvec2","vec3":"vec3","vec3":"ivec3","vec3":"uvec3","vec3":"bvec3",vec3f:"vec3",vec3i:"ivec3",vec3u:"uvec3",vec3b:"bvec3","vec4":"vec4","vec4":"ivec4","vec4":"uvec4","vec4":"bvec4",vec4f:"vec4",vec4i:"ivec4",vec4u:"uvec4",vec4b:"bvec4","mat2x2":"mat2",mat2x2f:"mat2","mat3x3":"mat3",mat3x3f:"mat3","mat4x4":"mat4",mat4x4f:"mat4",sampler:"sampler",texture_1d:"texture",texture_2d:"texture",texture_2d_array:"texture",texture_multisampled_2d:"cubeTexture",texture_depth_2d:"depthTexture",texture_depth_2d_array:"depthTexture",texture_depth_multisampled_2d:"depthTexture",texture_depth_cube:"depthTexture",texture_depth_cube_array:"depthTexture",texture_3d:"texture3D",texture_cube:"cubeTexture",texture_cube_array:"cubeTexture",texture_storage_1d:"storageTexture",texture_storage_2d:"storageTexture",texture_storage_2d_array:"storageTexture",texture_storage_3d:"storageTexture"},iI=o=>{o=o.trim();let e=o.match(tI);if(e!==null&&e.length===4){let t=e[2],s=[],i=null;for(;(i=sI.exec(t))!==null;)s.push({name:i[1],type:i[2]});let n=[];for(let u=0;u "+this.outputType:"";return`fn ${e} ( ${this.inputsCode.trim()} ) ${t}`+this.blockCode}},Dy=class extends Vh{parseFunction(e){return new Py(e)}},nI={[dt.READ_ONLY]:"read",[dt.WRITE_ONLY]:"write",[dt.READ_WRITE]:"read_write"},q_={[Pn]:"repeat",[bs]:"clamp",[Dn]:"mirror"},pf={vertex:ni.VERTEX,fragment:ni.FRAGMENT,compute:ni.COMPUTE},H_={instance:!0,swizzleAssign:!1,storageBuffer:!0},rI={"^^":"tsl_xor"},oI={float:"f32",int:"i32",uint:"u32",bool:"bool",color:"vec3",vec2:"vec2",ivec2:"vec2",uvec2:"vec2",bvec2:"vec2",vec3:"vec3",ivec3:"vec3",uvec3:"vec3",bvec3:"vec3",vec4:"vec4",ivec4:"vec4",uvec4:"vec4",bvec4:"vec4",mat2:"mat2x2",mat3:"mat3x3",mat4:"mat4x4"},X_={},Ka={tsl_xor:new He("fn tsl_xor( a : bool, b : bool ) -> bool { return ( a || b ) && !( a && b ); }"),mod_float:new He("fn tsl_mod_float( x : f32, y : f32 ) -> f32 { return x - y * floor( x / y ); }"),mod_vec2:new He("fn tsl_mod_vec2( x : vec2f, y : vec2f ) -> vec2f { return x - y * floor( x / y ); }"),mod_vec3:new He("fn tsl_mod_vec3( x : vec3f, y : vec3f ) -> vec3f { return x - y * floor( x / y ); }"),mod_vec4:new He("fn tsl_mod_vec4( x : vec4f, y : vec4f ) -> vec4f { return x - y * floor( x / y ); }"),equals_bool:new He("fn tsl_equals_bool( a : bool, b : bool ) -> bool { return a == b; }"),equals_bvec2:new He("fn tsl_equals_bvec2( a : vec2f, b : vec2f ) -> vec2 { return vec2( a.x == b.x, a.y == b.y ); }"),equals_bvec3:new He("fn tsl_equals_bvec3( a : vec3f, b : vec3f ) -> vec3 { return vec3( a.x == b.x, a.y == b.y, a.z == b.z ); }"),equals_bvec4:new He("fn tsl_equals_bvec4( a : vec4f, b : vec4f ) -> vec4 { return vec4( a.x == b.x, a.y == b.y, a.z == b.z, a.w == b.w ); }"),repeatWrapping_float:new He("fn tsl_repeatWrapping_float( coord: f32 ) -> f32 { return fract( coord ); }"),mirrorWrapping_float:new He("fn tsl_mirrorWrapping_float( coord: f32 ) -> f32 { let mirrored = fract( coord * 0.5 ) * 2.0; return 1.0 - abs( 1.0 - mirrored ); }"),clampWrapping_float:new He("fn tsl_clampWrapping_float( coord: f32 ) -> f32 { return clamp( coord, 0.0, 1.0 ); }"),biquadraticTexture:new He(` +fn tsl_biquadraticTexture( map : texture_2d, coord : vec2f, iRes : vec2u, level : u32 ) -> vec4f { + + let res = vec2f( iRes ); + + let uvScaled = coord * res; + let uvWrapping = ( ( uvScaled % res ) + res ) % res; + + // https://www.shadertoy.com/view/WtyXRy + + let uv = uvWrapping - 0.5; + let iuv = floor( uv ); + let f = fract( uv ); + + let rg1 = textureLoad( map, vec2u( iuv + vec2( 0.5, 0.5 ) ) % iRes, level ); + let rg2 = textureLoad( map, vec2u( iuv + vec2( 1.5, 0.5 ) ) % iRes, level ); + let rg3 = textureLoad( map, vec2u( iuv + vec2( 0.5, 1.5 ) ) % iRes, level ); + let rg4 = textureLoad( map, vec2u( iuv + vec2( 1.5, 1.5 ) ) % iRes, level ); + + return mix( mix( rg1, rg2, f.x ), mix( rg3, rg4, f.x ), f.y ); + +} +`),biquadraticTextureArray:new He(` +fn tsl_biquadraticTexture_array( map : texture_2d_array, coord : vec2f, iRes : vec2u, layer : u32, level : u32 ) -> vec4f { + + let res = vec2f( iRes ); + + let uvScaled = coord * res; + let uvWrapping = ( ( uvScaled % res ) + res ) % res; + + // https://www.shadertoy.com/view/WtyXRy + + let uv = uvWrapping - 0.5; + let iuv = floor( uv ); + let f = fract( uv ); + + let rg1 = textureLoad( map, vec2u( iuv + vec2( 0.5, 0.5 ) ) % iRes, layer, level ); + let rg2 = textureLoad( map, vec2u( iuv + vec2( 1.5, 0.5 ) ) % iRes, layer, level ); + let rg3 = textureLoad( map, vec2u( iuv + vec2( 0.5, 1.5 ) ) % iRes, layer, level ); + let rg4 = textureLoad( map, vec2u( iuv + vec2( 1.5, 1.5 ) ) % iRes, layer, level ); + + return mix( mix( rg1, rg2, f.x ), mix( rg3, rg4, f.x ), f.y ); + +} +`)},aI={dFdx:"dpdx",dFdy:"- dpdy",mod_float:"tsl_mod_float",mod_vec2:"tsl_mod_vec2",mod_vec3:"tsl_mod_vec3",mod_vec4:"tsl_mod_vec4",equals_bool:"tsl_equals_bool",equals_bvec2:"tsl_equals_bvec2",equals_bvec3:"tsl_equals_bvec3",equals_bvec4:"tsl_equals_bvec4",inversesqrt:"inverseSqrt",bitcast:"bitcast",floatpack_snorm_2x16:"pack2x16snorm",floatpack_unorm_2x16:"pack2x16unorm",floatpack_float16_2x16:"pack2x16float",floatunpack_snorm_2x16:"unpack2x16snorm",floatunpack_unorm_2x16:"unpack2x16unorm",floatunpack_float16_2x16:"unpack2x16float"},Qw="";(typeof navigator<"u"&&/Firefox|Deno/g.test(navigator.userAgent))!==!0&&(Qw+=`diagnostic( off, derivative_uniformity ); +`);var Ly=class extends Uh{constructor(e,t){super(e,t,new Dy),this.uniformGroups={},this.uniformGroupsBindings={},this.builtins={},this.directives={},this.scopedArrays=new Map}_generateTextureSample(e,t,s,i,n,r=this.shaderStage){return r==="fragment"?i?n?`textureSample( ${t}, ${t}_sampler, ${s}, ${i}, ${n} )`:`textureSample( ${t}, ${t}_sampler, ${s}, ${i} )`:n?`textureSample( ${t}, ${t}_sampler, ${s}, ${n} )`:`textureSample( ${t}, ${t}_sampler, ${s} )`:this.generateTextureSampleLevel(e,t,s,"0",i)}generateTextureSampleLevel(e,t,s,i,n,r){return this.isUnfilterable(e)===!1?n?r?`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${n}, ${i}, ${r} )`:`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${n}, ${i} )`:r?`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${i}, ${r} )`:`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${i} )`:this.isFilteredTexture(e)?this.generateFilteredTexture(e,t,s,r,i,n):this.generateTextureLod(e,t,s,n,r,i)}generateWrapFunction(e){let t=`tsl_coord_${q_[e.wrapS]}S_${q_[e.wrapT]}_${e.is3DTexture||e.isData3DTexture?"3d":"2d"}T`,s=X_[t];if(s===void 0){let i=[],n=e.is3DTexture||e.isData3DTexture?"vec3f":"vec2f",r=`fn ${t}( coord : ${n} ) -> ${n} { + + return ${n}( +`,a=(c,l)=>{c===Pn?(i.push(Ka.repeatWrapping_float),r+=` tsl_repeatWrapping_float( coord.${l} )`):c===bs?(i.push(Ka.clampWrapping_float),r+=` tsl_clampWrapping_float( coord.${l} )`):c===Dn?(i.push(Ka.mirrorWrapping_float),r+=` tsl_mirrorWrapping_float( coord.${l} )`):(r+=` coord.${l}`,z(`WebGPURenderer: Unsupported texture wrap type "${c}" for vertex shader.`))};a(e.wrapS,"x"),r+=`, +`,a(e.wrapT,"y"),(e.is3DTexture||e.isData3DTexture)&&(r+=`, +`,a(e.wrapR,"z")),r+=` + ); + +} +`,X_[t]=s=new He(r,i)}return s.build(this),t}generateArrayDeclaration(e,t){return`array< ${this.getType(e)}, ${t} >`}generateTextureDimension(e,t,s){let i=this.getDataFromNode(e,this.shaderStage,this.globalCache);i.dimensionsSnippet===void 0&&(i.dimensionsSnippet={});let n=i.dimensionsSnippet[s];if(i.dimensionsSnippet[s]===void 0){let r,a,{primarySamples:c}=this.renderer.backend.utils.getTextureSampleData(e),l=c>1;e.is3DTexture||e.isData3DTexture?a="vec3":a="vec2",l||e.isStorageTexture?r=t:r=`${t}${s?`, u32( ${s} )`:""}`,n=new mo(new yo(`textureDimensions( ${r} )`,a)),i.dimensionsSnippet[s]=n,(e.isArrayTexture||e.isDataArrayTexture||e.is3DTexture||e.isData3DTexture)&&(i.arrayLayerCount=new mo(new yo(`textureNumLayers(${t})`,"u32"))),e.isTextureCube&&(i.cubeFaceCount=new mo(new yo("6u","u32")))}return n.build(this)}generateFilteredTexture(e,t,s,i,n="0u",r){let a=this.generateWrapFunction(e),c=this.generateTextureDimension(e,t,n);return i&&(s=`${s} + vec2(${i}) / ${c}`),r?(this._include("biquadraticTextureArray"),`tsl_biquadraticTexture_array( ${t}, ${a}( ${s} ), ${c}, u32( ${r} ), u32( ${n} ) )`):(this._include("biquadraticTexture"),`tsl_biquadraticTexture( ${t}, ${a}( ${s} ), ${c}, u32( ${n} ) )`)}generateTextureLod(e,t,s,i,n,r="0u"){if(e.isCubeTexture===!0){n&&(s=`${s} + vec3(${n})`);let p=e.isDepthTexture?"u32":"f32";return`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${p}( ${r} ) )`}let a=this.generateWrapFunction(e),c=this.generateTextureDimension(e,t,r),l=e.is3DTexture||e.isData3DTexture?"vec3":"vec2",u=l==="vec3"?"vec3( 1, 1, 1 )":"vec2( 1, 1 )";n&&(s=`${s} + ${l}(${n}) / ${l}( ${c} )`);let h=`${l}( 0 )`,d=`${l}( ${c} - ${u} )`;return s=`${l}( clamp( floor( ${a}( ${s} ) * ${l}( ${c} ) ), ${h}, ${d} ) )`,this.generateTextureLoad(e,t,s,r,i,null)}generateStorageTextureLoad(e,t,s,i,n,r){r&&(s=`${s} + ${r}`);let a;return n?a=`textureLoad( ${t}, ${s}, ${n} )`:a=`textureLoad( ${t}, ${s} )`,a}generateTextureLoad(e,t,s,i,n,r){i===null&&(i="0u"),r&&(s=`${s} + ${r}`);let a;return n?a=`textureLoad( ${t}, ${s}, ${n}, u32( ${i} ) )`:(a=`textureLoad( ${t}, ${s}, u32( ${i} ) )`,this.renderer.backend.compatibilityMode&&e.isDepthTexture&&(a+=".x")),a}generateTextureStore(e,t,s,i,n){let r;return i?r=`textureStore( ${t}, ${s}, ${i}, ${n} )`:r=`textureStore( ${t}, ${s}, ${n} )`,r}isSampleCompare(e){return e.isDepthTexture===!0&&e.compareFunction!==null&&this.renderer.hasCompatibility(Ys.TEXTURE_COMPARE)}isUnfilterable(e){return this.getComponentTypeFromTexture(e)!=="float"||!this.isAvailable("float32Filterable")&&e.isDataTexture===!0&&e.type===Ct||this.isSampleCompare(e)===!1&&e.minFilter===Ue&&e.magFilter===Ue||this.renderer.backend.utils.getTextureSampleData(e).primarySamples>1}generateTexture(e,t,s,i,n,r=this.shaderStage){let a=null;return this.isUnfilterable(e)?a=this.generateTextureLod(e,t,s,i,n,"0",r):a=this._generateTextureSample(e,t,s,i,n,r),a}generateTextureGrad(e,t,s,i,n,r,a=this.shaderStage){if(a==="fragment")return n?r?`textureSampleGrad( ${t}, ${t}_sampler, ${s}, ${n}, ${i[0]}, ${i[1]}, ${r} )`:`textureSampleGrad( ${t}, ${t}_sampler, ${s}, ${n}, ${i[0]}, ${i[1]} )`:r?`textureSampleGrad( ${t}, ${t}_sampler, ${s}, ${i[0]}, ${i[1]}, ${r} )`:`textureSampleGrad( ${t}, ${t}_sampler, ${s}, ${i[0]}, ${i[1]} )`;O(`WebGPURenderer: THREE.TextureNode.gradient() does not support ${a} shader.`)}generateTextureCompare(e,t,s,i,n,r,a=this.shaderStage){if(a==="fragment")return e.isDepthTexture===!0&&e.isArrayTexture===!0?r?`textureSampleCompare( ${t}, ${t}_sampler, ${s}, ${n}, ${i}, ${r} )`:`textureSampleCompare( ${t}, ${t}_sampler, ${s}, ${n}, ${i} )`:r?`textureSampleCompare( ${t}, ${t}_sampler, ${s}, ${i}, ${r} )`:`textureSampleCompare( ${t}, ${t}_sampler, ${s}, ${i} )`;O(`WebGPURenderer: THREE.DepthTexture.compareFunction() does not support ${a} shader.`)}generateTextureLevel(e,t,s,i,n,r){return this.isUnfilterable(e)===!1?n?r?`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${n}, ${i}, ${r} )`:`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${n}, ${i} )`:r?`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${i}, ${r} )`:`textureSampleLevel( ${t}, ${t}_sampler, ${s}, ${i} )`:this.isFilteredTexture(e)?this.generateFilteredTexture(e,t,s,r,i,n):this.generateTextureLod(e,t,s,n,r,i)}generateTextureBias(e,t,s,i,n,r,a=this.shaderStage){if(a==="fragment")return n?r?`textureSampleBias( ${t}, ${t}_sampler, ${s}, ${n}, ${i}, ${r} )`:`textureSampleBias( ${t}, ${t}_sampler, ${s}, ${n}, ${i} )`:r?`textureSampleBias( ${t}, ${t}_sampler, ${s}, ${i}, ${r} )`:`textureSampleBias( ${t}, ${t}_sampler, ${s}, ${i} )`;O(`WebGPURenderer: THREE.TextureNode.biasNode does not support ${a} shader.`)}getPropertyName(e,t=this.shaderStage){if(e.isNodeVarying===!0&&e.needsInterpolation===!0){if(t==="vertex")return`varyings.${e.name}`}else if(e.isNodeUniform===!0){let s=e.name,i=e.type;return i==="texture"||i==="cubeTexture"||i==="cubeDepthTexture"||i==="storageTexture"||i==="texture3D"?s:i==="buffer"||i==="storageBuffer"||i==="indirectStorageBuffer"?this.isCustomStruct(e)?s:s+".value":e.groupNode.name+"."+s}return super.getPropertyName(e)}getOutputStructName(){return"output"}getFunctionOperator(e){let t=rI[e];return t!==void 0?(this._include(t),t):null}getNodeAccess(e,t){return t!=="compute"?e.isAtomic===!0?(z("WebGPURenderer: Atomic operations are only supported in compute shaders."),dt.READ_WRITE):dt.READ_ONLY:e.access}getStorageAccess(e,t){return nI[this.getNodeAccess(e,t)]}getUniformFromNode(e,t,s,i=null){let n=super.getUniformFromNode(e,t,s,i),r=this.getDataFromNode(e,s,this.globalCache);if(r.uniformGPU===void 0){let a,c=e.groupNode,l=c.name,u=this.getBindGroupArray(l,s);if(t==="texture"||t==="cubeTexture"||t==="cubeDepthTexture"||t==="storageTexture"||t==="texture3D"){let h=null,d=this.getNodeAccess(e,s);if(t==="texture"||t==="storageTexture"?e.value.is3DTexture===!0?h=new Cc(n.name,n.node,c,d):h=new No(n.name,n.node,c,d):t==="cubeTexture"||t==="cubeDepthTexture"?h=new Yh(n.name,n.node,c,d):t==="texture3D"&&(h=new Cc(n.name,n.node,c,d)),h.store=e.isStorageTextureNode===!0,h.mipLevel=h.store?e.mipLevel:0,h.setVisibility(pf[s]),e.value.isCubeTexture===!0||this.isUnfilterable(e.value)===!1&&h.store===!1){let m=new Ry(`${n.name}_sampler`,n.node,c);m.setVisibility(pf[s]),u.push(m,h),a=[m,h]}else u.push(h),a=[h]}else if(t==="buffer"||t==="storageBuffer"||t==="indirectStorageBuffer"){let h=this.getSharedDataFromNode(e),d=h.buffer;if(d===void 0){let p=t==="buffer"?qh:Ey;d=new p(e,c),h.buffer=d}d.setVisibility(d.getVisibility()|pf[s]),u.push(d),a=d,n.name=i||"NodeBuffer_"+n.id}else{let h=this.uniformGroups[l];h===void 0&&(h=new Hh(l,c),h.setVisibility(ni.VERTEX|ni.FRAGMENT|ni.COMPUTE),this.uniformGroups[l]=h),u.indexOf(h)===-1&&u.push(h),a=this.getNodeUniform(n,t);let d=a.name;h.uniforms.some(m=>m.name===d)||h.addUniform(a)}r.uniformGPU=a}return n}getBuiltin(e,t,s,i=this.shaderStage){let n=this.builtins[i]||(this.builtins[i]=new Map);return n.has(e)===!1&&n.set(e,{name:e,property:t,type:s}),t}hasBuiltin(e,t=this.shaderStage){return this.builtins[t]!==void 0&&this.builtins[t].has(e)}getVertexIndex(){return this.shaderStage==="vertex"?this.getBuiltin("vertex_index","vertexIndex","u32","attribute"):"vertexIndex"}buildFunctionCode(e){let t=e.layout,s=this.flowShaderNode(e),i=[];for(let r of t.inputs)i.push(r.name+" : "+this.getType(r.type));let n=`fn ${t.name}( ${i.join(", ")} ) -> ${this.getType(t.type)} { +${s.vars} +${s.code} +`;return s.result&&(n+=` return ${s.result}; +`),n+=` +} +`,n}getInstanceIndex(){return this.shaderStage==="vertex"?this.getBuiltin("instance_index","instanceIndex","u32","attribute"):"instanceIndex"}getInvocationLocalIndex(){return this.getBuiltin("local_invocation_index","invocationLocalIndex","u32","attribute")}getSubgroupSize(){return this.enableSubGroups(),this.getBuiltin("subgroup_size","subgroupSize","u32","attribute")}getInvocationSubgroupIndex(){return this.enableSubGroups(),this.getBuiltin("subgroup_invocation_id","invocationSubgroupIndex","u32","attribute")}getSubgroupIndex(){return this.enableSubGroups(),this.getBuiltin("subgroup_id","subgroupIndex","u32","attribute")}getDrawIndex(){return null}getFrontFacing(){return this.getBuiltin("front_facing","isFront","bool")}getFragCoord(){return this.getBuiltin("position","fragCoord","vec4")+".xy"}getFragDepth(){return"output."+this.getBuiltin("frag_depth","depth","f32","output")}getClipDistance(){return"varyings.hw_clip_distances"}isFlipY(){return!1}enableDirective(e,t=this.shaderStage){(this.directives[t]||(this.directives[t]=new Set)).add(e)}getDirectives(e){let t=[],s=this.directives[e];if(s!==void 0)for(let i of s)t.push(`enable ${i};`);return t.join(` +`)}enableSubGroups(){this.enableDirective("subgroups")}enableSubgroupsF16(){this.enableDirective("subgroups-f16")}enableClipDistances(){this.enableDirective("clip_distances")}enableShaderF16(){this.enableDirective("f16")}enableDualSourceBlending(){this.enableDirective("dual_source_blending")}enableHardwareClipping(e){this.enableClipDistances(),this.getBuiltin("clip_distances","hw_clip_distances",`array`,"vertex")}getBuiltins(e){let t=[],s=this.builtins[e];if(s!==void 0)for(let{name:i,property:n,type:r}of s.values())t.push(`@builtin( ${i} ) ${n} : ${r}`);return t.join(`, + `)}getScopedArray(e,t,s,i){return this.scopedArrays.has(e)===!1&&this.scopedArrays.set(e,{name:e,scope:t,bufferType:s,bufferCount:i}),e}getScopedArrays(e){if(e!=="compute")return;let t=[];for(let{name:s,scope:i,bufferType:n,bufferCount:r}of this.scopedArrays.values()){let a=this.getType(n);t.push(`var<${i}> ${s}: array< ${a}, ${r} >;`)}return t.join(` +`)}getAttributes(e){let t=[];if(e==="compute"&&(this.getBuiltin("global_invocation_id","globalId","vec3","attribute"),this.getBuiltin("workgroup_id","workgroupId","vec3","attribute"),this.getBuiltin("local_invocation_id","localId","vec3","attribute"),this.getBuiltin("num_workgroups","numWorkgroups","vec3","attribute"),this.renderer.hasFeature("subgroups")&&(this.enableDirective("subgroups",e),this.getBuiltin("subgroup_size","subgroupSize","u32","attribute"))),e==="vertex"||e==="compute"){let s=this.getBuiltins("attribute");s&&t.push(s);let i=this.getAttributesArray();for(let n=0,r=i.length;n"),t.push(` ${i+s.name} : ${n}`)}return e.output&&t.push(` ${this.getBuiltins("output")}`),t.join(`, +`)}getStructs(e){let t="",s=this.structs[e];if(s.length>0){let i=[];for(let n of s){let r=`struct ${n.name} { +`;r+=this.getStructMembers(n),r+=` +};`,i.push(r)}t=` +`+i.join(` + +`)+` +`}return t}getVar(e,t,s=null){let i=`var ${t} : `;return s!==null?i+=this.generateArrayDeclaration(e,s):i+=this.getType(e),i}getVars(e){let t=[],s=this.vars[e];if(s!==void 0)for(let i of s)t.push(` ${this.getVar(i.type,i.name,i.count)};`);return` +${t.join(` +`)} +`}getVaryings(e){let t=[];if(e==="vertex"&&this.getBuiltin("position","builtinClipSpace","vec4","vertex"),e==="vertex"||e==="fragment"){let n=this.varyings,r=this.vars[e];for(let a=0;as.value.itemSize;return i&&!n}getUniforms(e){let t=this.uniforms[e],s=[],i=[],n=[],r={};for(let c of t){let l=c.groupNode.name,u=this.bindingsIndexes[l];if(c.type==="texture"||c.type==="cubeTexture"||c.type==="cubeDepthTexture"||c.type==="storageTexture"||c.type==="texture3D"){let h=c.node.value;(h.isCubeTexture===!0||this.isUnfilterable(h)===!1&&c.node.isStorageTextureNode!==!0)&&(this.isSampleCompare(h)?s.push(`@binding( ${u.binding++} ) @group( ${u.group} ) var ${c.name}_sampler : sampler_comparison;`):s.push(`@binding( ${u.binding++} ) @group( ${u.group} ) var ${c.name}_sampler : sampler;`));let p,m="",{primarySamples:g}=this.renderer.backend.utils.getTextureSampleData(h);if(g>1&&(m="_multisampled"),h.isCubeTexture===!0&&h.isDepthTexture===!0)p="texture_depth_cube";else if(h.isCubeTexture===!0)p="texture_cube";else if(h.isDepthTexture===!0)this.renderer.backend.compatibilityMode&&h.compareFunction===null?p=`texture${m}_2d`:p=`texture_depth${m}_2d${h.isArrayTexture===!0?"_array":""}`;else if(c.node.isStorageTextureNode===!0){let y=Iy(h),x=this.getStorageAccess(c.node,e),_=c.node.value.is3DTexture,w=c.node.value.isArrayTexture;p=`texture_storage_${_?"3d":`2d${w?"_array":""}`}<${y}, ${x}>`}else if(h.isArrayTexture===!0||h.isDataArrayTexture===!0||h.isCompressedArrayTexture===!0)p="texture_2d_array";else if(h.is3DTexture===!0||h.isData3DTexture===!0)p="texture_3d";else{let y=this.getComponentTypeFromTexture(h).charAt(0);p=`texture${m}_2d<${y}32>`}s.push(`@binding( ${u.binding++} ) @group( ${u.group} ) var ${c.name} : ${p};`)}else if(c.type==="buffer"||c.type==="storageBuffer"||c.type==="indirectStorageBuffer"){let h=c.node,d=this.getType(h.getNodeType(this)),p=h.bufferCount,m=p>0&&c.type==="buffer"?", "+p:"",g=h.isStorageBufferNode?`storage, ${this.getStorageAccess(h,e)}`:"uniform";if(this.isCustomStruct(c))i.push(`@binding( ${u.binding++} ) @group( ${u.group} ) var<${g}> ${c.name} : ${d};`);else{let x=` value : array< ${h.isAtomic?`atomic<${d}>`:`${d}`}${m} >`;i.push(this._getWGSLStructBinding(c.name,x,g,u.binding++,u.group))}}else{let h=c.groupNode.name;if(r[h]===void 0){let d=this.uniformGroups[h];if(d!==void 0){let p=[];for(let g of d.uniforms){let y=g.getType(),x=this.getType(this.getVectorType(y));p.push(` ${g.name} : ${x}`)}let m=this.uniformGroupsBindings[h];m===void 0&&(m={index:u.binding++,id:u.group},this.uniformGroupsBindings[h]=m),r[h]={index:m.index,id:m.id,snippets:p}}}}}for(let c in r){let l=r[c];n.push(this._getWGSLStructBinding(c,l.snippets.join(`, +`),"uniform",l.index,l.id))}return[...s,...i,...n].join(` +`)}buildCode(){let e=this.material!==null?{fragment:{},vertex:{}}:{compute:{}};this.sortBindingGroups();for(let t in e){this.shaderStage=t;let s=e[t];s.uniforms=this.getUniforms(t),s.attributes=this.getAttributes(t),s.varyings=this.getVaryings(t),s.structs=this.getStructs(t),s.vars=this.getVars(t),s.codes=this.getCodes(t),s.directives=this.getDirectives(t),s.scopedArrays=this.getScopedArrays(t);let i=`// code + +`;i+=this.flowCode[t];let n=this.flowNodes[t],r=n[n.length-1],a=r.outputNode,c=a!==void 0&&a.isOutputStructNode===!0;for(let l of n){let u=this.getFlowData(l),h=l.name;if(h&&(i.length>0&&(i+=` +`),i+=` // flow -> ${h} +`),i+=`${u.code} + `,l===r&&t!=="compute"){if(i+=`// result + + `,t==="vertex")i+=`varyings.builtinClipSpace = ${u.result};`;else if(t==="fragment")if(c)s.returnType=a.getNodeType(this),s.structs+="var output : "+s.returnType+";",i+=`return ${u.result};`;else{let d=" @location(0) color: vec4",p=this.getBuiltins("output");p&&(d+=`, + `+p),s.returnType="OutputStruct",s.structs+=this._getWGSLStruct("OutputStruct",d),s.structs+=` +var output : OutputStruct;`,i+=`output.color = ${u.result}; + + return output;`}}}s.flow=i}if(this.shaderStage=null,this.material!==null)this.vertexShader=this._getWGSLVertexCode(e.vertex),this.fragmentShader=this._getWGSLFragmentCode(e.fragment);else{let t=this.object.workgroupSize;this.computeShader=this._getWGSLComputeCode(e.compute,t)}}getMethod(e,t=null){let s;return t!==null&&(s=this._getWGSLMethod(e+"_"+t)),s===void 0&&(s=this._getWGSLMethod(e)),s||e}getBitcastMethod(e){return`bitcast<${this.getType(e)}>`}getFloatPackingMethod(e){return this.getMethod(`floatpack_${e}_2x16`)}getFloatUnpackingMethod(e){return this.getMethod(`floatunpack_${e}_2x16`)}getTernary(e,t,s){return`select( ${s}, ${t}, ${e} )`}getType(e){return oI[e]||e}isAvailable(e){let t=H_[e];return t===void 0&&(e==="float32Filterable"?t=this.renderer.hasFeature("float32-filterable"):e==="clipDistance"&&(t=this.renderer.hasFeature("clip-distances")),H_[e]=t),t}getUniformBufferLimit(){return this.renderer.backend.device.limits.maxUniformBufferBindingSize}_getWGSLMethod(e){return Ka[e]!==void 0&&this._include(e),aI[e]}_include(e){let t=Ka[e];return t.build(this),this.addInclude(t),t}_getWGSLVertexCode(e){return`${this.getSignature()} +// directives +${e.directives} + +// structs +${e.structs} + +// uniforms +${e.uniforms} + +// varyings +${e.varyings} +var varyings : VaryingsStruct; + +// codes +${e.codes} + +@vertex +fn main( ${e.attributes} ) -> VaryingsStruct { + + // vars + ${e.vars} + + // flow + ${e.flow} + + return varyings; + +} +`}_getWGSLFragmentCode(e){return`${this.getSignature()} +// global +${Qw} + +// structs +${e.structs} + +// uniforms +${e.uniforms} + +// codes +${e.codes} + +@fragment +fn main( ${e.varyings} ) -> ${e.returnType} { + + // vars + ${e.vars} + + // flow + ${e.flow} + +} +`}_getWGSLComputeCode(e,t){let[s,i,n]=t;return`${this.getSignature()} +// directives +${e.directives} + +// system +var instanceIndex : u32; + +// locals +${e.scopedArrays} + +// structs +${e.structs} + +// uniforms +${e.uniforms} + +// codes +${e.codes} + +@compute @workgroup_size( ${s}, ${i}, ${n} ) +fn main( ${e.attributes} ) { + + // system + instanceIndex = globalId.x + + globalId.y * ( ${s} * numWorkgroups.x ) + + globalId.z * ( ${s} * numWorkgroups.x ) * ( ${i} * numWorkgroups.y ); + + // vars + ${e.vars} + + // flow + ${e.flow} + +} +`}_getWGSLStruct(e,t){return` +struct ${e} { +${t} +};`}_getWGSLStructBinding(e,t,s,i=0,n=0){let r=e+"Struct";return`${this._getWGSLStruct(r,t)} +@binding( ${i} ) @group( ${n} ) +var<${s}> ${e} : ${r};`}},Uy=class{constructor(e){this.backend=e}getCurrentDepthStencilFormat(e){let t;return e.depth&&(e.depthTexture!==null?t=this.getTextureFormatGPU(e.depthTexture):e.stencil?t=M.Depth24PlusStencil8:t=M.Depth24Plus),t}getTextureFormatGPU(e){return this.backend.get(e).format}getTextureSampleData(e){let t;if(e.isFramebufferTexture)t=1;else if(e.isDepthTexture&&!e.renderTarget){let n=this.backend.renderer,r=n.getRenderTarget();t=r?r.samples:n.currentSamples}else e.renderTarget&&(t=e.renderTarget.samples);t=t||1;let s=t>1&&e.renderTarget!==null&&e.isDepthTexture!==!0&&e.isFramebufferTexture!==!0;return{samples:t,primarySamples:s?1:t,isMSAA:s}}getCurrentColorFormat(e){let t;return e.textures!==null?t=this.getTextureFormatGPU(e.textures[0]):t=this.getPreferredCanvasFormat(),t}getCurrentColorFormats(e){return e.textures!==null?e.textures.map(t=>this.getTextureFormatGPU(t)):[this.getPreferredCanvasFormat()]}getCurrentColorSpace(e){return e.textures!==null?e.textures[0].colorSpace:this.backend.renderer.outputColorSpace}getPrimitiveTopology(e,t){if(e.isPoints)return Gu.PointList;if(e.isLineSegments||e.isMesh&&t.wireframe===!0)return Gu.LineList;if(e.isLine)return Gu.LineStrip;if(e.isMesh)return Gu.TriangleList}getSampleCount(e){return e>=4?4:1}getSampleCountRenderContext(e){return e.textures!==null?this.getSampleCount(e.sampleCount):this.getSampleCount(this.backend.renderer.currentSamples)}getPreferredCanvasFormat(){let t=this.backend.parameters.outputType;if(t===void 0)return navigator.gpu.getPreferredCanvasFormat();if(t===lt)return M.BGRA8Unorm;if(t===$e)return M.RGBA16Float;throw new Error("Unsupported output buffer type.")}},Kw=new Map([[Int8Array,["sint8","snorm8"]],[Uint8Array,["uint8","unorm8"]],[Int16Array,["sint16","snorm16"]],[Uint16Array,["uint16","unorm16"]],[Int32Array,["sint32","snorm32"]],[Uint32Array,["uint32","unorm32"]],[Float32Array,["float32"]]]);typeof Float16Array<"u"&&Kw.set(Float16Array,["float16"]);var cI=new Map([[Zo,["float16"]]]),lI=new Map([[Int32Array,"sint32"],[Int16Array,"sint32"],[Uint32Array,"uint32"],[Uint16Array,"uint32"],[Float32Array,"float32"]]),Oy=class{constructor(e){this.backend=e}createAttribute(e,t){let s=this._getBufferAttribute(e),i=this.backend,n=i.get(s),r=n.buffer;if(r===void 0){let a=i.device,c=s.array;if(e.normalized===!1){if(c.constructor===Int16Array||c.constructor===Int8Array)c=new Int32Array(c);else if((c.constructor===Uint16Array||c.constructor===Uint8Array)&&(c=new Uint32Array(c),t&GPUBufferUsage.INDEX))for(let h=0;h0&&(r.groups===void 0&&(r.groups=[],r.versions=[]),r.versions[s]===i&&(c=r.groups[s])),c===void 0&&(c=this.createBindGroup(e,a),s>0&&(r.groups[s]=c,r.versions[s]=i)),r.group=c}updateBinding(e){let t=this.backend,s=t.device,i=e.buffer,n=t.get(e).buffer,r=e.updateRanges;if(r.length===0)s.queue.writeBuffer(n,0,i,0);else{let a=Kr(i),c=a?1:i.BYTES_PER_ELEMENT;for(let l=0,u=r.length;l1&&(d+=`-${c.texture.depthOrArrayLayers}`),d+=`-${u}-${h}`,l=c[d],l===void 0){let p=JF.All,m;a.isSampledCubeTexture?m=Tt.Cube:a.isSampledTexture3D?m=Tt.ThreeD:a.texture.isArrayTexture||a.texture.isDataArrayTexture||a.texture.isCompressedArrayTexture?m=Tt.TwoDArray:m=Tt.TwoD,l=c[d]=c.texture.createView({aspect:p,dimension:m,mipLevelCount:u,baseMipLevel:h})}}r.push({binding:n,resource:l})}else if(a.isSampler){let c=s.get(a.texture);r.push({binding:n,resource:c.sampler})}n++}return i.createBindGroup({label:"bindGroup_"+e.name,layout:t,entries:r})}_createLayoutEntries(e){let t=[],s=0;for(let i of e.bindings){let n=this.backend,r={binding:s,visibility:i.visibility};if(i.isUniformBuffer||i.isStorageBuffer){let a={};i.isStorageBuffer&&(i.visibility&ni.COMPUTE&&(i.access===dt.READ_WRITE||i.access===dt.WRITE_ONLY)?a.type=hf.Storage:a.type=hf.ReadOnlyStorage),r.buffer=a}else if(i.isSampledTexture&&i.store){let a={};a.format=this.backend.get(i.texture).texture.format;let c=i.access;c===dt.READ_WRITE?a.access=df.ReadWrite:c===dt.WRITE_ONLY?a.access=df.WriteOnly:a.access=df.ReadOnly,i.texture.isArrayTexture?a.viewDimension=Tt.TwoDArray:i.texture.is3DTexture&&(a.viewDimension=Tt.ThreeD),r.storageTexture=a}else if(i.isSampledTexture){let a={},{primarySamples:c}=n.utils.getTextureSampleData(i.texture);if(c>1&&(a.multisampled=!0,i.texture.isDepthTexture||(a.sampleType=Kn.UnfilterableFloat)),i.texture.isDepthTexture)n.compatibilityMode&&i.texture.compareFunction===null?a.sampleType=Kn.UnfilterableFloat:a.sampleType=Kn.Depth;else if(i.texture.isDataTexture||i.texture.isDataArrayTexture||i.texture.isData3DTexture){let l=i.texture.type;l===ut?a.sampleType=Kn.SInt:l===Oe?a.sampleType=Kn.UInt:l===Ct&&(this.backend.hasFeature("float32-filterable")?a.sampleType=Kn.Float:a.sampleType=Kn.UnfilterableFloat)}i.isSampledCubeTexture?a.viewDimension=Tt.Cube:i.texture.isArrayTexture||i.texture.isDataArrayTexture||i.texture.isCompressedArrayTexture?a.viewDimension=Tt.TwoDArray:i.isSampledTexture3D&&(a.viewDimension=Tt.ThreeD),r.texture=a}else if(i.isSampler){let a={};i.texture.isDepthTexture&&(i.texture.compareFunction!==null&&n.hasCompatibility(Ys.TEXTURE_COMPARE)?a.type=z_.Comparison:a.type=z_.NonFiltering),r.sampler=a}else O(`WebGPUBindingUtils: Unsupported binding "${i}".`);t.push(r),s++}return t}deleteBindGroupData(e){let{backend:t}=this,s=t.get(e);s.layout&&(s.layout.usedTimes--,s.layout.usedTimes===0&&this._bindGroupLayoutCache.delete(s.layoutKey),s.layout=void 0,s.layoutKey=void 0)}dispose(){this._bindGroupLayoutCache.clear()}},zy=class{constructor(e){this.backend=e,this._activePipelines=new WeakMap}setPipeline(e,t){this._activePipelines.get(e)!==t&&(e.setPipeline(t),this._activePipelines.set(e,t))}_getSampleCount(e){return this.backend.utils.getSampleCountRenderContext(e)}createRenderPipeline(e,t){let{object:s,material:i,geometry:n,pipeline:r}=e,{vertexProgram:a,fragmentProgram:c}=r,l=this.backend,u=l.device,h=l.utils,d=l.get(r),p=[];for(let Y of e.getBindings()){let ee=l.get(Y),{layoutGPU:Q}=ee.layout;p.push(Q)}let m=l.attributeUtils.createShaderVertexBuffers(e),g;i.blending!==qs&&(i.blending!==Ht||i.transparent!==!1)&&(g=this._getBlending(i));let y={};i.stencilWrite===!0&&(y={compare:this._getStencilCompare(i),failOp:this._getStencilOperation(i.stencilFail),depthFailOp:this._getStencilOperation(i.stencilZFail),passOp:this._getStencilOperation(i.stencilZPass)});let x=this._getColorWriteMask(i),_=[];if(e.context.textures!==null){let Y=e.context.textures,ee=e.context.mrt;for(let Q=0;Q1},layout:u.createPipelineLayout({bindGroupLayouts:p})},k={},W=e.context.depth,X=e.context.stencil;if((W===!0||X===!0)&&(W===!0&&(k.format=N,k.depthWriteEnabled=i.depthWrite,k.depthCompare=B),X===!0&&(k.stencilFront=y,k.stencilBack=y,k.stencilReadMask=i.stencilFuncMask,k.stencilWriteMask=i.stencilWriteMask),i.polygonOffset===!0&&(k.depthBias=i.polygonOffsetUnits,k.depthBiasSlopeScale=i.polygonOffsetFactor,k.depthBiasClamp=0),I.depthStencil=k),u.pushErrorScope("validation"),t===null)d.pipeline=u.createRenderPipeline(I),u.popErrorScope().then(Y=>{Y!==null&&(d.error=!0,O(Y.message))});else{let Y=new Promise(async ee=>{try{d.pipeline=await u.createRenderPipelineAsync(I)}catch{}let Q=await u.popErrorScope();Q!==null&&(d.error=!0,O(Q.message)),ee()});t.push(Y)}}createBundleEncoder(e,t="renderBundleEncoder"){let s=this.backend,{utils:i,device:n}=s,r=i.getCurrentDepthStencilFormat(e),a=i.getCurrentColorFormats(e),c=this._getSampleCount(e),l={label:t,colorFormats:a,depthStencilFormat:r,sampleCount:c};return n.createRenderBundleEncoder(l)}createComputePipeline(e,t){let s=this.backend,i=s.device,n=s.get(e.computeProgram).module,r=s.get(e),a=[];for(let c of t){let l=s.get(c),{layoutGPU:u}=l.layout;a.push(u)}r.pipeline=i.createComputePipeline({compute:n,layout:i.createPipelineLayout({bindGroupLayouts:a})})}_getBlending(e){let t,s,i=e.blending,n=e.blendSrc,r=e.blendDst,a=e.blendEquation;if(i===$n){let c=e.blendSrcAlpha!==null?e.blendSrcAlpha:n,l=e.blendDstAlpha!==null?e.blendDstAlpha:r,u=e.blendEquationAlpha!==null?e.blendEquationAlpha:a;t={srcFactor:this._getBlendFactor(n),dstFactor:this._getBlendFactor(r),operation:this._getBlendOperation(a)},s={srcFactor:this._getBlendFactor(c),dstFactor:this._getBlendFactor(l),operation:this._getBlendOperation(u)}}else{let c=e.premultipliedAlpha,l=(u,h,d,p)=>{t={srcFactor:u,dstFactor:h,operation:Qn.Add},s={srcFactor:d,dstFactor:p,operation:Qn.Add}};if(c)switch(i){case Ht:l(pe.One,pe.OneMinusSrcAlpha,pe.One,pe.OneMinusSrcAlpha);break;case zn:l(pe.One,pe.One,pe.One,pe.One);break;case Gn:l(pe.Zero,pe.OneMinusSrc,pe.Zero,pe.One);break;case Wn:l(pe.Dst,pe.OneMinusSrcAlpha,pe.Zero,pe.One);break}else switch(i){case Ht:l(pe.SrcAlpha,pe.OneMinusSrcAlpha,pe.One,pe.OneMinusSrcAlpha);break;case zn:l(pe.SrcAlpha,pe.One,pe.One,pe.One);break;case Gn:O(`WebGPURenderer: "SubtractiveBlending" requires "${e.isMaterial?"material":"blendMode"}.premultipliedAlpha = true".`);break;case Wn:O(`WebGPURenderer: "MultiplyBlending" requires "${e.isMaterial?"material":"blendMode"}.premultipliedAlpha = true".`);break}}if(t!==void 0&&s!==void 0)return{color:t,alpha:s};O("WebGPURenderer: Invalid blending: ",i)}_getBlendFactor(e){let t;switch(e){case Ni:t=pe.Zero;break;case up:t=pe.One;break;case hp:t=pe.Src;break;case dp:t=pe.OneMinusSrc;break;case Ir:t=pe.SrcAlpha;break;case Pr:t=pe.OneMinusSrcAlpha;break;case mp:t=pe.Dst;break;case gp:t=pe.OneMinusDst;break;case pp:t=pe.DstAlpha;break;case fp:t=pe.OneMinusDstAlpha;break;case yp:t=pe.SrcAlphaSaturated;break;case aR:t=pe.Constant;break;case cR:t=pe.OneMinusConstant;break;default:O("WebGPURenderer: Blend factor not supported.",e)}return t}_getStencilCompare(e){let t,s=e.stencilFunc;switch(s){case xb:t=ht.Never;break;case hl:t=ht.Always;break;case bb:t=ht.Less;break;case Tb:t=ht.LessEqual;break;case _b:t=ht.Equal;break;case wb:t=ht.GreaterEqual;break;case Sb:t=ht.Greater;break;case vb:t=ht.NotEqual;break;default:O("WebGPURenderer: Invalid stencil function.",s)}return t}_getStencilOperation(e){let t;switch(e){case Qi:t=an.Keep;break;case hb:t=an.Zero;break;case db:t=an.Replace;break;case yb:t=an.Invert;break;case pb:t=an.IncrementClamp;break;case fb:t=an.DecrementClamp;break;case mb:t=an.IncrementWrap;break;case gb:t=an.DecrementWrap;break;default:O("WebGPURenderer: Invalid stencil operation.",t)}return t}_getBlendOperation(e){let t;switch(e){case Xt:t=Qn.Add;break;case cp:t=Qn.Subtract;break;case lp:t=Qn.ReverseSubtract;break;case j0:t=Qn.Min;break;case Z0:t=Qn.Max;break;default:O("WebGPUPipelineUtils: Blend equation not supported.",e)}return t}_getPrimitiveState(e,t,s){let i={},n=this.backend.utils;i.topology=n.getPrimitiveTopology(e,s),t.index!==null&&e.isLine===!0&&e.isLineSegments!==!0&&(i.stripIndexFormat=t.index.array instanceof Uint16Array?Qh.Uint16:Qh.Uint32);let r=s.side===rt;return e.isMesh&&e.matrixWorld.determinant()<0&&(r=!r),i.frontFace=r===!0?O_.CW:O_.CCW,i.cullMode=s.side===$s?V_.None:V_.Back,i}_getColorWriteMask(e){return e.colorWrite===!0?k_.All:k_.None}_getDepthCompare(e){let t;if(e.depthTest===!1)t=ht.Always;else{let s=this.backend.parameters.reversedDepthBuffer?Np[e.depthFunc]:e.depthFunc;switch(s){case Oo:t=ht.Never;break;case Vo:t=ht.Always;break;case ko:t=ht.Less;break;case In:t=ht.LessEqual;break;case zo:t=ht.Equal;break;case Go:t=ht.GreaterEqual;break;case Wo:t=ht.Greater;break;case $o:t=ht.NotEqual;break;default:O("WebGPUPipelineUtils: Invalid depth function.",s)}}return t}},Gy=class extends Zh{constructor(e,t,s=2048){super(s),this.device=e,this.type=t,this.querySet=this.device.createQuerySet({type:"timestamp",count:this.maxQueries,label:`queryset_global_timestamp_${t}`});let i=this.maxQueries*8;this.resolveBuffer=this.device.createBuffer({label:`buffer_timestamp_resolve_${t}`,size:i,usage:GPUBufferUsage.QUERY_RESOLVE|GPUBufferUsage.COPY_SRC}),this.resultBuffer=this.device.createBuffer({label:`buffer_timestamp_result_${t}`,size:i,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ})}allocateQueriesForContext(e){if(!this.trackTimestamp||this.isDisposed)return null;if(this.currentQueryIndex+2>this.maxQueries)return _e(`WebGPUTimestampQueryPool [${this.type}]: Maximum number of queries exceeded, when using trackTimestamp it is necessary to resolves the queries via renderer.resolveTimestampsAsync( THREE.TimestampQuery.${this.type.toUpperCase()} ).`),null;let t=this.currentQueryIndex;return this.currentQueryIndex+=2,this.queryOffsets.set(e,t),t}async resolveQueriesAsync(){if(!this.trackTimestamp||this.currentQueryIndex===0||this.isDisposed)return this.lastValue;if(this.pendingResolve)return this.pendingResolve;this.pendingResolve=this._resolveQueries();try{return await this.pendingResolve}finally{this.pendingResolve=null}}async _resolveQueries(){if(this.isDisposed)return this.lastValue;try{if(this.resultBuffer.mapState!=="unmapped")return this.lastValue;let e=new Map(this.queryOffsets),t=this.currentQueryIndex,s=t*8;this.currentQueryIndex=0,this.queryOffsets.clear();let i=this.device.createCommandEncoder();i.resolveQuerySet(this.querySet,0,t,this.resolveBuffer,0),i.copyBufferToBuffer(this.resolveBuffer,0,this.resultBuffer,0,s);let n=i.finish();if(this.device.queue.submit([n]),this.resultBuffer.mapState!=="unmapped")return this.lastValue;if(await this.resultBuffer.mapAsync(GPUMapMode.READ,0,s),this.isDisposed)return this.resultBuffer.mapState==="mapped"&&this.resultBuffer.unmap(),this.lastValue;let r=new BigUint64Array(this.resultBuffer.getMappedRange(0,s)),a={},c=[];for(let[u,h]of e){let d=u.match(/^(.*):f(\d+)$/),p=parseInt(d[2]);c.includes(p)===!1&&c.push(p),a[p]===void 0&&(a[p]=0);let m=r[h],g=r[h+1],y=Number(g-m)/1e6;this.timestamps.set(u,y),a[p]+=y}let l=a[c[c.length-1]];return this.resultBuffer.unmap(),this.lastValue=l,this.frames=c,l}catch(e){return O("Error resolving queries:",e),this.resultBuffer.mapState==="mapped"&&this.resultBuffer.unmap(),this.lastValue}}async dispose(){if(!this.isDisposed){if(this.isDisposed=!0,this.pendingResolve)try{await this.pendingResolve}catch(e){O("Error waiting for pending resolve:",e)}if(this.resultBuffer&&this.resultBuffer.mapState==="mapped")try{this.resultBuffer.unmap()}catch(e){O("Error unmapping buffer:",e)}this.querySet&&(this.querySet.destroy(),this.querySet=null),this.resolveBuffer&&(this.resolveBuffer.destroy(),this.resolveBuffer=null),this.resultBuffer&&(this.resultBuffer.destroy(),this.resultBuffer=null),this.queryOffsets.clear(),this.pendingResolve=null}}},Wy=class extends jh{constructor(e={}){super(e),this.isWebGPUBackend=!0,this.parameters.alpha=e.alpha===void 0?!0:e.alpha,this.parameters.requiredLimits=e.requiredLimits===void 0?{}:e.requiredLimits,this.compatibilityMode=null,this.device=null,this.defaultRenderPassdescriptor=null,this.utils=new Uy(this),this.attributeUtils=new Oy(this),this.bindingUtils=new ky(this),this.pipelineUtils=new zy(this),this.textureUtils=new Fy(this),this.occludedResolveCache=new Map;let t=typeof navigator>"u"?!0:/Android/.test(navigator.userAgent)===!1;this._compatibility={[Ys.TEXTURE_COMPARE]:t}}async init(e){await super.init(e);let t=this.parameters,s;if(t.device===void 0){let i={powerPreference:t.powerPreference,featureLevel:"compatibility"},n=typeof navigator<"u"?await navigator.gpu.requestAdapter(i):null;if(n===null)throw new Error("WebGPUBackend: Unable to create WebGPU adapter.");let r=Object.values(Ny),a=[];for(let l of r)n.features.has(l)&&a.push(l);let c={requiredFeatures:a,requiredLimits:t.requiredLimits};s=await n.requestDevice(c)}else s=t.device;this.compatibilityMode=!s.features.has("core-features-and-limits"),this.compatibilityMode&&(e._samples=0),s.lost.then(i=>{if(i.reason==="destroyed")return;let n={api:"WebGPU",message:i.message||"Unknown reason",reason:i.reason||null,originalEvent:i};e.onDeviceLost(n)}),this.device=s,this.trackTimestamp=this.trackTimestamp&&this.hasFeature(Ny.TimestampQuery),this.updateSize()}get context(){let e=this.renderer.getCanvasTarget(),t=this.get(e),s=t.context;if(s===void 0){let i=this.parameters;e.isDefaultCanvasTarget===!0&&i.context!==void 0?s=i.context:s=e.domElement.getContext("webgpu"),"setAttribute"in e.domElement&&e.domElement.setAttribute("data-engine",`three.js r${"183"} webgpu`);let n=i.alpha?"premultiplied":"opaque",r=i.outputType===$e?"extended":"standard";s.configure({device:this.device,format:this.utils.getPreferredCanvasFormat(),usage:GPUTextureUsage.RENDER_ATTACHMENT|GPUTextureUsage.COPY_SRC,alphaMode:n,toneMapping:{mode:r}}),t.context=s}return s}get coordinateSystem(){return Yt}async getArrayBufferAsync(e){return await this.attributeUtils.getArrayBufferAsync(e)}getContext(){return this.context}_getDefaultRenderPassDescriptor(){let e=this.renderer,t=e.getCanvasTarget(),s=this.get(t),i=e.currentSamples,n=s.descriptor;if(n===void 0||s.samples!==i){n={colorAttachments:[{view:null}]},(e.depth===!0||e.stencil===!0)&&(n.depthStencilAttachment={view:this.textureUtils.getDepthBuffer(e.depth,e.stencil).createView()});let a=n.colorAttachments[0];i>0?a.view=this.textureUtils.getColorBuffer().createView():a.resolveTarget=void 0,s.descriptor=n,s.samples=i}let r=n.colorAttachments[0];return i>0?r.resolveTarget=this.context.getCurrentTexture().createView():r.view=this.context.getCurrentTexture().createView(),n}_isRenderCameraDepthArray(e){return e.depthTexture&&e.depthTexture.image.depth>1&&e.camera.isArrayCamera}_getRenderPassDescriptor(e,t={}){let s=e.renderTarget,i=this.get(s),n=i.descriptors;(n===void 0||i.width!==s.width||i.height!==s.height||i.samples!==s.samples)&&(n={},i.descriptors=n);let r=e.getCacheKey(),a=n[r];if(a===void 0){let l=e.textures,u=[],h,d=this._isRenderCameraDepthArray(e);for(let p=0;p1)if(d===!0){let y=e.camera.cameras;for(let x=0;x0&&(t.currentOcclusionQuerySet&&t.currentOcclusionQuerySet.destroy(),t.currentOcclusionQueryBuffer&&t.currentOcclusionQueryBuffer.destroy(),t.currentOcclusionQuerySet=t.occlusionQuerySet,t.currentOcclusionQueryBuffer=t.occlusionQueryBuffer,t.currentOcclusionQueryObjects=t.occlusionQueryObjects,n=s.createQuerySet({type:"occlusion",count:i,label:`occlusionQuerySet_${e.id}`}),t.occlusionQuerySet=n,t.occlusionQueryIndex=0,t.occlusionQueryObjects=new Array(i),t.lastOcclusionObject=null);let r;e.textures===null?r=this._getDefaultRenderPassDescriptor():r=this._getRenderPassDescriptor(e,{loadOp:ve.Load}),this.initTimestampQuery(As.RENDER,this.getTimestampUID(e),r),r.occlusionQuerySet=n;let a=r.depthStencilAttachment;if(e.textures!==null){let l=r.colorAttachments;for(let u=0;u0&&t.currentPass.executeBundles(t.renderBundles),s>t.occlusionQueryIndex&&t.currentPass.endOcclusionQuery();let i=t.encoder;if(this._isRenderCameraDepthArray(e)===!0){let n=[];for(let r=0;r0){let n=s*8,r=this.occludedResolveCache.get(n);r===void 0&&(r=this.device.createBuffer({size:n,usage:GPUBufferUsage.QUERY_RESOLVE|GPUBufferUsage.COPY_SRC}),this.occludedResolveCache.set(n,r));let a=this.device.createBuffer({size:n,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ});t.encoder.resolveQuerySet(t.occlusionQuerySet,0,s,r,0),t.encoder.copyBufferToBuffer(r,0,a,0,n),t.occlusionQueryBuffer=a,this.resolveOccludedAsync(e)}if(this.device.queue.submit([t.encoder.finish()]),e.textures!==null){let n=e.textures;for(let r=0;rp&&(n[0]=Math.min(d,p),n[1]=Math.ceil(d/p)),r.dispatchSize=n}n=r.dispatchSize}a.dispatchWorkgroups(n[0],n[1]||1,n[2]||1)}finishCompute(e){let t=this.get(e);t.passEncoderGPU.end(),this.device.queue.submit([t.cmdEncoderGPU.finish()])}draw(e,t){let{object:s,material:i,context:n,pipeline:r}=e,a=e.getBindings(),c=this.get(n),l=this.get(r),u=l.pipeline;if(l.error===!0)return;let h=e.getIndex(),d=h!==null,p=e.getDrawParameters();if(p===null)return;let m=(y,x)=>{this.pipelineUtils.setPipeline(y,u),x.pipeline=u;let _=x.bindingGroups;for(let S=0,E=a.length;S{if(m(y,x),s.isBatchedMesh===!0){let _=s._multiDrawStarts,w=s._multiDrawCounts,S=s._multiDrawCount,E=s._multiDrawInstances;E!==null&&_e("WebGPUBackend: renderMultiDrawInstances has been deprecated and will be removed in r184. Append to renderMultiDraw arguments and use indirection.");let B=d===!0?h.array.BYTES_PER_ELEMENT:1;i.wireframe&&(B=s.geometry.attributes.position.count>65535?4:2);for(let N=0;N1?0:N;d===!0?y.drawIndexed(w[N],C,_[N]/B,0,I):y.draw(w[N],C,_[N],I),t.update(s,w[N],C)}}else if(d===!0){let{vertexCount:_,instanceCount:w,firstVertex:S}=p,E=e.getIndirect();if(E!==null){let B=this.get(E).buffer,N=e.getIndirectOffset(),C=Array.isArray(N)?N:[N];for(let I=0;I0){let y=this.get(e.camera),x=e.camera.cameras,_=e.getBindingGroup("cameraIndex");if(y.indexesGPU===void 0||y.indexesGPU.length!==x.length){let S=this.get(_),E=[],B=new Uint32Array([0,0,0,0]);for(let N=0,C=x.length;N(z("WebGPURenderer: WebGPU is not available, running under WebGL2 backend."),new Jh(e)));let s=new t(e);super(s,e),this.library=new Hy,this.isWebGPURenderer=!0,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}};var Xy=class{constructor(e,t=Z(0,0,1,1)){this.renderer=e,this.outputNode=t,this.outputColorTransform=!0,this.needsUpdate=!0;let s=new Ne;s.name="RenderPipeline",this._quadMesh=new Gi(s),this._quadMesh.name="Render Pipeline",this._context=null}render(){let e=this.renderer;this._update(),this._context.onBeforeRenderPipeline!==null&&this._context.onBeforeRenderPipeline();let t=e.toneMapping,s=e.outputColorSpace;e.toneMapping=Ri,e.outputColorSpace=me.workingColorSpace;let i=e.xr.enabled;e.xr.enabled=!1,this._quadMesh.render(e),e.xr.enabled=i,e.toneMapping=t,e.outputColorSpace=s,this._context.onAfterRenderPipeline!==null&&this._context.onAfterRenderPipeline()}get context(){return this._context}dispose(){this._quadMesh.material.dispose()}_update(){if(this.needsUpdate===!0){let e=this.renderer,t=e.toneMapping,s=e.outputColorSpace,i={renderPipeline:this,onBeforeRenderPipeline:null,onAfterRenderPipeline:null},n=this.outputNode;this.outputColorTransform===!0?(n=n.context(i),n=Ix(n,t,s)):(i.toneMapping=t,i.outputColorSpace=s,n=n.context(i)),this._context=i,this._quadMesh.material.fragmentNode=n,this._quadMesh.material.needsUpdate=!0,this.needsUpdate=!1}}async renderAsync(){_e('RenderPipeline: "renderAsync()" has been deprecated. Use "render()" and "await renderer.init();" when creating the renderer.'),await this.renderer.init(),this.render()}},ed=class extends Xy{constructor(e,t){_e('PostProcessing: "PostProcessing" has been renamed to "RenderPipeline". Please update your code to use "THREE.RenderPipeline" instead.'),super(e,t)}};var bD=f.BRDF_GGX,_D=f.BRDF_Lambert,TD=f.BasicPointShadowFilter,SD=f.BasicShadowFilter,vD=f.Break,wD=f.Const,MD=f.Continue,AD=f.DFGLUT,ND=f.D_GGX,RD=f.Discard,CD=f.EPSILON,ED=f.F_Schlick,Oc=f.Fn,BD=f.INFINITY,FD=f.If,e1=f.Loop,ID=f.NodeAccess,PD=f.NodeShaderStage,DD=f.NodeType,LD=f.NodeUpdateType,UD=f.PCFShadowFilter,OD=f.PCFSoftShadowFilter,VD=f.PI,kD=f.PI2,zD=f.TWO_PI,GD=f.HALF_PI,WD=f.PointShadowFilter,$D=f.Return,qD=f.Schlick_to_F0,HD=f.ShaderNode,XD=f.Stack,YD=f.Switch,jD=f.TBNViewMatrix,ZD=f.VSMShadowFilter,JD=f.V_GGX_SmithCorrelated,QD=f.Var,KD=f.VarIntent,y0=f.abs,e3=f.acesFilmicToneMapping,t3=f.acos,Nd=f.add,s3=f.addMethodChaining,i3=f.addNodeElement,n3=f.agxToneMapping,r3=f.all,o3=f.alphaT,a3=f.and,c3=f.anisotropy,l3=f.anisotropyB,u3=f.anisotropyT,h3=f.any,d3=f.append,p3=f.array,f3=f.arrayBuffer,m3=f.asin,g3=f.assign,y3=f.atan,x3=f.atomicAdd,b3=f.atomicAnd,_3=f.atomicFunc,T3=f.atomicLoad,S3=f.atomicMax,v3=f.atomicMin,w3=f.atomicOr,M3=f.atomicStore,A3=f.atomicSub,N3=f.atomicXor,R3=f.attenuationColor,C3=f.attenuationDistance,E3=f.attribute,B3=f.attributeArray,F3=f.backgroundBlurriness,I3=f.backgroundIntensity,P3=f.backgroundRotation,D3=f.batch,L3=f.bentNormalView,U3=f.billboarding,O3=f.bitAnd,V3=f.bitNot,k3=f.bitOr,z3=f.bitXor,G3=f.bitangentGeometry,W3=f.bitangentLocal,$3=f.bitangentView,q3=f.bitangentWorld,H3=f.bitcast,X3=f.blendBurn,Y3=f.blendColor,j3=f.blendDodge,Z3=f.blendOverlay,t1=f.blendScreen,J3=f.blur,Q3=f.bool,K3=f.buffer,eL=f.bufferAttribute,tL=f.bumpMap,sL=f.builtin,iL=f.builtinAOContext,nL=f.builtinShadowContext,rL=f.bvec2,oL=f.bvec3,aL=f.bvec4,cL=f.bypass,lL=f.cache,uL=f.call,hL=f.cameraFar,dL=f.cameraIndex,pL=f.cameraNear,fL=f.cameraNormalMatrix,mL=f.cameraPosition,gL=f.cameraProjectionMatrix,yL=f.cameraProjectionMatrixInverse,xL=f.cameraViewMatrix,bL=f.cameraViewport,_L=f.cameraWorldMatrix,TL=f.cbrt,SL=f.cdl,vL=f.ceil,wL=f.checker,ML=f.cineonToneMapping,AL=f.clamp,NL=f.clearcoat,RL=f.clearcoatNormalView,CL=f.clearcoatRoughness,EL=f.clipSpace,BL=f.code,FL=f.color,IL=f.colorSpaceToWorking,PL=f.colorToDirection,DL=f.compute,LL=f.computeKernel,UL=f.computeSkinning,OL=f.context,VL=f.convert,kL=f.convertColorSpace,zL=f.convertToTexture,GL=f.countLeadingZeros,WL=f.countOneBits,$L=f.countTrailingZeros,qL=f.cos,HL=f.cross,XL=f.cubeTexture,YL=f.cubeTextureBase,jL=f.dFdx,ZL=f.dFdy,JL=f.dashSize,QL=f.debug,KL=f.decrement,eU=f.decrementBefore,tU=f.defaultBuildStages,sU=f.defaultShaderStages,iU=f.defined,nU=f.degrees,rU=f.deltaTime,oU=f.densityFog,aU=f.densityFogFactor,cU=f.depth,lU=f.depthPass,uU=f.determinant,hU=f.difference,dU=f.diffuseColor,pU=f.directPointLight,fU=f.directionToColor,mU=f.directionToFaceDirection,gU=f.dispersion,yU=f.distance,xU=f.div,bU=f.dot,_U=f.drawIndex,TU=f.dynamicBufferAttribute,SU=f.element,vU=f.emissive,wU=f.equal,MU=f.equirectUV,AU=f.exp,NU=f.exp2,RU=f.exponentialHeightFogFactor,CU=f.expression,EU=f.faceDirection,BU=f.faceForward,FU=f.faceforward,An=f.float,IU=f.floatBitsToInt,PU=f.floatBitsToUint,DU=f.floor,LU=f.fog,UU=f.fract,OU=f.frameGroup,VU=f.frameId,kU=f.frontFacing,zU=f.fwidth,GU=f.gain,WU=f.gapSize,$U=f.getConstNodeType,qU=f.getCurrentStack,HU=f.getDirection,XU=f.getDistanceAttenuation,YU=f.getGeometryRoughness,jU=f.getNormalFromDepth,ZU=f.interleavedGradientNoise,JU=f.vogelDiskSample,QU=f.getParallaxCorrectNormal,KU=f.getRoughness,eO=f.getScreenPosition,tO=f.getShIrradianceAt,sO=f.getShadowMaterial,iO=f.getShadowRenderObjectFunction,nO=f.getTextureIndex,rO=f.getViewPosition,oO=f.globalId,aO=f.glsl,cO=f.glslFn,lO=f.grayscale,uO=f.greaterThan,hO=f.greaterThanEqual,dO=f.hash,pO=f.highpModelNormalViewMatrix,fO=f.highpModelViewMatrix,mO=f.hue,gO=f.increment,yO=f.incrementBefore,xO=f.instance,bO=f.instanceIndex,_O=f.instancedArray,TO=f.instancedBufferAttribute,SO=f.instancedDynamicBufferAttribute,vO=f.instancedMesh,x0=f.int,wO=f.intBitsToFloat,MO=f.inverse,AO=f.inverseSqrt,NO=f.inversesqrt,RO=f.invocationLocalIndex,CO=f.invocationSubgroupIndex,EO=f.ior,BO=f.iridescence,FO=f.iridescenceIOR,IO=f.iridescenceThickness,PO=f.ivec2,DO=f.ivec3,LO=f.ivec4,UO=f.js,OO=f.label,VO=f.length,kO=f.lengthSq,zO=f.lessThan,GO=f.lessThanEqual,WO=f.lightPosition,$O=f.lightProjectionUV,qO=f.lightShadowMatrix,HO=f.lightTargetDirection,XO=f.lightTargetPosition,YO=f.lightViewPosition,jO=f.lightingContext,ZO=f.lights,JO=f.linearDepth,QO=f.linearToneMapping,KO=f.localId,eV=f.log,tV=f.log2,sV=f.logarithmicDepthToViewZ,s1=f.luminance,iV=f.mat2,nV=f.mat3,rV=f.mat4,oV=f.matcapUV,aV=f.materialAO,cV=f.materialAlphaTest,lV=f.materialAnisotropy,uV=f.materialAnisotropyVector,hV=f.materialAttenuationColor,dV=f.materialAttenuationDistance,pV=f.materialClearcoat,fV=f.materialClearcoatNormal,mV=f.materialClearcoatRoughness,gV=f.materialColor,yV=f.materialDispersion,xV=f.materialEmissive,bV=f.materialEnvIntensity,_V=f.materialEnvRotation,TV=f.materialIOR,SV=f.materialIridescence,vV=f.materialIridescenceIOR,wV=f.materialIridescenceThickness,MV=f.materialLightMap,AV=f.materialLineDashOffset,NV=f.materialLineDashSize,RV=f.materialLineGapSize,CV=f.materialLineScale,EV=f.materialLineWidth,BV=f.materialMetalness,FV=f.materialNormal,IV=f.materialOpacity,PV=f.materialPointSize,DV=f.materialReference,LV=f.materialReflectivity,UV=f.materialRefractionRatio,OV=f.materialRotation,VV=f.materialRoughness,kV=f.materialSheen,zV=f.materialSheenRoughness,GV=f.materialShininess,WV=f.materialSpecular,$V=f.materialSpecularColor,qV=f.materialSpecularIntensity,HV=f.materialSpecularStrength,XV=f.materialThickness,YV=f.materialTransmission,jV=f.max,ZV=f.maxMipLevel,JV=f.mediumpModelViewMatrix,QV=f.metalness,KV=f.min,Vc=f.mix,ek=f.mixElement,i1=f.mod,tk=f.modInt,sk=f.modelDirection,ik=f.modelNormalMatrix,nk=f.modelPosition,rk=f.modelRadius,ok=f.modelScale,ak=f.modelViewMatrix,ck=f.modelViewPosition,lk=f.modelViewProjection,uk=f.modelWorldMatrix,hk=f.modelWorldMatrixInverse,dk=f.morphReference,pk=f.mrt,fk=f.mul,mk=f.mx_aastep,gk=f.mx_add,yk=f.mx_atan2,n1=f.mx_cell_noise_float,xk=f.mx_contrast,bk=f.mx_divide,_k=f.mx_fractal_noise_float,Tk=f.mx_fractal_noise_vec2,Sk=f.mx_fractal_noise_vec3,vk=f.mx_fractal_noise_vec4,wk=f.mx_frame,Mk=f.mx_heighttonormal,Ak=f.mx_hsvtorgb,Nk=f.mx_ifequal,Rk=f.mx_ifgreater,Ck=f.mx_ifgreatereq,Ek=f.mx_invert,Bk=f.mx_modulo,Fk=f.mx_multiply,Ik=f.mx_noise_float,Pk=f.mx_noise_vec3,Dk=f.mx_noise_vec4,Lk=f.mx_place2d,Uk=f.mx_power,Ok=f.mx_ramp4,Vk=f.mx_ramplr,kk=f.mx_ramptb,zk=f.mx_rgbtohsv,Gk=f.mx_rotate2d,Wk=f.mx_rotate3d,$k=f.mx_safepower,qk=f.mx_separate,Hk=f.mx_splitlr,Xk=f.mx_splittb,Yk=f.mx_srgb_texture_to_lin_rec709,jk=f.mx_subtract,Zk=f.mx_timer,Jk=f.mx_transform_uv,Qk=f.mx_unifiednoise2d,Kk=f.mx_unifiednoise3d,ez=f.mx_worley_noise_float,tz=f.mx_worley_noise_vec2,sz=f.mx_worley_noise_vec3,iz=f.negate,nz=f.neutralToneMapping,rz=f.nodeArray,oz=f.nodeImmutable,r1=f.nodeObject,az=f.nodeObjectIntent,cz=f.nodeObjects,lz=f.nodeProxy,uz=f.nodeProxyIntent,hz=f.normalFlat,dz=f.normalGeometry,pz=f.normalLocal,fz=f.normalMap,mz=f.normalView,gz=f.normalViewGeometry,yz=f.normalWorld,xz=f.normalWorldGeometry,bz=f.normalize,_z=f.not,Tz=f.notEqual,Sz=f.numWorkgroups,vz=f.objectDirection,wz=f.objectGroup,Mz=f.objectPosition,Az=f.objectRadius,Nz=f.objectScale,Rz=f.objectViewPosition,Cz=f.objectWorldMatrix,Ez=f.OnBeforeObjectUpdate,Bz=f.OnBeforeMaterialUpdate,Fz=f.OnObjectUpdate,Iz=f.OnMaterialUpdate,Rd=f.oneMinus,Pz=f.or,Dz=f.orthographicDepthToViewZ,Lz=f.oscSawtooth,Uz=f.oscSine,Oz=f.oscSquare,Vz=f.oscTriangle,kz=f.output,zz=f.outputStruct,Gz=f.overloadingFn,Wz=f.packHalf2x16,$z=f.packSnorm2x16,qz=f.packUnorm2x16,Hz=f.parabola,Xz=f.parallaxDirection,Yz=f.parallaxUV,jz=f.parameter,o1=f.pass,a1=f.passTexture,Zz=f.pcurve,Jz=f.perspectiveDepthToViewZ,Qz=f.pmremTexture,Kz=f.pointShadow,eG=f.pointUV,tG=f.pointWidth,sG=f.positionGeometry,iG=f.positionLocal,nG=f.positionPrevious,rG=f.positionView,oG=f.positionViewDirection,aG=f.positionWorld,cG=f.positionWorldDirection,lG=f.posterize,uG=f.pow,hG=f.pow2,dG=f.pow3,pG=f.pow4,fG=f.premultiplyAlpha,mG=f.property,gG=f.radians,yG=f.rand,xG=f.range,bG=f.rangeFog,_G=f.rangeFogFactor,TG=f.reciprocal,SG=f.reference,vG=f.referenceBuffer,wG=f.reflect,MG=f.reflectVector,AG=f.reflectView,NG=f.reflector,RG=f.refract,CG=f.refractVector,EG=f.refractView,BG=f.reinhardToneMapping,FG=f.remap,IG=f.remapClamp,PG=f.renderGroup,DG=f.renderOutput,LG=f.rendererReference,UG=f.replaceDefaultUV,OG=f.rotate,VG=f.rotateUV,kG=f.roughness,zG=f.round,GG=f.rtt,WG=f.sRGBTransferEOTF,$G=f.sRGBTransferOETF,qG=f.sample,HG=f.sampler,XG=f.samplerComparison,YG=f.saturate,jG=f.saturation,ZG=f.screen,JG=f.screenCoordinate,QG=f.screenDPR,KG=f.screenSize,e4=f.screenUV,t4=f.select,s4=f.setCurrentStack,i4=f.setName,n4=f.shaderStages,r4=f.shadow,o4=f.shadowPositionWorld,a4=f.shapeCircle,c4=f.sharedUniformGroup,l4=f.sheen,u4=f.sheenRoughness,h4=f.shiftLeft,d4=f.shiftRight,p4=f.shininess,f4=f.sign,m4=f.sin,g4=f.sinc,y4=f.skinning,yr=f.smoothstep,x4=f.smoothstepElement,b4=f.specularColor,_4=f.specularF90,T4=f.spherizeUV,S4=f.split,v4=f.spritesheetUV,w4=f.sqrt,M4=f.stack,A4=f.step,N4=f.stepElement,R4=f.storage,C4=f.storageBarrier,E4=f.storageTexture,B4=f.string,F4=f.struct,I4=f.sub,P4=f.subgroupAdd,D4=f.subgroupAll,L4=f.subgroupAnd,U4=f.subgroupAny,O4=f.subgroupBallot,V4=f.subgroupBroadcast,k4=f.subgroupBroadcastFirst,z4=f.subBuild,G4=f.subgroupElect,W4=f.subgroupExclusiveAdd,$4=f.subgroupExclusiveMul,q4=f.subgroupInclusiveAdd,H4=f.subgroupInclusiveMul,X4=f.subgroupIndex,Y4=f.subgroupMax,j4=f.subgroupMin,Z4=f.subgroupMul,J4=f.subgroupOr,Q4=f.subgroupShuffle,K4=f.subgroupShuffleDown,e5=f.subgroupShuffleUp,t5=f.subgroupShuffleXor,s5=f.subgroupSize,i5=f.subgroupXor,n5=f.tan,r5=f.tangentGeometry,o5=f.tangentLocal,a5=f.tangentView,c5=f.tangentWorld,Ls=f.texture,l5=f.texture3D,u5=f.textureBarrier,h5=f.textureBicubic,d5=f.textureBicubicLevel,p5=f.textureCubeUV,f5=f.textureLoad,m5=f.textureSize,g5=f.textureLevel,y5=f.textureStore,x5=f.thickness,b5=f.time,_5=f.toneMapping,T5=f.toneMappingExposure,S5=f.toonOutlinePass,v5=f.transformDirection,w5=f.transformNormal,M5=f.transformNormalToView,A5=f.transformedClearcoatNormalView,N5=f.transformedNormalView,R5=f.transformedNormalWorld,C5=f.transmission,E5=f.transpose,B5=f.triNoise3D,F5=f.triplanarTexture,I5=f.triplanarTextures,P5=f.trunc,D5=f.uint,L5=f.uintBitsToFloat,Us=f.uniform,Cd=f.uniformArray,U5=f.uniformCubeTexture,O5=f.uniformGroup,V5=f.uniformFlow,k5=f.uniformTexture,z5=f.unpackHalf2x16,G5=f.unpackSnorm2x16,W5=f.unpackUnorm2x16,$5=f.unpremultiplyAlpha,q5=f.userData,xr=f.uv,H5=f.uvec2,X5=f.uvec3,Y5=f.uvec4,j5=f.varying,Z5=f.varyingProperty,b0=f.vec2,_0=f.vec3,Nn=f.vec4,J5=f.vectorComponents,Q5=f.velocity,K5=f.vertexColor,eW=f.vertexIndex,tW=f.vertexStage,sW=f.vibrance,iW=f.viewZToLogarithmicDepth,nW=f.viewZToOrthographicDepth,rW=f.viewZToPerspectiveDepth,oW=f.viewZToReversedOrthographicDepth,aW=f.viewZToReversedPerspectiveDepth,cW=f.viewport,lW=f.viewportCoordinate,uW=f.viewportDepthTexture,hW=f.viewportLinearDepth,dW=f.viewportMipTexture,pW=f.viewportOpaqueMipTexture,fW=f.viewportResolution,mW=f.viewportSafeUV,gW=f.viewportSharedTexture,yW=f.viewportSize,xW=f.viewportTexture,bW=f.viewportUV,_W=f.wgsl,TW=f.wgslFn,SW=f.workgroupArray,vW=f.workgroupBarrier,wW=f.workgroupId,MW=f.workingToColorSpace,AW=f.xor;var Os=new Gi,hI=new re,dI=new re(1,0),pI=new re(0,1),T0,S0=class extends Be{static get type(){return"BloomNode"}constructor(e,t=1,s=0,i=0){super("vec4"),this.inputNode=e,this.strength=Us(t),this.radius=Us(s),this.threshold=Us(i),this.smoothWidth=Us(.01),this._renderTargetsHorizontal=[],this._renderTargetsVertical=[],this._nMips=5,this._renderTargetBright=new bt(1,1,{depthBuffer:!1,type:$e}),this._renderTargetBright.texture.name="UnrealBloomPass.bright",this._renderTargetBright.texture.generateMipmaps=!1;for(let n=0;n{let c=this.inputNode,l=s1(c.rgb),u=yr(this.threshold,this.threshold.add(this.smoothWidth),l);return Vc(Nn(0),c,u)});this._highPassFilterMaterial=this._highPassFilterMaterial||new Ne,this._highPassFilterMaterial.fragmentNode=t().context(e.getSharedContext()),this._highPassFilterMaterial.name="Bloom_highPass",this._highPassFilterMaterial.needsUpdate=!0;let s=[6,10,14,18,22];for(let c=0;c{let u=An(1.2).sub(c);return Vc(c,u,l)}).setLayout({name:"lerpBloomFactor",type:"float",inputs:[{name:"factor",type:"float"},{name:"radius",type:"float"}]}),a=Oc(()=>{let c=r(i.element(0),this.radius).mul(Nn(n.element(0),1)).mul(this._textureNodeBlur0),l=r(i.element(1),this.radius).mul(Nn(n.element(1),1)).mul(this._textureNodeBlur1),u=r(i.element(2),this.radius).mul(Nn(n.element(2),1)).mul(this._textureNodeBlur2),h=r(i.element(3),this.radius).mul(Nn(n.element(3),1)).mul(this._textureNodeBlur3),d=r(i.element(4),this.radius).mul(Nn(n.element(4),1)).mul(this._textureNodeBlur4);return c.add(l).add(u).add(h).add(d).mul(this.strength)});return this._compositeMaterial=this._compositeMaterial||new Ne,this._compositeMaterial.fragmentNode=a().context(e.getSharedContext()),this._compositeMaterial.name="Bloom_comp",this._compositeMaterial.needsUpdate=!0,this._textureOutput}dispose(){for(let e=0;en.sample(p),h=Oc(()=>{let p=u(l).rgb.mul(r.element(0)).toVar();return e1({start:x0(1),end:x0(t),type:"int",condition:"<"},({i:m})=>{let g=An(m),y=r.element(m),x=c.mul(a).mul(g),_=u(l.add(x)).rgb,w=u(l.sub(x)).rgb;p.addAssign(Nd(_,w).mul(y))}),Nn(p,1)}),d=new Ne;return d.fragmentNode=h().context(e.getSharedContext()),d.name="Bloom_separable",d.needsUpdate=!0,d.colorTexture=n,d.direction=c,d.invSize=a,d}},c1=(o,e,t,s)=>new S0(r1(o),e,t,s);var fI="https://i.postimg.cc/XYwvXN8D/img-4.png",mI="https://i.postimg.cc/2SHKQh2q/raw-4.webp",l1=300,u1=300,h1=.4;async function gI(){let o=document.getElementById("m3d-hero-canvas");if(!o)return;let e=new Kh({canvas:o,antialias:!1});await e.init(),e.setSize(o.offsetWidth,o.offsetHeight),e.setPixelRatio(Math.min(window.devicePixelRatio,2));let t=new On,s=new it(75,o.offsetWidth/o.offsetHeight,.1,1e3);s.position.z=5;let i=new ia,[n,r]=await Promise.all([i.loadAsync(fI),i.loadAsync(mI)]),a=Us(new re(0)),c=Us(0),l=Us(0),u=Ls(r),h=Ls(n,xr().add(u.r.mul(a).mul(.01))),d=An(l1).div(u1),p=b0(xr().x.mul(d),xr().y),m=b0(120),g=i1(p.mul(m),2).sub(1),y=n1(p.mul(m).div(2)),x=An(yr(.5,.49,An(g.length()))).mul(y),_=Rd(yr(0,.02,y0(u.sub(c)))),w=x.mul(_).mul(_0(10,0,0)),S=new xc({colorNode:t1(h,w),transparent:!0,opacity:0});function E(){let ae=s.fov*Math.PI/180,fe=2*Math.tan(ae/2)*Math.abs(s.position.z),Fe=fe*s.aspect,Gt=l1/u1,Vs=Fe/fe,Ed=Gt>Vs?Fe:fe*Gt,kc=Gt>Vs?Fe/Gt:fe;return[Ed*h1,kc*h1,1]}let B=new Zt(new Vr,S);B.scale.set(...E()),t.add(B);let N=new ed(e),I=o1(t,s).getTextureNode("output"),k=c1(I,1,.5,1),W=yr(0,An(.05),y0(xr().y.sub(l))),X=_0(1,0,0).mul(Rd(W)).mul(.4),Y=Vc(I,Nd(I,X),yr(.9,1,Rd(W)));N.outputNode=Y.add(k);let ee=new re(0);window.addEventListener("mousemove",ae=>{ee.x=ae.clientX/window.innerWidth*2-1,ee.y=-(ae.clientY/window.innerHeight*2-1)});function Q(){let ae=o.offsetWidth,fe=o.offsetHeight;e.setSize(ae,fe),s.aspect=ae/fe,s.updateProjectionMatrix(),B.scale.set(...E())}window.addEventListener("resize",Q),document.querySelectorAll(".m3d-hw").forEach((ae,fe)=>{let Fe=parseInt(ae.dataset.delay)||fe*600;setTimeout(()=>ae.classList.add("m3d-hw-visible"),Fe)});let ie=null,Pe=0;function Se(ae){ie||(ie=ae);let fe=(ae-ie)/1e3;c.value=Math.sin(fe*.5)*.5+.5,l.value=Math.sin(fe*.5)*.5+.5,a.value=ee,Pe=Va.lerp(Pe,1,.04),S.opacity=Pe,N.renderAsync().then(()=>requestAnimationFrame(Se))}requestAnimationFrame(Se)}gI().catch(o=>console.warn("[m3d-hero] WebGPU init failed:",o)); +/*! Bundled license information: + +three/build/three.core.js: +three/build/three.webgpu.js: +three/build/three.tsl.js: + (** + * @license + * Copyright 2010-2026 Three.js Authors + * SPDX-License-Identifier: MIT + *) +*/ diff --git a/backup/uploads/v2-models/auto/ams-silica-holder-full-drilled.jpg b/backup/uploads/v2-models/auto/ams-silica-holder-full-drilled.jpg new file mode 100644 index 0000000..4a312cf Binary files /dev/null and b/backup/uploads/v2-models/auto/ams-silica-holder-full-drilled.jpg differ diff --git a/backup/uploads/v2-models/auto/any-box-generator.jpg b/backup/uploads/v2-models/auto/any-box-generator.jpg new file mode 100644 index 0000000..f7afc48 Binary files /dev/null and b/backup/uploads/v2-models/auto/any-box-generator.jpg differ diff --git a/backup/uploads/v2-models/auto/arborcycle-calendar.jpg b/backup/uploads/v2-models/auto/arborcycle-calendar.jpg new file mode 100644 index 0000000..ffc657f Binary files /dev/null and b/backup/uploads/v2-models/auto/arborcycle-calendar.jpg differ diff --git a/backup/uploads/v2-models/auto/ballerina-silhouette-figure-de.jpg b/backup/uploads/v2-models/auto/ballerina-silhouette-figure-de.jpg new file mode 100644 index 0000000..5bb4cb1 Binary files /dev/null and b/backup/uploads/v2-models/auto/ballerina-silhouette-figure-de.jpg differ diff --git a/backup/uploads/v2-models/auto/bambulab-xxl-waste-purge-flush.jpg b/backup/uploads/v2-models/auto/bambulab-xxl-waste-purge-flush.jpg new file mode 100644 index 0000000..ba01da4 Binary files /dev/null and b/backup/uploads/v2-models/auto/bambulab-xxl-waste-purge-flush.jpg differ diff --git a/backup/uploads/v2-models/auto/bento-smoke-stack-stage-2-air-.jpg b/backup/uploads/v2-models/auto/bento-smoke-stack-stage-2-air-.jpg new file mode 100644 index 0000000..799b187 Binary files /dev/null and b/backup/uploads/v2-models/auto/bento-smoke-stack-stage-2-air-.jpg differ diff --git a/backup/uploads/v2-models/auto/dupont-connector-bridge.jpg b/backup/uploads/v2-models/auto/dupont-connector-bridge.jpg new file mode 100644 index 0000000..626b544 Binary files /dev/null and b/backup/uploads/v2-models/auto/dupont-connector-bridge.jpg differ diff --git a/backup/uploads/v2-models/auto/folding-wall-hook.jpg b/backup/uploads/v2-models/auto/folding-wall-hook.jpg new file mode 100644 index 0000000..0ad200f Binary files /dev/null and b/backup/uploads/v2-models/auto/folding-wall-hook.jpg differ diff --git a/backup/uploads/v2-models/auto/full-desk-organizer---monitor-.jpg b/backup/uploads/v2-models/auto/full-desk-organizer---monitor-.jpg new file mode 100644 index 0000000..5b4bc71 Binary files /dev/null and b/backup/uploads/v2-models/auto/full-desk-organizer---monitor-.jpg differ diff --git a/backup/uploads/v2-models/auto/ikea-hook.jpg b/backup/uploads/v2-models/auto/ikea-hook.jpg new file mode 100644 index 0000000..cdded09 Binary files /dev/null and b/backup/uploads/v2-models/auto/ikea-hook.jpg differ diff --git a/backup/uploads/v2-models/auto/knurled-knobs-for-m2-5-to-m8-i.jpg b/backup/uploads/v2-models/auto/knurled-knobs-for-m2-5-to-m8-i.jpg new file mode 100644 index 0000000..787f976 Binary files /dev/null and b/backup/uploads/v2-models/auto/knurled-knobs-for-m2-5-to-m8-i.jpg differ diff --git a/backup/uploads/v2-models/auto/low-poly-bowl-trinket-tray.jpg b/backup/uploads/v2-models/auto/low-poly-bowl-trinket-tray.jpg new file mode 100644 index 0000000..e87028f Binary files /dev/null and b/backup/uploads/v2-models/auto/low-poly-bowl-trinket-tray.jpg differ diff --git a/backup/uploads/v2-models/auto/mw-benchy.jpg b/backup/uploads/v2-models/auto/mw-benchy.jpg new file mode 100644 index 0000000..3495522 Binary files /dev/null and b/backup/uploads/v2-models/auto/mw-benchy.jpg differ diff --git a/backup/uploads/v2-models/auto/mw-cable-management.jpg b/backup/uploads/v2-models/auto/mw-cable-management.jpg new file mode 100644 index 0000000..fcb4b3e Binary files /dev/null and b/backup/uploads/v2-models/auto/mw-cable-management.jpg differ diff --git a/backup/uploads/v2-models/auto/mw-desk-organizer.jpg b/backup/uploads/v2-models/auto/mw-desk-organizer.jpg new file mode 100644 index 0000000..65b92a9 Binary files /dev/null and b/backup/uploads/v2-models/auto/mw-desk-organizer.jpg differ diff --git a/backup/uploads/v2-models/auto/mw-headphone-hook.jpg b/backup/uploads/v2-models/auto/mw-headphone-hook.jpg new file mode 100644 index 0000000..4bfa66a Binary files /dev/null and b/backup/uploads/v2-models/auto/mw-headphone-hook.jpg differ diff --git a/backup/uploads/v2-models/auto/mw-phone-stand.jpg b/backup/uploads/v2-models/auto/mw-phone-stand.jpg new file mode 100644 index 0000000..6713176 Binary files /dev/null and b/backup/uploads/v2-models/auto/mw-phone-stand.jpg differ diff --git a/backup/uploads/v2-models/auto/no-smoking-table.jpg b/backup/uploads/v2-models/auto/no-smoking-table.jpg new file mode 100644 index 0000000..58aa225 Binary files /dev/null and b/backup/uploads/v2-models/auto/no-smoking-table.jpg differ diff --git a/backup/uploads/v2-models/auto/rubber-loom-band-handel-pin.jpg b/backup/uploads/v2-models/auto/rubber-loom-band-handel-pin.jpg new file mode 100644 index 0000000..e248f01 Binary files /dev/null and b/backup/uploads/v2-models/auto/rubber-loom-band-handel-pin.jpg differ diff --git a/backup/uploads/v2-models/auto/stargate-with-a-working-iris.jpg b/backup/uploads/v2-models/auto/stargate-with-a-working-iris.jpg new file mode 100644 index 0000000..3aa29f3 Binary files /dev/null and b/backup/uploads/v2-models/auto/stargate-with-a-working-iris.jpg differ diff --git a/backup/uploads/v2-models/auto/tiny-table-vise.jpg b/backup/uploads/v2-models/auto/tiny-table-vise.jpg new file mode 100644 index 0000000..36a8c4b Binary files /dev/null and b/backup/uploads/v2-models/auto/tiny-table-vise.jpg differ diff --git a/backup/uploads/v2-models/auto/wallart-fist-and-bricks.jpg b/backup/uploads/v2-models/auto/wallart-fist-and-bricks.jpg new file mode 100644 index 0000000..0439ad3 Binary files /dev/null and b/backup/uploads/v2-models/auto/wallart-fist-and-bricks.jpg differ diff --git a/backup/uploads/v2-models/auto/z-motor-cover-blv-mgn-cube.jpg b/backup/uploads/v2-models/auto/z-motor-cover-blv-mgn-cube.jpg new file mode 100644 index 0000000..0cb0550 Binary files /dev/null and b/backup/uploads/v2-models/auto/z-motor-cover-blv-mgn-cube.jpg differ diff --git a/backup/uploads/v2-models/cable-clip.jpg b/backup/uploads/v2-models/cable-clip.jpg new file mode 100644 index 0000000..38b2ddf Binary files /dev/null and b/backup/uploads/v2-models/cable-clip.jpg differ diff --git a/backup/uploads/v2-models/filament-storage.jpg b/backup/uploads/v2-models/filament-storage.jpg new file mode 100644 index 0000000..aa24d4d Binary files /dev/null and b/backup/uploads/v2-models/filament-storage.jpg differ diff --git a/backup/uploads/v2-models/flexi-snake.jpg b/backup/uploads/v2-models/flexi-snake.jpg new file mode 100644 index 0000000..5f8f0e5 Binary files /dev/null and b/backup/uploads/v2-models/flexi-snake.jpg differ diff --git a/backup/uploads/v2-models/gridfinity.jpg b/backup/uploads/v2-models/gridfinity.jpg new file mode 100644 index 0000000..f3cdfdb Binary files /dev/null and b/backup/uploads/v2-models/gridfinity.jpg differ diff --git a/backup/uploads/v2-models/low-poly-fox.jpg b/backup/uploads/v2-models/low-poly-fox.jpg new file mode 100644 index 0000000..af6d6c0 Binary files /dev/null and b/backup/uploads/v2-models/low-poly-fox.jpg differ diff --git a/backup/uploads/v2-models/model-1.jpg b/backup/uploads/v2-models/model-1.jpg new file mode 100644 index 0000000..84a7b6d Binary files /dev/null and b/backup/uploads/v2-models/model-1.jpg differ diff --git a/backup/uploads/v2-models/model-2.jpg b/backup/uploads/v2-models/model-2.jpg new file mode 100644 index 0000000..b9d6be8 Binary files /dev/null and b/backup/uploads/v2-models/model-2.jpg differ diff --git a/backup/uploads/v2-models/model-3.jpg b/backup/uploads/v2-models/model-3.jpg new file mode 100644 index 0000000..d1f386b Binary files /dev/null and b/backup/uploads/v2-models/model-3.jpg differ diff --git a/backup/uploads/v2-models/model-4.jpg b/backup/uploads/v2-models/model-4.jpg new file mode 100644 index 0000000..e348a36 Binary files /dev/null and b/backup/uploads/v2-models/model-4.jpg differ diff --git a/backup/uploads/v2-models/model-5.jpg b/backup/uploads/v2-models/model-5.jpg new file mode 100644 index 0000000..61d80fd Binary files /dev/null and b/backup/uploads/v2-models/model-5.jpg differ diff --git a/backup/uploads/v2-models/model-6.jpg b/backup/uploads/v2-models/model-6.jpg new file mode 100644 index 0000000..c65916c Binary files /dev/null and b/backup/uploads/v2-models/model-6.jpg differ diff --git a/backup/uploads/v2-models/parcel-opener.jpg b/backup/uploads/v2-models/parcel-opener.jpg new file mode 100644 index 0000000..c268f55 Binary files /dev/null and b/backup/uploads/v2-models/parcel-opener.jpg differ diff --git a/backup/uploads/v2-yt/3d-printing-nerd.jpg b/backup/uploads/v2-yt/3d-printing-nerd.jpg new file mode 100644 index 0000000..ec8117f Binary files /dev/null and b/backup/uploads/v2-yt/3d-printing-nerd.jpg differ diff --git a/backup/uploads/v2-yt/bambu-lab.svg b/backup/uploads/v2-yt/bambu-lab.svg new file mode 100644 index 0000000..4407db6 --- /dev/null +++ b/backup/uploads/v2-yt/bambu-lab.svg @@ -0,0 +1,4 @@ + + +BL + diff --git a/backup/uploads/v2-yt/bastlwastl.jpg b/backup/uploads/v2-yt/bastlwastl.jpg new file mode 100644 index 0000000..9af14a7 Binary files /dev/null and b/backup/uploads/v2-yt/bastlwastl.jpg differ diff --git a/backup/uploads/v2-yt/bavaria.svg b/backup/uploads/v2-yt/bavaria.svg new file mode 100644 index 0000000..f9faeba --- /dev/null +++ b/backup/uploads/v2-yt/bavaria.svg @@ -0,0 +1,5 @@ + + + +BF + diff --git a/backup/uploads/v2-yt/chep.jpg b/backup/uploads/v2-yt/chep.jpg new file mode 100644 index 0000000..aea6fae Binary files /dev/null and b/backup/uploads/v2-yt/chep.jpg differ diff --git a/backup/uploads/v2-yt/cnc-kitchen.jpg b/backup/uploads/v2-yt/cnc-kitchen.jpg new file mode 100644 index 0000000..072f1ad Binary files /dev/null and b/backup/uploads/v2-yt/cnc-kitchen.jpg differ diff --git a/backup/uploads/v2-yt/extrudr.svg b/backup/uploads/v2-yt/extrudr.svg new file mode 100644 index 0000000..814bd2b --- /dev/null +++ b/backup/uploads/v2-yt/extrudr.svg @@ -0,0 +1,5 @@ + + + +EX + diff --git a/backup/uploads/v2-yt/filament-unger.svg b/backup/uploads/v2-yt/filament-unger.svg new file mode 100644 index 0000000..ea50a5b --- /dev/null +++ b/backup/uploads/v2-yt/filament-unger.svg @@ -0,0 +1,5 @@ + + + +FU + diff --git a/backup/uploads/v2-yt/make-anything.svg b/backup/uploads/v2-yt/make-anything.svg new file mode 100644 index 0000000..5457767 --- /dev/null +++ b/backup/uploads/v2-yt/make-anything.svg @@ -0,0 +1,4 @@ + + +MA + diff --git a/backup/uploads/v2-yt/makers-muse.jpg b/backup/uploads/v2-yt/makers-muse.jpg new file mode 100644 index 0000000..ada067a Binary files /dev/null and b/backup/uploads/v2-yt/makers-muse.jpg differ diff --git a/backup/uploads/v2-yt/mlhz-shop.svg b/backup/uploads/v2-yt/mlhz-shop.svg new file mode 100644 index 0000000..773af84 --- /dev/null +++ b/backup/uploads/v2-yt/mlhz-shop.svg @@ -0,0 +1,6 @@ + + + +MLHZ +SHOP + diff --git a/backup/uploads/v2-yt/modbot.jpg b/backup/uploads/v2-yt/modbot.jpg new file mode 100644 index 0000000..89e5bcc Binary files /dev/null and b/backup/uploads/v2-yt/modbot.jpg differ diff --git a/backup/uploads/v2-yt/mpox.svg b/backup/uploads/v2-yt/mpox.svg new file mode 100644 index 0000000..ab45ab3 --- /dev/null +++ b/backup/uploads/v2-yt/mpox.svg @@ -0,0 +1,4 @@ + + +MP + diff --git a/backup/uploads/v2-yt/nobufil.svg b/backup/uploads/v2-yt/nobufil.svg new file mode 100644 index 0000000..5ff36ea --- /dev/null +++ b/backup/uploads/v2-yt/nobufil.svg @@ -0,0 +1,5 @@ + + + +NB + diff --git a/backup/uploads/v2-yt/prusa3d.jpg b/backup/uploads/v2-yt/prusa3d.jpg new file mode 100644 index 0000000..dd8420f Binary files /dev/null and b/backup/uploads/v2-yt/prusa3d.jpg differ diff --git a/backup/uploads/v2-yt/schwaighofer.jpg b/backup/uploads/v2-yt/schwaighofer.jpg new file mode 100644 index 0000000..6776ab6 Binary files /dev/null and b/backup/uploads/v2-yt/schwaighofer.jpg differ diff --git a/backup/uploads/v2-yt/slicer-bambustudio.svg b/backup/uploads/v2-yt/slicer-bambustudio.svg new file mode 100644 index 0000000..cda4f1e --- /dev/null +++ b/backup/uploads/v2-yt/slicer-bambustudio.svg @@ -0,0 +1,4 @@ + + +BS + diff --git a/backup/uploads/v2-yt/slicer-cura.svg b/backup/uploads/v2-yt/slicer-cura.svg new file mode 100644 index 0000000..1c0a432 --- /dev/null +++ b/backup/uploads/v2-yt/slicer-cura.svg @@ -0,0 +1,4 @@ + + +CU + diff --git a/backup/uploads/v2-yt/slicer-klipper.svg b/backup/uploads/v2-yt/slicer-klipper.svg new file mode 100644 index 0000000..27739b7 --- /dev/null +++ b/backup/uploads/v2-yt/slicer-klipper.svg @@ -0,0 +1,4 @@ + + +KL + diff --git a/backup/uploads/v2-yt/slicer-marlin.svg b/backup/uploads/v2-yt/slicer-marlin.svg new file mode 100644 index 0000000..51b0569 --- /dev/null +++ b/backup/uploads/v2-yt/slicer-marlin.svg @@ -0,0 +1,4 @@ + + +MA + diff --git a/backup/uploads/v2-yt/slicer-orcaslicer.svg b/backup/uploads/v2-yt/slicer-orcaslicer.svg new file mode 100644 index 0000000..e8b29b7 --- /dev/null +++ b/backup/uploads/v2-yt/slicer-orcaslicer.svg @@ -0,0 +1,4 @@ + + +OS + diff --git a/backup/uploads/v2-yt/slicer-prusaslicer.svg b/backup/uploads/v2-yt/slicer-prusaslicer.svg new file mode 100644 index 0000000..1e5445c --- /dev/null +++ b/backup/uploads/v2-yt/slicer-prusaslicer.svg @@ -0,0 +1,4 @@ + + +PS + diff --git a/backup/uploads/v2-yt/spectrum.svg b/backup/uploads/v2-yt/spectrum.svg new file mode 100644 index 0000000..d137887 --- /dev/null +++ b/backup/uploads/v2-yt/spectrum.svg @@ -0,0 +1,5 @@ + + + +SP + diff --git a/backup/uploads/v2-yt/teaching-tech.jpg b/backup/uploads/v2-yt/teaching-tech.jpg new file mode 100644 index 0000000..5302b85 Binary files /dev/null and b/backup/uploads/v2-yt/teaching-tech.jpg differ diff --git a/backup/uploads/v2-yt/thomas-sanladerer.svg b/backup/uploads/v2-yt/thomas-sanladerer.svg new file mode 100644 index 0000000..e9aab85 --- /dev/null +++ b/backup/uploads/v2-yt/thomas-sanladerer.svg @@ -0,0 +1,4 @@ + + +TS + diff --git a/backup/wordpress_dump.sql b/backup/wordpress_dump.sql new file mode 100644 index 0000000..7264b99 --- /dev/null +++ b/backup/wordpress_dump.sql @@ -0,0 +1,2590 @@ +/*M!999999\- enable the sandbox mode */ +-- MariaDB dump 10.19-11.8.6-MariaDB, for debian-linux-gnu (x86_64) +-- +-- Host: localhost Database: wordpress +-- ------------------------------------------------------ +-- Server version 11.8.6-MariaDB-ubu2404 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */; + +-- +-- Table structure for table `wp_commentmeta` +-- + +DROP TABLE IF EXISTS `wp_commentmeta`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_commentmeta` ( + `meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `comment_id` bigint(20) unsigned NOT NULL DEFAULT 0, + `meta_key` varchar(255) DEFAULT NULL, + `meta_value` longtext DEFAULT NULL, + PRIMARY KEY (`meta_id`), + KEY `comment_id` (`comment_id`), + KEY `meta_key` (`meta_key`(191)) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_commentmeta` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_commentmeta` WRITE; +/*!40000 ALTER TABLE `wp_commentmeta` DISABLE KEYS */; +/*!40000 ALTER TABLE `wp_commentmeta` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_comments` +-- + +DROP TABLE IF EXISTS `wp_comments`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_comments` ( + `comment_ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `comment_post_ID` bigint(20) unsigned NOT NULL DEFAULT 0, + `comment_author` tinytext NOT NULL, + `comment_author_email` varchar(100) NOT NULL DEFAULT '', + `comment_author_url` varchar(200) NOT NULL DEFAULT '', + `comment_author_IP` varchar(100) NOT NULL DEFAULT '', + `comment_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `comment_date_gmt` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `comment_content` text NOT NULL, + `comment_karma` int(11) NOT NULL DEFAULT 0, + `comment_approved` varchar(20) NOT NULL DEFAULT '1', + `comment_agent` varchar(255) NOT NULL DEFAULT '', + `comment_type` varchar(20) NOT NULL DEFAULT 'comment', + `comment_parent` bigint(20) unsigned NOT NULL DEFAULT 0, + `user_id` bigint(20) unsigned NOT NULL DEFAULT 0, + PRIMARY KEY (`comment_ID`), + KEY `comment_post_ID` (`comment_post_ID`), + KEY `comment_approved_date_gmt` (`comment_approved`,`comment_date_gmt`), + KEY `comment_date_gmt` (`comment_date_gmt`), + KEY `comment_parent` (`comment_parent`), + KEY `comment_author_email` (`comment_author_email`(10)) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_comments` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_comments` WRITE; +/*!40000 ALTER TABLE `wp_comments` DISABLE KEYS */; +/*!40000 ALTER TABLE `wp_comments` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_e_events` +-- + +DROP TABLE IF EXISTS `wp_e_events`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_e_events` ( + `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `event_data` text DEFAULT NULL, + `created_at` datetime NOT NULL, + PRIMARY KEY (`id`), + KEY `created_at_index` (`created_at`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_e_events` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_e_events` WRITE; +/*!40000 ALTER TABLE `wp_e_events` DISABLE KEYS */; +/*!40000 ALTER TABLE `wp_e_events` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_links` +-- + +DROP TABLE IF EXISTS `wp_links`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_links` ( + `link_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `link_url` varchar(255) NOT NULL DEFAULT '', + `link_name` varchar(255) NOT NULL DEFAULT '', + `link_image` varchar(255) NOT NULL DEFAULT '', + `link_target` varchar(25) NOT NULL DEFAULT '', + `link_description` varchar(255) NOT NULL DEFAULT '', + `link_visible` varchar(20) NOT NULL DEFAULT 'Y', + `link_owner` bigint(20) unsigned NOT NULL DEFAULT 1, + `link_rating` int(11) NOT NULL DEFAULT 0, + `link_updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `link_rel` varchar(255) NOT NULL DEFAULT '', + `link_notes` mediumtext NOT NULL, + `link_rss` varchar(255) NOT NULL DEFAULT '', + PRIMARY KEY (`link_id`), + KEY `link_visible` (`link_visible`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_links` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_links` WRITE; +/*!40000 ALTER TABLE `wp_links` DISABLE KEYS */; +/*!40000 ALTER TABLE `wp_links` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_options` +-- + +DROP TABLE IF EXISTS `wp_options`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_options` ( + `option_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `option_name` varchar(191) NOT NULL DEFAULT '', + `option_value` longtext NOT NULL, + `autoload` varchar(20) NOT NULL DEFAULT 'yes', + PRIMARY KEY (`option_id`), + UNIQUE KEY `option_name` (`option_name`), + KEY `autoload` (`autoload`) +) ENGINE=InnoDB AUTO_INCREMENT=4528 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_options` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_options` WRITE; +/*!40000 ALTER TABLE `wp_options` DISABLE KEYS */; +INSERT INTO `wp_options` VALUES +(1,'cron','a:14:{i:1774742296;a:1:{s:34:\"wp_privacy_delete_old_export_files\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:6:\"hourly\";s:4:\"args\";a:0:{}s:8:\"interval\";i:3600;}}}i:1774767745;a:3:{s:19:\"wp_scheduled_delete\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:5:\"daily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:86400;}}s:25:\"delete_expired_transients\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:5:\"daily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:86400;}}s:21:\"wp_update_user_counts\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:10:\"twicedaily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:43200;}}}i:1774767746;a:1:{s:30:\"wp_scheduled_auto_draft_delete\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:5:\"daily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:86400;}}}i:1774768290;a:1:{s:15:\"ao_cachechecker\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:10:\"twicedaily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:43200;}}}i:1774768480;a:1:{s:31:\"wpseo_permalink_structure_check\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:5:\"daily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:86400;}}}i:1774768533;a:2:{s:29:\"wpseo_detect_default_seo_data\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:5:\"daily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:86400;}}s:13:\"wpseo-reindex\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:5:\"daily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:86400;}}}i:1774771095;a:1:{s:16:\"wp_version_check\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:10:\"twicedaily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:43200;}}}i:1774772895;a:1:{s:17:\"wp_update_plugins\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:10:\"twicedaily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:43200;}}}i:1774774695;a:1:{s:16:\"wp_update_themes\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:10:\"twicedaily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:43200;}}}i:1774810696;a:1:{s:32:\"recovery_mode_clean_expired_keys\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:5:\"daily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:86400;}}}i:1774810701;a:1:{s:28:\"elementor/tracker/send_event\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:5:\"daily\";s:4:\"args\";a:0:{}s:8:\"interval\";i:86400;}}}i:1775069897;a:1:{s:30:\"wp_delete_temp_updater_backups\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:6:\"weekly\";s:4:\"args\";a:0:{}s:8:\"interval\";i:604800;}}}i:1775156296;a:1:{s:30:\"wp_site_health_scheduled_check\";a:1:{s:32:\"40cd750bba9870f18aada2478b24840a\";a:3:{s:8:\"schedule\";s:6:\"weekly\";s:4:\"args\";a:0:{}s:8:\"interval\";i:604800;}}}s:7:\"version\";i:2;}','on'), +(2,'siteurl','http://87.106.117.190','on'), +(3,'home','http://87.106.117.190','on'), +(4,'blogname','m0lzi_3D – 3D-Druck Community','on'), +(5,'blogdescription','Deine Community für 3D-Druck: Guides, Models, News und mehr','on'), +(6,'users_can_register','0','on'), +(7,'admin_email','info@molzberger.org','on'), +(8,'start_of_week','1','on'), +(9,'use_balanceTags','0','on'), +(10,'use_smilies','1','on'), +(11,'require_name_email','1','on'), +(12,'comments_notify','1','on'), +(13,'posts_per_rss','10','on'), +(14,'rss_use_excerpt','0','on'), +(15,'mailserver_url','mail.example.com','on'), +(16,'mailserver_login','login@example.com','on'), +(17,'mailserver_pass','','on'), +(18,'mailserver_port','110','on'), +(19,'default_category','1','on'), +(20,'default_comment_status','closed','on'), +(21,'default_ping_status','closed','on'), +(22,'default_pingback_flag','1','on'), +(23,'posts_per_page','10','on'), +(24,'date_format','d. F Y','on'), +(25,'time_format','H:i','on'), +(26,'links_updated_date_format','F j, Y g:i a','on'), +(27,'comment_moderation','0','on'), +(28,'moderation_notify','1','on'), +(29,'permalink_structure','/%postname%/','on'), +(30,'rewrite_rules','a:146:{s:11:\"^wp-json/?$\";s:22:\"index.php?rest_route=/\";s:14:\"^wp-json/(.*)?\";s:33:\"index.php?rest_route=/$matches[1]\";s:21:\"^index.php/wp-json/?$\";s:22:\"index.php?rest_route=/\";s:24:\"^index.php/wp-json/(.*)?\";s:33:\"index.php?rest_route=/$matches[1]\";s:17:\"^wp-sitemap\\.xml$\";s:23:\"index.php?sitemap=index\";s:17:\"^wp-sitemap\\.xsl$\";s:36:\"index.php?sitemap-stylesheet=sitemap\";s:23:\"^wp-sitemap-index\\.xsl$\";s:34:\"index.php?sitemap-stylesheet=index\";s:48:\"^wp-sitemap-([a-z]+?)-([a-z\\d_-]+?)-(\\d+?)\\.xml$\";s:75:\"index.php?sitemap=$matches[1]&sitemap-subtype=$matches[2]&paged=$matches[3]\";s:34:\"^wp-sitemap-([a-z]+?)-(\\d+?)\\.xml$\";s:47:\"index.php?sitemap=$matches[1]&paged=$matches[2]\";s:47:\"category/(.+?)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:52:\"index.php?category_name=$matches[1]&feed=$matches[2]\";s:42:\"category/(.+?)/(feed|rdf|rss|rss2|atom)/?$\";s:52:\"index.php?category_name=$matches[1]&feed=$matches[2]\";s:23:\"category/(.+?)/embed/?$\";s:46:\"index.php?category_name=$matches[1]&embed=true\";s:35:\"category/(.+?)/page/?([0-9]{1,})/?$\";s:53:\"index.php?category_name=$matches[1]&paged=$matches[2]\";s:17:\"category/(.+?)/?$\";s:35:\"index.php?category_name=$matches[1]\";s:44:\"tag/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:42:\"index.php?tag=$matches[1]&feed=$matches[2]\";s:39:\"tag/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:42:\"index.php?tag=$matches[1]&feed=$matches[2]\";s:20:\"tag/([^/]+)/embed/?$\";s:36:\"index.php?tag=$matches[1]&embed=true\";s:32:\"tag/([^/]+)/page/?([0-9]{1,})/?$\";s:43:\"index.php?tag=$matches[1]&paged=$matches[2]\";s:14:\"tag/([^/]+)/?$\";s:25:\"index.php?tag=$matches[1]\";s:45:\"type/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:50:\"index.php?post_format=$matches[1]&feed=$matches[2]\";s:40:\"type/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:50:\"index.php?post_format=$matches[1]&feed=$matches[2]\";s:21:\"type/([^/]+)/embed/?$\";s:44:\"index.php?post_format=$matches[1]&embed=true\";s:33:\"type/([^/]+)/page/?([0-9]{1,})/?$\";s:51:\"index.php?post_format=$matches[1]&paged=$matches[2]\";s:15:\"type/([^/]+)/?$\";s:33:\"index.php?post_format=$matches[1]\";s:46:\"e-floating-buttons/[^/]+/attachment/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:56:\"e-floating-buttons/[^/]+/attachment/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:76:\"e-floating-buttons/[^/]+/attachment/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:71:\"e-floating-buttons/[^/]+/attachment/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:71:\"e-floating-buttons/[^/]+/attachment/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:52:\"e-floating-buttons/[^/]+/attachment/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";s:35:\"e-floating-buttons/([^/]+)/embed/?$\";s:51:\"index.php?e-floating-buttons=$matches[1]&embed=true\";s:39:\"e-floating-buttons/([^/]+)/trackback/?$\";s:45:\"index.php?e-floating-buttons=$matches[1]&tb=1\";s:47:\"e-floating-buttons/([^/]+)/page/?([0-9]{1,})/?$\";s:58:\"index.php?e-floating-buttons=$matches[1]&paged=$matches[2]\";s:54:\"e-floating-buttons/([^/]+)/comment-page-([0-9]{1,})/?$\";s:58:\"index.php?e-floating-buttons=$matches[1]&cpage=$matches[2]\";s:43:\"e-floating-buttons/([^/]+)(?:/([0-9]+))?/?$\";s:57:\"index.php?e-floating-buttons=$matches[1]&page=$matches[2]\";s:35:\"e-floating-buttons/[^/]+/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:45:\"e-floating-buttons/[^/]+/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:65:\"e-floating-buttons/[^/]+/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:60:\"e-floating-buttons/[^/]+/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:60:\"e-floating-buttons/[^/]+/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:41:\"e-floating-buttons/[^/]+/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";s:47:\"elementor_component/[^/]+/attachment/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:57:\"elementor_component/[^/]+/attachment/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:77:\"elementor_component/[^/]+/attachment/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:72:\"elementor_component/[^/]+/attachment/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:72:\"elementor_component/[^/]+/attachment/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:53:\"elementor_component/[^/]+/attachment/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";s:36:\"elementor_component/([^/]+)/embed/?$\";s:52:\"index.php?elementor_component=$matches[1]&embed=true\";s:40:\"elementor_component/([^/]+)/trackback/?$\";s:46:\"index.php?elementor_component=$matches[1]&tb=1\";s:48:\"elementor_component/([^/]+)/page/?([0-9]{1,})/?$\";s:59:\"index.php?elementor_component=$matches[1]&paged=$matches[2]\";s:55:\"elementor_component/([^/]+)/comment-page-([0-9]{1,})/?$\";s:59:\"index.php?elementor_component=$matches[1]&cpage=$matches[2]\";s:44:\"elementor_component/([^/]+)(?:/([0-9]+))?/?$\";s:58:\"index.php?elementor_component=$matches[1]&page=$matches[2]\";s:36:\"elementor_component/[^/]+/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:46:\"elementor_component/[^/]+/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:66:\"elementor_component/[^/]+/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:61:\"elementor_component/[^/]+/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:61:\"elementor_component/[^/]+/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:42:\"elementor_component/[^/]+/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";s:40:\"elementor-hf/[^/]+/attachment/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:50:\"elementor-hf/[^/]+/attachment/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:70:\"elementor-hf/[^/]+/attachment/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:65:\"elementor-hf/[^/]+/attachment/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:65:\"elementor-hf/[^/]+/attachment/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:46:\"elementor-hf/[^/]+/attachment/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";s:29:\"elementor-hf/([^/]+)/embed/?$\";s:45:\"index.php?elementor-hf=$matches[1]&embed=true\";s:33:\"elementor-hf/([^/]+)/trackback/?$\";s:39:\"index.php?elementor-hf=$matches[1]&tb=1\";s:41:\"elementor-hf/([^/]+)/page/?([0-9]{1,})/?$\";s:52:\"index.php?elementor-hf=$matches[1]&paged=$matches[2]\";s:48:\"elementor-hf/([^/]+)/comment-page-([0-9]{1,})/?$\";s:52:\"index.php?elementor-hf=$matches[1]&cpage=$matches[2]\";s:37:\"elementor-hf/([^/]+)(?:/([0-9]+))?/?$\";s:51:\"index.php?elementor-hf=$matches[1]&page=$matches[2]\";s:29:\"elementor-hf/[^/]+/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:39:\"elementor-hf/[^/]+/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:59:\"elementor-hf/[^/]+/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:54:\"elementor-hf/[^/]+/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:54:\"elementor-hf/[^/]+/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:35:\"elementor-hf/[^/]+/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";s:12:\"robots\\.txt$\";s:18:\"index.php?robots=1\";s:13:\"favicon\\.ico$\";s:19:\"index.php?favicon=1\";s:12:\"sitemap\\.xml\";s:23:\"index.php?sitemap=index\";s:48:\".*wp-(atom|rdf|rss|rss2|feed|commentsrss2)\\.php$\";s:18:\"index.php?feed=old\";s:20:\".*wp-app\\.php(/.*)?$\";s:19:\"index.php?error=403\";s:18:\".*wp-register.php$\";s:23:\"index.php?register=true\";s:32:\"feed/(feed|rdf|rss|rss2|atom)/?$\";s:27:\"index.php?&feed=$matches[1]\";s:27:\"(feed|rdf|rss|rss2|atom)/?$\";s:27:\"index.php?&feed=$matches[1]\";s:8:\"embed/?$\";s:21:\"index.php?&embed=true\";s:20:\"page/?([0-9]{1,})/?$\";s:28:\"index.php?&paged=$matches[1]\";s:27:\"comment-page-([0-9]{1,})/?$\";s:38:\"index.php?&page_id=8&cpage=$matches[1]\";s:41:\"comments/feed/(feed|rdf|rss|rss2|atom)/?$\";s:42:\"index.php?&feed=$matches[1]&withcomments=1\";s:36:\"comments/(feed|rdf|rss|rss2|atom)/?$\";s:42:\"index.php?&feed=$matches[1]&withcomments=1\";s:17:\"comments/embed/?$\";s:21:\"index.php?&embed=true\";s:44:\"search/(.+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:40:\"index.php?s=$matches[1]&feed=$matches[2]\";s:39:\"search/(.+)/(feed|rdf|rss|rss2|atom)/?$\";s:40:\"index.php?s=$matches[1]&feed=$matches[2]\";s:20:\"search/(.+)/embed/?$\";s:34:\"index.php?s=$matches[1]&embed=true\";s:32:\"search/(.+)/page/?([0-9]{1,})/?$\";s:41:\"index.php?s=$matches[1]&paged=$matches[2]\";s:14:\"search/(.+)/?$\";s:23:\"index.php?s=$matches[1]\";s:47:\"author/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:50:\"index.php?author_name=$matches[1]&feed=$matches[2]\";s:42:\"author/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:50:\"index.php?author_name=$matches[1]&feed=$matches[2]\";s:23:\"author/([^/]+)/embed/?$\";s:44:\"index.php?author_name=$matches[1]&embed=true\";s:35:\"author/([^/]+)/page/?([0-9]{1,})/?$\";s:51:\"index.php?author_name=$matches[1]&paged=$matches[2]\";s:17:\"author/([^/]+)/?$\";s:33:\"index.php?author_name=$matches[1]\";s:69:\"([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/feed/(feed|rdf|rss|rss2|atom)/?$\";s:80:\"index.php?year=$matches[1]&monthnum=$matches[2]&day=$matches[3]&feed=$matches[4]\";s:64:\"([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/(feed|rdf|rss|rss2|atom)/?$\";s:80:\"index.php?year=$matches[1]&monthnum=$matches[2]&day=$matches[3]&feed=$matches[4]\";s:45:\"([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/embed/?$\";s:74:\"index.php?year=$matches[1]&monthnum=$matches[2]&day=$matches[3]&embed=true\";s:57:\"([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/page/?([0-9]{1,})/?$\";s:81:\"index.php?year=$matches[1]&monthnum=$matches[2]&day=$matches[3]&paged=$matches[4]\";s:39:\"([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/?$\";s:63:\"index.php?year=$matches[1]&monthnum=$matches[2]&day=$matches[3]\";s:56:\"([0-9]{4})/([0-9]{1,2})/feed/(feed|rdf|rss|rss2|atom)/?$\";s:64:\"index.php?year=$matches[1]&monthnum=$matches[2]&feed=$matches[3]\";s:51:\"([0-9]{4})/([0-9]{1,2})/(feed|rdf|rss|rss2|atom)/?$\";s:64:\"index.php?year=$matches[1]&monthnum=$matches[2]&feed=$matches[3]\";s:32:\"([0-9]{4})/([0-9]{1,2})/embed/?$\";s:58:\"index.php?year=$matches[1]&monthnum=$matches[2]&embed=true\";s:44:\"([0-9]{4})/([0-9]{1,2})/page/?([0-9]{1,})/?$\";s:65:\"index.php?year=$matches[1]&monthnum=$matches[2]&paged=$matches[3]\";s:26:\"([0-9]{4})/([0-9]{1,2})/?$\";s:47:\"index.php?year=$matches[1]&monthnum=$matches[2]\";s:43:\"([0-9]{4})/feed/(feed|rdf|rss|rss2|atom)/?$\";s:43:\"index.php?year=$matches[1]&feed=$matches[2]\";s:38:\"([0-9]{4})/(feed|rdf|rss|rss2|atom)/?$\";s:43:\"index.php?year=$matches[1]&feed=$matches[2]\";s:19:\"([0-9]{4})/embed/?$\";s:37:\"index.php?year=$matches[1]&embed=true\";s:31:\"([0-9]{4})/page/?([0-9]{1,})/?$\";s:44:\"index.php?year=$matches[1]&paged=$matches[2]\";s:13:\"([0-9]{4})/?$\";s:26:\"index.php?year=$matches[1]\";s:27:\".?.+?/attachment/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:37:\".?.+?/attachment/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:57:\".?.+?/attachment/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:52:\".?.+?/attachment/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:52:\".?.+?/attachment/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:33:\".?.+?/attachment/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";s:16:\"(.?.+?)/embed/?$\";s:41:\"index.php?pagename=$matches[1]&embed=true\";s:20:\"(.?.+?)/trackback/?$\";s:35:\"index.php?pagename=$matches[1]&tb=1\";s:40:\"(.?.+?)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:47:\"index.php?pagename=$matches[1]&feed=$matches[2]\";s:35:\"(.?.+?)/(feed|rdf|rss|rss2|atom)/?$\";s:47:\"index.php?pagename=$matches[1]&feed=$matches[2]\";s:28:\"(.?.+?)/page/?([0-9]{1,})/?$\";s:48:\"index.php?pagename=$matches[1]&paged=$matches[2]\";s:35:\"(.?.+?)/comment-page-([0-9]{1,})/?$\";s:48:\"index.php?pagename=$matches[1]&cpage=$matches[2]\";s:24:\"(.?.+?)(?:/([0-9]+))?/?$\";s:47:\"index.php?pagename=$matches[1]&page=$matches[2]\";s:27:\"[^/]+/attachment/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:37:\"[^/]+/attachment/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:57:\"[^/]+/attachment/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:52:\"[^/]+/attachment/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:52:\"[^/]+/attachment/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:33:\"[^/]+/attachment/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";s:16:\"([^/]+)/embed/?$\";s:37:\"index.php?name=$matches[1]&embed=true\";s:20:\"([^/]+)/trackback/?$\";s:31:\"index.php?name=$matches[1]&tb=1\";s:40:\"([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:43:\"index.php?name=$matches[1]&feed=$matches[2]\";s:35:\"([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:43:\"index.php?name=$matches[1]&feed=$matches[2]\";s:28:\"([^/]+)/page/?([0-9]{1,})/?$\";s:44:\"index.php?name=$matches[1]&paged=$matches[2]\";s:35:\"([^/]+)/comment-page-([0-9]{1,})/?$\";s:44:\"index.php?name=$matches[1]&cpage=$matches[2]\";s:24:\"([^/]+)(?:/([0-9]+))?/?$\";s:43:\"index.php?name=$matches[1]&page=$matches[2]\";s:16:\"[^/]+/([^/]+)/?$\";s:32:\"index.php?attachment=$matches[1]\";s:26:\"[^/]+/([^/]+)/trackback/?$\";s:37:\"index.php?attachment=$matches[1]&tb=1\";s:46:\"[^/]+/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:41:\"[^/]+/([^/]+)/(feed|rdf|rss|rss2|atom)/?$\";s:49:\"index.php?attachment=$matches[1]&feed=$matches[2]\";s:41:\"[^/]+/([^/]+)/comment-page-([0-9]{1,})/?$\";s:50:\"index.php?attachment=$matches[1]&cpage=$matches[2]\";s:22:\"[^/]+/([^/]+)/embed/?$\";s:43:\"index.php?attachment=$matches[1]&embed=true\";}','on'), +(31,'hack_file','0','on'), +(32,'blog_charset','UTF-8','on'), +(33,'moderation_keys','','off'), +(34,'active_plugins','a:4:{i:0;s:23:\"elementor/elementor.php\";i:1;s:51:\"header-footer-elementor/header-footer-elementor.php\";i:2;s:24:\"wordpress-seo/wp-seo.php\";i:3;s:27:\"wp-super-cache/wp-cache.php\";}','on'), +(35,'category_base','','on'), +(36,'ping_sites','https://rpc.pingomatic.com/','on'), +(37,'comment_max_links','2','on'), +(38,'gmt_offset','0','on'), +(39,'default_email_category','1','on'), +(40,'recently_edited','','off'), +(41,'template','astra','on'), +(42,'stylesheet','astra','on'), +(43,'comment_registration','0','on'), +(44,'html_type','text/html','on'), +(45,'use_trackback','0','on'), +(46,'default_role','subscriber','on'), +(47,'db_version','60717','on'), +(48,'uploads_use_yearmonth_folders','1','on'), +(49,'upload_path','','on'), +(50,'blog_public','1','on'), +(51,'default_link_category','2','on'), +(52,'show_on_front','page','on'), +(53,'tag_base','','on'), +(54,'show_avatars','1','on'), +(55,'avatar_rating','G','on'), +(56,'upload_url_path','','on'), +(57,'thumbnail_size_w','150','on'), +(58,'thumbnail_size_h','150','on'), +(59,'thumbnail_crop','1','on'), +(60,'medium_size_w','300','on'), +(61,'medium_size_h','300','on'), +(62,'avatar_default','mystery','on'), +(63,'large_size_w','1024','on'), +(64,'large_size_h','1024','on'), +(65,'image_default_link_type','none','on'), +(66,'image_default_size','','on'), +(67,'image_default_align','','on'), +(68,'close_comments_for_old_posts','0','on'), +(69,'close_comments_days_old','14','on'), +(70,'thread_comments','1','on'), +(71,'thread_comments_depth','5','on'), +(72,'page_comments','0','on'), +(73,'comments_per_page','50','on'), +(74,'default_comments_page','newest','on'), +(75,'comment_order','asc','on'), +(76,'sticky_posts','a:0:{}','on'), +(77,'widget_categories','a:0:{}','on'), +(78,'widget_text','a:0:{}','on'), +(79,'widget_rss','a:0:{}','on'), +(80,'uninstall_plugins','a:4:{s:23:\"elementor/elementor.php\";a:2:{i:0;s:21:\"Elementor\\Maintenance\";i:1;s:9:\"uninstall\";}s:27:\"autoptimize/autoptimize.php\";s:29:\"autoptimizeMain::on_uninstall\";s:27:\"wp-super-cache/wp-cache.php\";s:22:\"wpsupercache_uninstall\";s:24:\"wordpress-seo/wp-seo.php\";s:14:\"__return_false\";}','off'), +(81,'timezone_string','Europe/Berlin','on'), +(82,'page_for_posts','0','on'), +(83,'page_on_front','8','on'), +(84,'default_post_format','0','on'), +(85,'link_manager_enabled','0','on'), +(86,'finished_splitting_shared_terms','1','on'), +(87,'site_icon','0','on'), +(88,'medium_large_size_w','768','on'), +(89,'medium_large_size_h','0','on'), +(90,'wp_page_for_privacy_policy','3','on'), +(91,'show_comments_cookies_opt_in','1','on'), +(92,'admin_email_lifespan','1788202695','on'), +(93,'disallowed_keys','','off'), +(94,'comment_previously_approved','1','on'), +(95,'auto_plugin_theme_update_emails','a:0:{}','off'), +(96,'auto_update_core_dev','enabled','on'), +(97,'auto_update_core_minor','enabled','on'), +(98,'auto_update_core_major','enabled','on'), +(99,'wp_force_deactivated_plugins','a:0:{}','on'), +(100,'wp_attachment_pages_enabled','0','on'), +(101,'initial_db_version','60421','on'), +(102,'wp_user_roles','a:7:{s:13:\"administrator\";a:2:{s:4:\"name\";s:13:\"Administrator\";s:12:\"capabilities\";a:62:{s:13:\"switch_themes\";b:1;s:11:\"edit_themes\";b:1;s:16:\"activate_plugins\";b:1;s:12:\"edit_plugins\";b:1;s:10:\"edit_users\";b:1;s:10:\"edit_files\";b:1;s:14:\"manage_options\";b:1;s:17:\"moderate_comments\";b:1;s:17:\"manage_categories\";b:1;s:12:\"manage_links\";b:1;s:12:\"upload_files\";b:1;s:6:\"import\";b:1;s:15:\"unfiltered_html\";b:1;s:10:\"edit_posts\";b:1;s:17:\"edit_others_posts\";b:1;s:20:\"edit_published_posts\";b:1;s:13:\"publish_posts\";b:1;s:10:\"edit_pages\";b:1;s:4:\"read\";b:1;s:8:\"level_10\";b:1;s:7:\"level_9\";b:1;s:7:\"level_8\";b:1;s:7:\"level_7\";b:1;s:7:\"level_6\";b:1;s:7:\"level_5\";b:1;s:7:\"level_4\";b:1;s:7:\"level_3\";b:1;s:7:\"level_2\";b:1;s:7:\"level_1\";b:1;s:7:\"level_0\";b:1;s:17:\"edit_others_pages\";b:1;s:20:\"edit_published_pages\";b:1;s:13:\"publish_pages\";b:1;s:12:\"delete_pages\";b:1;s:19:\"delete_others_pages\";b:1;s:22:\"delete_published_pages\";b:1;s:12:\"delete_posts\";b:1;s:19:\"delete_others_posts\";b:1;s:22:\"delete_published_posts\";b:1;s:20:\"delete_private_posts\";b:1;s:18:\"edit_private_posts\";b:1;s:18:\"read_private_posts\";b:1;s:20:\"delete_private_pages\";b:1;s:18:\"edit_private_pages\";b:1;s:18:\"read_private_pages\";b:1;s:12:\"delete_users\";b:1;s:12:\"create_users\";b:1;s:17:\"unfiltered_upload\";b:1;s:14:\"edit_dashboard\";b:1;s:14:\"update_plugins\";b:1;s:14:\"delete_plugins\";b:1;s:15:\"install_plugins\";b:1;s:13:\"update_themes\";b:1;s:14:\"install_themes\";b:1;s:11:\"update_core\";b:1;s:10:\"list_users\";b:1;s:12:\"remove_users\";b:1;s:13:\"promote_users\";b:1;s:18:\"edit_theme_options\";b:1;s:13:\"delete_themes\";b:1;s:6:\"export\";b:1;s:20:\"wpseo_manage_options\";b:1;}}s:6:\"editor\";a:2:{s:4:\"name\";s:6:\"Editor\";s:12:\"capabilities\";a:36:{s:17:\"moderate_comments\";b:1;s:17:\"manage_categories\";b:1;s:12:\"manage_links\";b:1;s:12:\"upload_files\";b:1;s:15:\"unfiltered_html\";b:1;s:10:\"edit_posts\";b:1;s:17:\"edit_others_posts\";b:1;s:20:\"edit_published_posts\";b:1;s:13:\"publish_posts\";b:1;s:10:\"edit_pages\";b:1;s:4:\"read\";b:1;s:7:\"level_7\";b:1;s:7:\"level_6\";b:1;s:7:\"level_5\";b:1;s:7:\"level_4\";b:1;s:7:\"level_3\";b:1;s:7:\"level_2\";b:1;s:7:\"level_1\";b:1;s:7:\"level_0\";b:1;s:17:\"edit_others_pages\";b:1;s:20:\"edit_published_pages\";b:1;s:13:\"publish_pages\";b:1;s:12:\"delete_pages\";b:1;s:19:\"delete_others_pages\";b:1;s:22:\"delete_published_pages\";b:1;s:12:\"delete_posts\";b:1;s:19:\"delete_others_posts\";b:1;s:22:\"delete_published_posts\";b:1;s:20:\"delete_private_posts\";b:1;s:18:\"edit_private_posts\";b:1;s:18:\"read_private_posts\";b:1;s:20:\"delete_private_pages\";b:1;s:18:\"edit_private_pages\";b:1;s:18:\"read_private_pages\";b:1;s:15:\"wpseo_bulk_edit\";b:1;s:28:\"wpseo_edit_advanced_metadata\";b:1;}}s:6:\"author\";a:2:{s:4:\"name\";s:6:\"Author\";s:12:\"capabilities\";a:10:{s:12:\"upload_files\";b:1;s:10:\"edit_posts\";b:1;s:20:\"edit_published_posts\";b:1;s:13:\"publish_posts\";b:1;s:4:\"read\";b:1;s:7:\"level_2\";b:1;s:7:\"level_1\";b:1;s:7:\"level_0\";b:1;s:12:\"delete_posts\";b:1;s:22:\"delete_published_posts\";b:1;}}s:11:\"contributor\";a:2:{s:4:\"name\";s:11:\"Contributor\";s:12:\"capabilities\";a:5:{s:10:\"edit_posts\";b:1;s:4:\"read\";b:1;s:7:\"level_1\";b:1;s:7:\"level_0\";b:1;s:12:\"delete_posts\";b:1;}}s:10:\"subscriber\";a:2:{s:4:\"name\";s:10:\"Subscriber\";s:12:\"capabilities\";a:2:{s:4:\"read\";b:1;s:7:\"level_0\";b:1;}}s:13:\"wpseo_manager\";a:2:{s:4:\"name\";s:11:\"SEO Manager\";s:12:\"capabilities\";a:38:{s:17:\"moderate_comments\";b:1;s:17:\"manage_categories\";b:1;s:12:\"manage_links\";b:1;s:12:\"upload_files\";b:1;s:15:\"unfiltered_html\";b:1;s:10:\"edit_posts\";b:1;s:17:\"edit_others_posts\";b:1;s:20:\"edit_published_posts\";b:1;s:13:\"publish_posts\";b:1;s:10:\"edit_pages\";b:1;s:4:\"read\";b:1;s:7:\"level_7\";b:1;s:7:\"level_6\";b:1;s:7:\"level_5\";b:1;s:7:\"level_4\";b:1;s:7:\"level_3\";b:1;s:7:\"level_2\";b:1;s:7:\"level_1\";b:1;s:7:\"level_0\";b:1;s:17:\"edit_others_pages\";b:1;s:20:\"edit_published_pages\";b:1;s:13:\"publish_pages\";b:1;s:12:\"delete_pages\";b:1;s:19:\"delete_others_pages\";b:1;s:22:\"delete_published_pages\";b:1;s:12:\"delete_posts\";b:1;s:19:\"delete_others_posts\";b:1;s:22:\"delete_published_posts\";b:1;s:20:\"delete_private_posts\";b:1;s:18:\"edit_private_posts\";b:1;s:18:\"read_private_posts\";b:1;s:20:\"delete_private_pages\";b:1;s:18:\"edit_private_pages\";b:1;s:18:\"read_private_pages\";b:1;s:15:\"wpseo_bulk_edit\";b:1;s:28:\"wpseo_edit_advanced_metadata\";b:1;s:20:\"wpseo_manage_options\";b:1;s:23:\"view_site_health_checks\";b:1;}}s:12:\"wpseo_editor\";a:2:{s:4:\"name\";s:10:\"SEO Editor\";s:12:\"capabilities\";a:36:{s:17:\"moderate_comments\";b:1;s:17:\"manage_categories\";b:1;s:12:\"manage_links\";b:1;s:12:\"upload_files\";b:1;s:15:\"unfiltered_html\";b:1;s:10:\"edit_posts\";b:1;s:17:\"edit_others_posts\";b:1;s:20:\"edit_published_posts\";b:1;s:13:\"publish_posts\";b:1;s:10:\"edit_pages\";b:1;s:4:\"read\";b:1;s:7:\"level_7\";b:1;s:7:\"level_6\";b:1;s:7:\"level_5\";b:1;s:7:\"level_4\";b:1;s:7:\"level_3\";b:1;s:7:\"level_2\";b:1;s:7:\"level_1\";b:1;s:7:\"level_0\";b:1;s:17:\"edit_others_pages\";b:1;s:20:\"edit_published_pages\";b:1;s:13:\"publish_pages\";b:1;s:12:\"delete_pages\";b:1;s:19:\"delete_others_pages\";b:1;s:22:\"delete_published_pages\";b:1;s:12:\"delete_posts\";b:1;s:19:\"delete_others_posts\";b:1;s:22:\"delete_published_posts\";b:1;s:20:\"delete_private_posts\";b:1;s:18:\"edit_private_posts\";b:1;s:18:\"read_private_posts\";b:1;s:20:\"delete_private_pages\";b:1;s:18:\"edit_private_pages\";b:1;s:18:\"read_private_pages\";b:1;s:15:\"wpseo_bulk_edit\";b:1;s:28:\"wpseo_edit_advanced_metadata\";b:1;}}}','on'), +(103,'fresh_site','0','off'), +(104,'user_count','1','off'), +(105,'widget_block','a:6:{i:2;a:1:{s:7:\"content\";s:19:\"\";}i:3;a:1:{s:7:\"content\";s:154:\"

Recent Posts

\";}i:4;a:1:{s:7:\"content\";s:227:\"

Recent Comments

\";}i:5;a:1:{s:7:\"content\";s:146:\"

Archives

\";}i:6;a:1:{s:7:\"content\";s:150:\"

Categories

\";}s:12:\"_multiwidget\";i:1;}','auto'), +(106,'sidebars_widgets','a:9:{s:19:\"wp_inactive_widgets\";a:0:{}s:9:\"sidebar-1\";a:5:{i:0;s:7:\"block-2\";i:1;s:7:\"block-3\";i:2;s:7:\"block-4\";i:3;s:7:\"block-5\";i:4;s:7:\"block-6\";}s:15:\"footer-widget-1\";a:0:{}s:15:\"footer-widget-2\";a:0:{}s:24:\"advanced-footer-widget-1\";a:0:{}s:24:\"advanced-footer-widget-2\";a:0:{}s:24:\"advanced-footer-widget-3\";a:0:{}s:24:\"advanced-footer-widget-4\";a:0:{}s:13:\"array_version\";i:3;}','auto'), +(107,'widget_pages','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(108,'widget_calendar','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(109,'widget_archives','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(110,'widget_media_audio','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(111,'widget_media_image','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(112,'widget_media_gallery','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(113,'widget_media_video','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(114,'widget_meta','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(115,'widget_search','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(116,'widget_recent-posts','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(117,'widget_recent-comments','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(118,'widget_tag_cloud','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(119,'widget_nav_menu','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(120,'widget_custom_html','a:1:{s:12:\"_multiwidget\";i:1;}','auto'), +(125,'recovery_keys','a:0:{}','off'), +(126,'theme_mods_twentytwentyfive','a:2:{s:18:\"custom_css_post_id\";i:-1;s:16:\"sidebars_widgets\";a:2:{s:4:\"time\";i:1772694871;s:4:\"data\";a:3:{s:19:\"wp_inactive_widgets\";a:0:{}s:9:\"sidebar-1\";a:3:{i:0;s:7:\"block-2\";i:1;s:7:\"block-3\";i:2;s:7:\"block-4\";}s:9:\"sidebar-2\";a:2:{i:0;s:7:\"block-5\";i:1;s:7:\"block-6\";}}}}','off'), +(134,'elementor_active_kit','5','auto'), +(135,'elementor_font_display','swap','auto'), +(138,'elementor_landing_pages_activation','0','auto'), +(139,'elementor_checklist','{\"last_opened_timestamp\":null,\"first_closed_checklist_in_editor\":false,\"is_popup_minimized\":false,\"steps\":{\"add_logo\":{\"is_marked_completed\":false,\"is_immutable_completed\":false},\"set_fonts_and_colors\":{\"is_marked_completed\":false,\"is_immutable_completed\":false},\"create_pages\":{\"is_marked_completed\":false,\"is_immutable_completed\":false},\"setup_header\":{\"is_marked_completed\":false,\"is_immutable_completed\":false},\"assign_homepage\":{\"is_marked_completed\":false,\"is_immutable_completed\":false}},\"should_open_in_editor\":false}','auto'), +(140,'elementor_version','3.35.8','auto'), +(141,'elementor_install_history','a:2:{s:6:\"3.35.6\";i:1772650701;s:6:\"3.35.8\";i:1774375946;}','auto'), +(143,'elementor_remote_info_feed_data','a:3:{i:0;a:5:{s:5:\"title\";s:43:\"Introducing Angie: Agentic AI for WordPress\";s:7:\"excerpt\";s:365:\"Meet Angie, agentic AI purpose-built for WordPress. Angie understands your site, connects to your tools, and takes real actions on your behalf. Its first capability, Angie Code, lets you describe any WordPress feature you can imagine and have it built for you in minutes. Production-ready, fully integrated with your site, and safe to test before it ever goes live.\";s:7:\"created\";i:1774270910;s:5:\"badge\";s:3:\"NEW\";s:3:\"url\";s:142:\"https://elementor.com/blog/introducing-angie-agentic-ai-for-wordpress/?utm_source=wp-overview-widget&utm_medium=wp-dash&utm_campaign=news-feed\";}i:1;a:5:{s:5:\"title\";s:59:\"The atomic foundation of version 4 is ready for real sites!\";s:7:\"excerpt\";s:296:\"The alpha phase is complete. Version 4 is now in beta, and the atomic foundation is ready to be used on real sites! This is the final step before the official release of version 4.0, activating the new features automatically on new sites, and becoming the default editing experience in Elementor.\";s:7:\"created\";i:1770651621;s:5:\"badge\";s:3:\"NEW\";s:3:\"url\";s:113:\"https://elementor.com/blog/editor-4-beta/?utm_source=wp-overview-widget&utm_medium=wp-dash&utm_campaign=news-feed\";}i:2;a:5:{s:5:\"title\";s:79:\"Introducing Elementor 3.33: Variables Manager, Custom CSS, Blend Modes, & more!\";s:7:\"excerpt\";s:340:\"Elementor 3.33 builds on the foundation of Editor V4, continuing our mission to create a faster, more scalable, and more intuitive design experience for Web Creators. With the addition of the Variables Manager, element-level Custom CSS, Background Clipping, and Blend Modes, designers have more creative precision and consistency than ever.\";s:7:\"created\";i:1762944115;s:5:\"badge\";s:3:\"NEW\";s:3:\"url\";s:145:\"https://elementor.com/blog/elementor-333-v4-variables-manager-custom-css/?utm_source=wp-overview-widget&utm_medium=wp-dash&utm_campaign=news-feed\";}}','off'), +(146,'elementor_events_db_version','1.0.0','off'), +(155,'wp_notes_notify','1','on'), +(156,'db_upgraded','','on'), +(162,'auto_core_update_notified','a:4:{s:4:\"type\";s:7:\"success\";s:5:\"email\";s:19:\"info@molzberger.org\";s:7:\"version\";s:5:\"6.9.4\";s:9:\"timestamp\";i:1773259550;}','off'), +(167,'_elementor_installed_time','1772694146','auto'), +(168,'elementor_connect_site_key','9c9dd2fb98f4648dd5c0ce6be3dbcdd6','auto'), +(172,'can_compress_scripts','0','on'), +(185,'_elementor_home_screen_data','a:2:{s:7:\"timeout\";i:1772697752;s:5:\"value\";s:12470:\"{\"top_with_licences\":[{\"license\":[\"free\"],\"title_small\":\"Hi!\",\"title\":\"Unleash your imagination with Elementor\",\"description\":\"Start building your website with Elementor\'s no code drag & drop editor.\",\"button_create_page_title\":\"Create a Page\",\"button_watch_title\":\"Watch a guide\",\"button_watch_url\":\"https:\\/\\/www.youtube.com\\/watch?v=le72grP_Q6k&t=1s\",\"youtube_embed_id\":\"le72grP_Q6k?si=g2akyWNODL6usu6u\"},{\"license\":[\"pro\"],\"title_small\":\"Hi!\",\"title\":\"Unleash your imagination with Elementor\",\"description\":\"Now you\'ve got all the tools to start creating professional, high-performing websites - and that journey begins by creating your first page.\",\"button_create_page_title\":\"Create a Page\",\"button_watch_title\":\"Watch a guide\",\"button_watch_url\":\"https:\\/\\/www.youtube.com\\/watch?v=QdkDGrS8ZZs\",\"youtube_embed_id\":\"QdkDGrS8ZZs?si=s_VjZCQR6Fh1jgB5\"},{\"license\":[\"one\"],\"title_small\":\"Hi!\",\"title\":\"Unleash your imagination with Elementor\",\"description\":\"Now you\'ve got all the tools to start creating professional, high-performing websites - and that journey begins by creating your first page.\",\"button_create_page_title\":\"Create a Page\",\"button_watch_title\":\"Watch a guide\",\"button_watch_url\":\"https:\\/\\/www.youtube.com\\/watch?v=QdkDGrS8ZZs\",\"youtube_embed_id\":\"QdkDGrS8ZZs?si=s_VjZCQR6Fh1jgB5\"}],\"get_started\":[{\"license\":[\"free\"],\"header\":{\"title\":\"Jumpstart your web-creation\",\"description\":\"These quick actions will get your site airborne with a customized design.\"},\"repeater\":[{\"title\":\"Site Settings\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"title_small_color\":\"text.tertiary\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/site-settings.svg\"},{\"title\":\"Site Logo\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"title_small_color\":\"text.tertiary\",\"tab_id\":\"settings-site-identity\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/site-logo.svg\"},{\"title\":\"Global Colors\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"title_small_color\":\"text.tertiary\",\"tab_id\":\"global-colors\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/global-colors.svg\"},{\"title\":\"Global Fonts\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"title_small_color\":\"text.tertiary\",\"tab_id\":\"global-typography\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/global-fonts.svg\"},{\"title\":\"Theme Builder\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor-app\",\"is_relative_url\":false,\"title_small_color\":\"text.tertiary\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/theme-builder.svg\"},{\"title\":\"Popups\",\"title_small\":\"Customize\",\"url\":\"edit.php?post_type=elementor_library&page=popup_templates\",\"is_relative_url\":true,\"title_small_color\":\"text.tertiary\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/popups.svg\"},{\"title\":\"Custom Icons\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor_custom_icons\",\"is_relative_url\":false,\"title_small_color\":\"text.tertiary\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/custom-icons.svg\"},{\"title\":\"Custom Fonts\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor_custom_fonts\",\"is_relative_url\":true,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/custom-fonts.svg\",\"title_small_color\":\"text.tertiary\"}]},{\"license\":[\"pro\"],\"header\":{\"title\":\"Jumpstart your web-creation\",\"description\":\"These quick actions will get your site airborne with a customized design.\"},\"repeater\":[{\"title\":\"Site Settings\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/site-settings.svg\"},{\"title\":\"Site Logo\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"tab_id\":\"settings-site-identity\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/site-logo.svg\"},{\"title\":\"Global Colors\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"tab_id\":\"global-colors\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/global-colors.svg\"},{\"title\":\"Global Fonts\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"tab_id\":\"global-typography\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/global-fonts.svg\"},{\"title\":\"Theme Builder\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor-app\",\"is_relative_url\":false,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/theme-builder.svg\"},{\"title\":\"Popups\",\"title_small\":\"Customize\",\"url\":\"edit.php?post_type=elementor_library&tabs_group=popup&elementor_library_type=popup\",\"is_relative_url\":true,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/popups.svg\"},{\"title\":\"Custom Icons\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor_custom_icons\",\"is_relative_url\":false,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/custom-icons.svg\"},{\"title\":\"Custom Fonts\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor_custom_fonts\",\"is_relative_url\":true,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/custom-fonts.svg\"}]},{\"license\":[\"one\"],\"header\":{\"title\":\"Jumpstart your web-creation\",\"description\":\"These quick actions will get your site airborne with a customized design.\"},\"repeater\":[{\"title\":\"Site Settings\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/site-settings.svg\"},{\"title\":\"Site Logo\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"tab_id\":\"settings-site-identity\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/site-logo.svg\"},{\"title\":\"Global Colors\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"tab_id\":\"global-colors\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/global-colors.svg\"},{\"title\":\"Global Fonts\",\"title_small\":\"Customize\",\"url\":\"\",\"is_relative_url\":false,\"tab_id\":\"global-typography\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/global-fonts.svg\"},{\"title\":\"Theme Builder\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor-app\",\"is_relative_url\":false,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/theme-builder.svg\"},{\"title\":\"Popups\",\"title_small\":\"Customize\",\"url\":\"edit.php?post_type=elementor_library&tabs_group=popup&elementor_library_type=popup\",\"is_relative_url\":true,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/popups.svg\"},{\"title\":\"Custom Icons\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor_custom_icons\",\"is_relative_url\":false,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/custom-icons.svg\"},{\"title\":\"Custom Fonts\",\"title_small\":\"Customize\",\"url\":\"admin.php?page=elementor_custom_fonts\",\"is_relative_url\":true,\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/custom-fonts.svg\"}]}],\"add_ons\":{\"hide_section\":[\"free\",\"essential\",\"pro\",\"one\"],\"header\":{\"title\":\"Expand your design toolkit\",\"description\":\"These plugins, add-ons, and tools, have been selected to streamline your workflow and maximize your creativity.\"},\"repeater\":[{\"file_path\":\"pojo-accessibility\\/pojo-accessibility.php\",\"title\":\"Ally - Web Accessibility. Simplified.\",\"url\":\"\",\"description\":\"Make your website more accessible with powerful tools to detect and fix issues, enhance usability, and create a better experience for all visitors.\",\"button_label\":\"Install\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/ally_logo.svg\",\"type\":\"wporg\"},{\"file_path\":\"site-mailer\\/site-mailer.php\",\"title\":\"Site Mailer\",\"url\":\"\",\"description\":\"Keep your WordPress emails out of the spam folder with improved deliverability and an easy setup\\u2014no need for an SMTP plugin or complicated configurations.\",\"button_label\":\"Install\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/site-mailer.svg\",\"type\":\"wporg\"},{\"file_path\":\"image-optimization\\/image-optimization.php\",\"title\":\"Image Optimizer\",\"url\":\"https:\\/\\/go.elementor.com\\/wp-dash-apps-author-uri-elementor-io\\/\",\"description\":\"Check out this incredibly useful plugin that will compress and optimize your images, giving you leaner, faster websites.\",\"button_label\":\"Install\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/image-optimizer.svg\",\"type\":\"wporg\"},{\"title\":\"Elementor AI\",\"url\":\"https:\\/\\/go.elementor.com\\/wp-dash-apps-author-uri-elementor-ai\\/\",\"description\":\"Boost creativity with Elementor AI. Craft & enhance copy, create custom CSS & Code, and generate images to elevate your website.\",\"button_label\":\"Let\'s go\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/elementor.svg\",\"type\":\"link\",\"condition\":{\"key\":\"introduction_meta\",\"value\":\"ai_get_started\"}}],\"footer\":{\"label\":\"Explore more add-ons\",\"file_path\":\"wp-admin\\/admin.php?page=elementor-apps\"}},\"sidebar_promotion_variants\":[{\"license\":[\"essential\"],\"is_enabled\":\"true\",\"type\":\"banner\",\"data\":{\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/essential-upgrade.svg\",\"link\":\"https:\\/\\/go.elementor.com\\/go-pro-advanced-home-sidebar-upgrade\\/\"}},{\"license\":[\"free\"],\"is_enabled\":\"true\",\"type\":\"banner\",\"data\":{\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/upgrade-free.svg\",\"link\":\"https:\\/\\/go.elementor.com\\/go-pro-home-sidebar-upgrade\\/\"}},{\"license\":[\"expired\"],\"is_enabled\":\"true\",\"type\":\"banner\",\"data\":{\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/upgrade-free.svg\",\"link\":\"https:\\/\\/go.elementor.com\\/go-pro-home-sidebar-expired\\/\"}},{\"license\":[\"free\"],\"is_enabled\":\"false\",\"type\":\"default\",\"data\":{\"header\":{\"title\":\"Bring your vision to life\",\"description\":\"Get complete design flexibility for your website with Elementor Pro\'s advanced tools and premium features.\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/update-sidebar.svg\"},\"cta\":{\"label\":\"Upgrade Now\",\"url\":\"https:\\/\\/go.elementor.com\\/go-pro-home-sidebar-upgrade\\/\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/icon-crown.svg\"},\"repeater\":[{\"title\":\"Popup Builder\"},{\"title\":\"Custom Code & CSS\"},{\"title\":\"E-commerce Features\"},{\"title\":\"Collaborative Notes\"},{\"title\":\"Form Submission\"},{\"title\":\"Form Integrations\"},{\"title\":\"Custom Attributes\"},{\"title\":\"Role Manager\"}]}},{\"license\":[\"pro\"],\"is_enabled\":\"false\",\"type\":\"default\",\"data\":{\"header\":{\"title\":\"Bring your vision to life\",\"description\":\"Get complete design flexibility for your website with Elementor Pro\'s advanced tools and premium features.\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/update-sidebar.svg\"},\"cta\":{\"label\":\"Upgrade Now\",\"url\":\"https:\\/\\/go.elementor.com\\/go-pro-home-sidebar-upgrade\\/\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/icon-crown.svg\"},\"repeater\":[{\"title\":\"Popup Builder\"},{\"title\":\"Custom Code & CSS\"},{\"title\":\"E-commerce Features\"},{\"title\":\"Collaborative Notes\"},{\"title\":\"Form Submission\"},{\"title\":\"Form Integrations\"},{\"title\":\"Custom Attributes\"},{\"title\":\"Role Manager\"}]}},{\"license\":[\"one\"],\"is_enabled\":\"false\",\"type\":\"default\",\"data\":{\"header\":{\"title\":\"Bring your vision to life\",\"description\":\"Get complete design flexibility for your website with Elementor Pro\'s advanced tools and premium features.\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/update-sidebar.svg\"},\"cta\":{\"label\":\"Upgrade Now\",\"url\":\"https:\\/\\/go.elementor.com\\/go-pro-home-sidebar-upgrade\\/\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/icon-crown.svg\"},\"repeater\":[{\"title\":\"Popup Builder\"},{\"title\":\"Custom Code & CSS\"},{\"title\":\"E-commerce Features\"},{\"title\":\"Collaborative Notes\"},{\"title\":\"Form Submission\"},{\"title\":\"Form Integrations\"},{\"title\":\"Custom Attributes\"},{\"title\":\"Role Manager\"}]}}],\"external_links\":[{\"label\":\"Help Center\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/icon-question-mark.svg\",\"url\":\"https:\\/\\/elementor.com\\/help\\/\"},{\"label\":\"Youtube\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/icon-youtube.svg\",\"url\":\"https:\\/\\/www.youtube.com\\/@Elementor\"},{\"label\":\"Facebook Community\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/icon-community.svg\",\"url\":\"https:\\/\\/www.facebook.com\\/groups\\/Elementors\"},{\"label\":\"Blog\",\"image\":\"https:\\/\\/assets.elementor.com\\/home-screen\\/v1\\/images\\/icon-academic-hat.svg\",\"url\":\"https:\\/\\/elementor.com\\/blog\\/\"}]}\";}','off'), +(187,'recently_activated','a:0:{}','off'), +(191,'finished_updating_comment_type','1','auto'), +(192,'elementor_one_welcome_screen_completed','1','auto'), +(193,'wp_calendar_block_has_published_posts','1','auto'), +(195,'autoptimize_version','3.1.15','auto'), +(196,'autoptimize_ccss_version','AO_3.1.15','auto'), +(201,'autoptimize_service_availablity','a:3:{s:12:\"extra_imgopt\";a:3:{s:6:\"status\";s:2:\"up\";s:5:\"hosts\";a:1:{i:1;s:28:\"https://sp-ao.shortpixel.ai/\";}s:16:\"launch-threshold\";s:4:\"4096\";}s:7:\"critcss\";a:2:{s:6:\"status\";s:2:\"up\";s:5:\"hosts\";a:1:{i:1;s:24:\"https://criticalcss.com/\";}}s:9:\"rapidload\";a:1:{s:6:\"status\";s:4:\"down\";}}','auto'), +(204,'current_theme','Astra','auto'), +(205,'theme_switched','','auto'), +(208,'theme_mods_astra','a:2:{s:18:\"nav_menu_locations\";a:2:{s:7:\"primary\";i:2;s:11:\"mobile_menu\";i:2;}s:18:\"custom_css_post_id\";i:29;}','auto'), +(211,'yoast_migrations_free','a:1:{s:7:\"version\";s:4:\"27.2\";}','auto'), +(212,'wpseo','a:124:{s:8:\"tracking\";b:0;s:16:\"toggled_tracking\";b:0;s:22:\"license_server_version\";b:0;s:15:\"ms_defaults_set\";b:0;s:40:\"ignore_search_engines_discouraged_notice\";b:0;s:19:\"indexing_first_time\";b:1;s:16:\"indexing_started\";b:0;s:15:\"indexing_reason\";s:26:\"permalink_settings_changed\";s:29:\"indexables_indexing_completed\";b:0;s:13:\"index_now_key\";s:0:\"\";s:7:\"version\";s:4:\"27.2\";s:16:\"previous_version\";s:6:\"27.1.1\";s:20:\"disableadvanced_meta\";b:1;s:30:\"enable_headless_rest_endpoints\";b:1;s:17:\"ryte_indexability\";b:0;s:11:\"baiduverify\";s:0:\"\";s:12:\"googleverify\";s:0:\"\";s:8:\"msverify\";s:0:\"\";s:12:\"yandexverify\";s:0:\"\";s:12:\"ahrefsverify\";s:0:\"\";s:9:\"site_type\";s:0:\"\";s:20:\"has_multiple_authors\";s:0:\"\";s:16:\"environment_type\";s:0:\"\";s:23:\"content_analysis_active\";b:1;s:23:\"keyword_analysis_active\";b:1;s:34:\"inclusive_language_analysis_active\";b:0;s:21:\"enable_admin_bar_menu\";b:1;s:26:\"enable_cornerstone_content\";b:1;s:18:\"enable_xml_sitemap\";b:1;s:24:\"enable_text_link_counter\";b:1;s:16:\"enable_index_now\";b:1;s:19:\"enable_ai_generator\";b:1;s:22:\"ai_enabled_pre_default\";b:0;s:22:\"show_onboarding_notice\";b:1;s:18:\"first_activated_on\";i:1772694881;s:13:\"myyoast-oauth\";b:0;s:26:\"semrush_integration_active\";b:1;s:14:\"semrush_tokens\";a:0:{}s:20:\"semrush_country_code\";s:2:\"us\";s:19:\"permalink_structure\";s:12:\"/%postname%/\";s:8:\"home_url\";s:21:\"http://87.106.117.190\";s:18:\"dynamic_permalinks\";b:0;s:17:\"category_base_url\";s:0:\"\";s:12:\"tag_base_url\";s:0:\"\";s:21:\"custom_taxonomy_slugs\";a:2:{s:22:\"elementor_library_type\";s:22:\"elementor_library_type\";s:26:\"elementor_library_category\";s:26:\"elementor_library_category\";}s:29:\"enable_enhanced_slack_sharing\";b:1;s:23:\"enable_metabox_insights\";b:1;s:23:\"enable_link_suggestions\";b:1;s:26:\"algolia_integration_active\";b:0;s:14:\"import_cursors\";a:0:{}s:13:\"workouts_data\";a:1:{s:13:\"configuration\";a:1:{s:13:\"finishedSteps\";a:0:{}}}s:28:\"configuration_finished_steps\";a:0:{}s:36:\"dismiss_configuration_workout_notice\";b:0;s:34:\"dismiss_premium_deactivated_notice\";b:0;s:19:\"importing_completed\";a:0:{}s:26:\"wincher_integration_active\";b:1;s:14:\"wincher_tokens\";a:0:{}s:36:\"wincher_automatically_add_keyphrases\";b:0;s:18:\"wincher_website_id\";s:0:\"\";s:18:\"first_time_install\";b:1;s:34:\"should_redirect_after_install_free\";b:0;s:34:\"activation_redirect_timestamp_free\";i:1772694881;s:18:\"remove_feed_global\";b:0;s:27:\"remove_feed_global_comments\";b:0;s:25:\"remove_feed_post_comments\";b:0;s:19:\"remove_feed_authors\";b:0;s:22:\"remove_feed_categories\";b:0;s:16:\"remove_feed_tags\";b:0;s:29:\"remove_feed_custom_taxonomies\";b:0;s:22:\"remove_feed_post_types\";b:0;s:18:\"remove_feed_search\";b:0;s:21:\"remove_atom_rdf_feeds\";b:0;s:17:\"remove_shortlinks\";b:0;s:21:\"remove_rest_api_links\";b:0;s:20:\"remove_rsd_wlw_links\";b:0;s:19:\"remove_oembed_links\";b:0;s:16:\"remove_generator\";b:0;s:20:\"remove_emoji_scripts\";b:0;s:24:\"remove_powered_by_header\";b:0;s:22:\"remove_pingback_header\";b:0;s:28:\"clean_campaign_tracking_urls\";b:0;s:16:\"clean_permalinks\";b:0;s:32:\"clean_permalinks_extra_variables\";s:0:\"\";s:14:\"search_cleanup\";b:0;s:20:\"search_cleanup_emoji\";b:0;s:23:\"search_cleanup_patterns\";b:0;s:22:\"search_character_limit\";i:50;s:20:\"deny_search_crawling\";b:0;s:21:\"deny_wp_json_crawling\";b:0;s:20:\"deny_adsbot_crawling\";b:0;s:19:\"deny_ccbot_crawling\";b:0;s:29:\"deny_google_extended_crawling\";b:0;s:20:\"deny_gptbot_crawling\";b:0;s:27:\"redirect_search_pretty_urls\";b:0;s:29:\"least_readability_ignore_list\";a:0:{}s:27:\"least_seo_score_ignore_list\";a:0:{}s:23:\"most_linked_ignore_list\";a:0:{}s:24:\"least_linked_ignore_list\";a:0:{}s:28:\"indexables_page_reading_list\";a:5:{i:0;b:0;i:1;b:0;i:2;b:0;i:3;b:0;i:4;b:0;}s:25:\"indexables_overview_state\";s:21:\"dashboard-not-visited\";s:28:\"last_known_public_post_types\";a:4:{i:0;s:4:\"post\";i:1;s:4:\"page\";i:2;s:18:\"e-floating-buttons\";i:3;s:12:\"elementor-hf\";}s:28:\"last_known_public_taxonomies\";a:3:{i:0;s:8:\"category\";i:1;s:8:\"post_tag\";i:2;s:11:\"post_format\";}s:23:\"last_known_no_unindexed\";a:5:{s:40:\"wpseo_total_unindexed_post_type_archives\";i:1772698897;s:27:\"wpseo_total_unindexed_posts\";i:1772720822;s:27:\"wpseo_total_unindexed_terms\";i:1772720822;s:31:\"wpseo_unindexed_term_link_count\";i:1772720822;s:31:\"wpseo_unindexed_post_link_count\";i:1772782539;}s:14:\"new_post_types\";a:1:{i:3;s:12:\"elementor-hf\";}s:14:\"new_taxonomies\";a:0:{}s:34:\"show_new_content_type_notification\";b:1;s:44:\"site_kit_configuration_permanently_dismissed\";b:0;s:18:\"site_kit_connected\";b:0;s:37:\"site_kit_tracking_setup_widget_loaded\";s:2:\"no\";s:41:\"site_kit_tracking_first_interaction_stage\";s:0:\"\";s:40:\"site_kit_tracking_last_interaction_stage\";s:0:\"\";s:52:\"site_kit_tracking_setup_widget_temporarily_dismissed\";s:2:\"no\";s:52:\"site_kit_tracking_setup_widget_permanently_dismissed\";s:2:\"no\";s:31:\"google_site_kit_feature_enabled\";b:0;s:25:\"ai_free_sparks_started_on\";N;s:15:\"enable_llms_txt\";b:0;s:15:\"last_updated_on\";i:1774375946;s:17:\"default_seo_title\";a:5:{i:0;i:499;i:1;i:492;i:2;i:486;i:3;i:469;i:4;i:464;}s:21:\"default_seo_meta_desc\";a:5:{i:0;i:499;i:1;i:492;i:2;i:486;i:3;i:469;i:4;i:464;}s:18:\"first_activated_by\";i:0;s:34:\"enable_schema_aggregation_endpoint\";b:0;s:38:\"schema_aggregation_endpoint_enabled_on\";N;s:16:\"enable_task_list\";b:1;s:13:\"enable_schema\";b:1;}','auto'), +(215,'astra-settings','a:9:{s:18:\"theme-auto-version\";s:6:\"4.12.6\";s:22:\"is_theme_queue_running\";b:0;s:23:\"footer-copyright-editor\";s:196:\"3D-Druck Hub © [current_year] [site_title] · WhatsApp Community · Impressum · Datenschutz\";s:22:\"footer-copyright-color\";s:7:\"#9aa5b5\";s:27:\"footer-copyright-link-color\";s:7:\"#6fdfff\";s:29:\"footer-copyright-link-h-color\";s:7:\"#ff6a00\";s:26:\"footer-copyright-alignment\";a:3:{s:7:\"desktop\";s:6:\"center\";s:6:\"tablet\";s:6:\"center\";s:6:\"mobile\";s:6:\"center\";}s:21:\"off-canvas-background\";a:10:{s:16:\"background-color\";s:7:\"#050505\";s:16:\"background-image\";s:0:\"\";s:17:\"background-repeat\";s:6:\"repeat\";s:19:\"background-position\";s:13:\"center center\";s:15:\"background-size\";s:4:\"auto\";s:21:\"background-attachment\";s:6:\"scroll\";s:12:\"overlay-type\";s:0:\"\";s:13:\"overlay-color\";s:0:\"\";s:15:\"overlay-opacity\";s:0:\"\";s:16:\"overlay-gradient\";s:0:\"\";}s:22:\"off-canvas-close-color\";s:7:\"#ffffff\";}','auto'), +(218,'wpseo_titles','a:151:{s:17:\"forcerewritetitle\";b:0;s:9:\"separator\";s:7:\"sc-dash\";s:16:\"title-home-wpseo\";s:42:\"%%sitename%% %%page%% %%sep%% %%sitedesc%%\";s:18:\"title-author-wpseo\";s:41:\"%%name%%, Author at %%sitename%% %%page%%\";s:19:\"title-archive-wpseo\";s:38:\"%%date%% %%page%% %%sep%% %%sitename%%\";s:18:\"title-search-wpseo\";s:63:\"You searched for %%searchphrase%% %%page%% %%sep%% %%sitename%%\";s:15:\"title-404-wpseo\";s:35:\"Page not found %%sep%% %%sitename%%\";s:25:\"social-title-author-wpseo\";s:8:\"%%name%%\";s:26:\"social-title-archive-wpseo\";s:8:\"%%date%%\";s:31:\"social-description-author-wpseo\";s:0:\"\";s:32:\"social-description-archive-wpseo\";s:0:\"\";s:29:\"social-image-url-author-wpseo\";s:0:\"\";s:30:\"social-image-url-archive-wpseo\";s:0:\"\";s:28:\"social-image-id-author-wpseo\";i:0;s:29:\"social-image-id-archive-wpseo\";i:0;s:19:\"metadesc-home-wpseo\";s:0:\"\";s:21:\"metadesc-author-wpseo\";s:0:\"\";s:22:\"metadesc-archive-wpseo\";s:0:\"\";s:9:\"rssbefore\";s:0:\"\";s:8:\"rssafter\";s:53:\"The post %%POSTLINK%% appeared first on %%BLOGLINK%%.\";s:20:\"noindex-author-wpseo\";b:0;s:28:\"noindex-author-noposts-wpseo\";b:1;s:21:\"noindex-archive-wpseo\";b:1;s:14:\"disable-author\";b:0;s:12:\"disable-date\";b:0;s:19:\"disable-post_format\";b:0;s:18:\"disable-attachment\";b:1;s:20:\"breadcrumbs-404crumb\";s:25:\"Error 404: Page not found\";s:29:\"breadcrumbs-display-blog-page\";b:1;s:20:\"breadcrumbs-boldlast\";b:0;s:25:\"breadcrumbs-archiveprefix\";s:12:\"Archives for\";s:18:\"breadcrumbs-enable\";b:1;s:16:\"breadcrumbs-home\";s:4:\"Home\";s:18:\"breadcrumbs-prefix\";s:0:\"\";s:24:\"breadcrumbs-searchprefix\";s:16:\"You searched for\";s:15:\"breadcrumbs-sep\";s:2:\"»\";s:12:\"website_name\";s:0:\"\";s:11:\"person_name\";s:0:\"\";s:11:\"person_logo\";s:0:\"\";s:22:\"alternate_website_name\";s:0:\"\";s:12:\"company_logo\";s:0:\"\";s:12:\"company_name\";s:0:\"\";s:22:\"company_alternate_name\";s:0:\"\";s:17:\"company_or_person\";s:7:\"company\";s:25:\"company_or_person_user_id\";b:0;s:17:\"stripcategorybase\";b:0;s:26:\"open_graph_frontpage_title\";s:12:\"%%sitename%%\";s:25:\"open_graph_frontpage_desc\";s:0:\"\";s:26:\"open_graph_frontpage_image\";s:0:\"\";s:24:\"publishing_principles_id\";i:0;s:25:\"ownership_funding_info_id\";i:0;s:29:\"actionable_feedback_policy_id\";i:0;s:21:\"corrections_policy_id\";i:0;s:16:\"ethics_policy_id\";i:0;s:19:\"diversity_policy_id\";i:0;s:28:\"diversity_staffing_report_id\";i:0;s:15:\"org-description\";s:0:\"\";s:9:\"org-email\";s:0:\"\";s:9:\"org-phone\";s:0:\"\";s:14:\"org-legal-name\";s:0:\"\";s:17:\"org-founding-date\";s:0:\"\";s:20:\"org-number-employees\";s:0:\"\";s:10:\"org-vat-id\";s:0:\"\";s:10:\"org-tax-id\";s:0:\"\";s:7:\"org-iso\";s:0:\"\";s:8:\"org-duns\";s:0:\"\";s:11:\"org-leicode\";s:0:\"\";s:9:\"org-naics\";s:0:\"\";s:10:\"title-post\";s:39:\"%%title%% %%page%% %%sep%% %%sitename%%\";s:13:\"metadesc-post\";s:0:\"\";s:12:\"noindex-post\";b:0;s:23:\"display-metabox-pt-post\";b:1;s:23:\"post_types-post-maintax\";i:0;s:21:\"schema-page-type-post\";s:7:\"WebPage\";s:24:\"schema-article-type-post\";s:7:\"Article\";s:17:\"social-title-post\";s:9:\"%%title%%\";s:23:\"social-description-post\";s:0:\"\";s:21:\"social-image-url-post\";s:0:\"\";s:20:\"social-image-id-post\";i:0;s:10:\"title-page\";s:39:\"%%title%% %%page%% %%sep%% %%sitename%%\";s:13:\"metadesc-page\";s:0:\"\";s:12:\"noindex-page\";b:0;s:23:\"display-metabox-pt-page\";b:1;s:23:\"post_types-page-maintax\";i:0;s:21:\"schema-page-type-page\";s:7:\"WebPage\";s:24:\"schema-article-type-page\";s:4:\"None\";s:17:\"social-title-page\";s:9:\"%%title%%\";s:23:\"social-description-page\";s:0:\"\";s:21:\"social-image-url-page\";s:0:\"\";s:20:\"social-image-id-page\";i:0;s:16:\"title-attachment\";s:39:\"%%title%% %%page%% %%sep%% %%sitename%%\";s:19:\"metadesc-attachment\";s:0:\"\";s:18:\"noindex-attachment\";b:0;s:29:\"display-metabox-pt-attachment\";b:1;s:29:\"post_types-attachment-maintax\";i:0;s:27:\"schema-page-type-attachment\";s:7:\"WebPage\";s:30:\"schema-article-type-attachment\";s:4:\"None\";s:24:\"title-e-floating-buttons\";s:39:\"%%title%% %%page%% %%sep%% %%sitename%%\";s:27:\"metadesc-e-floating-buttons\";s:0:\"\";s:26:\"noindex-e-floating-buttons\";b:0;s:37:\"display-metabox-pt-e-floating-buttons\";b:1;s:37:\"post_types-e-floating-buttons-maintax\";i:0;s:35:\"schema-page-type-e-floating-buttons\";s:7:\"WebPage\";s:38:\"schema-article-type-e-floating-buttons\";s:4:\"None\";s:31:\"social-title-e-floating-buttons\";s:9:\"%%title%%\";s:37:\"social-description-e-floating-buttons\";s:0:\"\";s:35:\"social-image-url-e-floating-buttons\";s:0:\"\";s:34:\"social-image-id-e-floating-buttons\";i:0;s:23:\"title-elementor_library\";s:39:\"%%title%% %%page%% %%sep%% %%sitename%%\";s:26:\"metadesc-elementor_library\";s:0:\"\";s:25:\"noindex-elementor_library\";b:0;s:36:\"display-metabox-pt-elementor_library\";b:1;s:36:\"post_types-elementor_library-maintax\";i:0;s:34:\"schema-page-type-elementor_library\";s:7:\"WebPage\";s:37:\"schema-article-type-elementor_library\";s:4:\"None\";s:30:\"social-title-elementor_library\";s:9:\"%%title%%\";s:36:\"social-description-elementor_library\";s:0:\"\";s:34:\"social-image-url-elementor_library\";s:0:\"\";s:33:\"social-image-id-elementor_library\";i:0;s:18:\"title-tax-category\";s:53:\"%%term_title%% Archives %%page%% %%sep%% %%sitename%%\";s:21:\"metadesc-tax-category\";s:0:\"\";s:28:\"display-metabox-tax-category\";b:1;s:20:\"noindex-tax-category\";b:0;s:25:\"social-title-tax-category\";s:23:\"%%term_title%% Archives\";s:31:\"social-description-tax-category\";s:0:\"\";s:29:\"social-image-url-tax-category\";s:0:\"\";s:28:\"social-image-id-tax-category\";i:0;s:26:\"taxonomy-category-ptparent\";i:0;s:18:\"title-tax-post_tag\";s:53:\"%%term_title%% Archives %%page%% %%sep%% %%sitename%%\";s:21:\"metadesc-tax-post_tag\";s:0:\"\";s:28:\"display-metabox-tax-post_tag\";b:1;s:20:\"noindex-tax-post_tag\";b:0;s:25:\"social-title-tax-post_tag\";s:23:\"%%term_title%% Archives\";s:31:\"social-description-tax-post_tag\";s:0:\"\";s:29:\"social-image-url-tax-post_tag\";s:0:\"\";s:28:\"social-image-id-tax-post_tag\";i:0;s:26:\"taxonomy-post_tag-ptparent\";i:0;s:21:\"title-tax-post_format\";s:53:\"%%term_title%% Archives %%page%% %%sep%% %%sitename%%\";s:24:\"metadesc-tax-post_format\";s:0:\"\";s:31:\"display-metabox-tax-post_format\";b:1;s:23:\"noindex-tax-post_format\";b:1;s:28:\"social-title-tax-post_format\";s:23:\"%%term_title%% Archives\";s:34:\"social-description-tax-post_format\";s:0:\"\";s:32:\"social-image-url-tax-post_format\";s:0:\"\";s:31:\"social-image-id-tax-post_format\";i:0;s:29:\"taxonomy-post_format-ptparent\";i:0;s:14:\"person_logo_id\";i:0;s:15:\"company_logo_id\";i:0;s:17:\"company_logo_meta\";b:0;s:16:\"person_logo_meta\";b:0;s:29:\"open_graph_frontpage_image_id\";i:0;}','auto'), +(219,'wpseo_social','a:20:{s:13:\"facebook_site\";s:0:\"\";s:13:\"instagram_url\";s:0:\"\";s:12:\"linkedin_url\";s:0:\"\";s:11:\"myspace_url\";s:0:\"\";s:16:\"og_default_image\";s:0:\"\";s:19:\"og_default_image_id\";s:0:\"\";s:18:\"og_frontpage_title\";s:0:\"\";s:17:\"og_frontpage_desc\";s:0:\"\";s:18:\"og_frontpage_image\";s:0:\"\";s:21:\"og_frontpage_image_id\";s:0:\"\";s:9:\"opengraph\";b:1;s:13:\"pinterest_url\";s:0:\"\";s:15:\"pinterestverify\";s:0:\"\";s:7:\"twitter\";b:1;s:12:\"twitter_site\";s:0:\"\";s:17:\"twitter_card_type\";s:19:\"summary_large_image\";s:11:\"youtube_url\";s:0:\"\";s:13:\"wikipedia_url\";s:0:\"\";s:17:\"other_social_urls\";a:0:{}s:12:\"mastodon_url\";s:0:\"\";}','auto'), +(220,'wpseo_llmstxt','a:7:{s:23:\"llms_txt_selection_mode\";s:4:\"auto\";s:13:\"about_us_page\";i:0;s:12:\"contact_page\";i:0;s:10:\"terms_page\";i:0;s:19:\"privacy_policy_page\";i:0;s:9:\"shop_page\";i:0;s:20:\"other_included_pages\";a:0:{}}','auto'), +(221,'wpseo_tracking_only','a:3:{s:25:\"task_list_first_opened_on\";s:0:\"\";s:22:\"task_first_actioned_on\";s:0:\"\";s:36:\"frontend_inspector_first_actioned_on\";s:0:\"\";}','auto'), +(224,'bsf_usage_migrated','1','off'), +(227,'astra_usage_installed_time','1772694933','off'), +(243,'autoptimize_imgopt_launched','on','auto'), +(249,'uae_lite_is_activated','yes','auto'), +(251,'hfe_is_theme_supported','1','auto'), +(253,'_hfe_db_version','2.8.5','auto'), +(254,'hfe_onboarding_triggered','yes','auto'), +(255,'hfe_plugin_previous_version','2.8.4','auto'), +(256,'hfe_plugin_version','2.8.5','auto'), +(261,'uae_usage_installed_time','1772695962','off'), +(264,'nps-survey-header-footer-elementor','a:6:{s:13:\"dismiss_count\";i:0;s:19:\"dismiss_permanently\";b:0;s:12:\"dismiss_step\";s:0:\"\";s:12:\"dismiss_time\";s:0:\"\";s:16:\"dismiss_timespan\";N;s:17:\"first_render_time\";i:1772695963;}','auto'), +(447,'category_children','a:0:{}','auto'), +(2246,'elementor_log','a:7:{s:32:\"66649a7996ab69149589634ca867d7cf\";O:31:\"Elementor\\Core\\Logger\\Items\\PHP\":9:{s:7:\"\0*\0date\";s:19:\"2026-03-16 00:34:22\";s:7:\"\0*\0type\";s:5:\"error\";s:10:\"\0*\0message\";s:1403:\"Uncaught Exception: Access denied. in /var/www/html/wp-content/plugins/elementor/core/settings/page/manager.php:105\nStack trace:\n#0 /var/www/html/wp-content/plugins/elementor/core/base/document.php(1811): Elementor\\Core\\Settings\\Page\\Manager->ajax_before_save_settings(Array, 5)\n#1 /var/www/html/wp-content/plugins/elementor/core/base/document.php(911): Elementor\\Core\\Base\\Document->save_settings(Array)\n#2 /var/www/html/wp-content/plugins/elementor/core/kits/manager.php(295): Elementor\\Core\\Base\\Document->update_settings(Array)\n#3 /var/www/html/wp-content/plugins/elementor/core/kits/manager.php(464): Elementor\\Core\\Kits\\Manager->update_kit_settings_based_on_option('site_name', 'm0lzi_3D \\xE2\\x80\\x93 3D...')\n#4 /var/www/html/wp-includes/class-wp-hook.php(343): Elementor\\Core\\Kits\\Manager->Elementor\\Core\\Kits\\{closure}('3D-Druck Hub', 'm0lzi_3D \\xE2\\x80\\x93 3D...')\n#5 /var/www/html/wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters('', Array)\n#6 /var/www/html/wp-includes/plugin.php(522): WP_Hook->do_action(Array)\n#7 /var/www/html/wp-includes/option.php(1020): do_action('update_option_b...', '3D-Druck Hub', 'm0lzi_3D \\xE2\\x80\\x93 3D...', 'blogname')\n#8 Command line code(13): update_option('blogname', 'm0lzi_3D \\xE2\\x80\\x93 3D...')\n#9 {main}\n thrown\";s:7:\"\0*\0meta\";a:1:{s:5:\"trace\";a:1:{i:0;a:3:{s:8:\"function\";s:8:\"shutdown\";s:5:\"class\";s:29:\"Elementor\\Core\\Logger\\Manager\";s:4:\"type\";s:2:\"->\";}}}s:8:\"\0*\0times\";i:1;s:14:\"\0*\0times_dates\";a:1:{i:0;s:19:\"2026-03-16 00:34:22\";}s:7:\"\0*\0args\";a:5:{s:4:\"type\";s:5:\"error\";s:7:\"message\";s:1272:\"Uncaught Exception: Access denied. in /var/www/html/wp-content/plugins/elementor/core/settings/page/manager.php:105\nStack trace:\n#0 /var/www/html/wp-content/plugins/elementor/core/base/document.php(1811): Elementor\\Core\\Settings\\Page\\Manager->ajax_before_save_settings(Array, 5)\n#1 /var/www/html/wp-content/plugins/elementor/core/base/document.php(911): Elementor\\Core\\Base\\Document->save_settings(Array)\n#2 /var/www/html/wp-content/plugins/elementor/core/kits/manager.php(295): Elementor\\Core\\Base\\Document->update_settings(Array)\n#3 /var/www/html/wp-content/plugins/elementor/core/kits/manager.php(464): Elementor\\Core\\Kits\\Manager->update_kit_settings_based_on_option(\'site_name\', \'m0lzi_3D \\xE2\\x80\\x93 3D...\')\n#4 /var/www/html/wp-includes/class-wp-hook.php(343): Elementor\\Core\\Kits\\Manager->Elementor\\Core\\Kits\\{closure}(\'3D-Druck Hub\', \'m0lzi_3D \\xE2\\x80\\x93 3D...\')\n#5 /var/www/html/wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters(\'\', Array)\n#6 /var/www/html/wp-includes/plugin.php(522): WP_Hook->do_action(Array)\n#7 /var/www/html/wp-includes/option.php(1020): do_action(\'update_option_b...\', \'3D-Druck Hub\', \'m0lzi_3D \\xE2\\x80\\x93 3D...\', \'blogname\')\n#8 Command line code(13): update_option(\'blogname\', \'m0lzi_3D \\xE2\\x80\\x93 3D...\')\n#9 {main}\n thrown\";s:4:\"file\";s:73:\"/var/www/html/wp-content/plugins/elementor/core/settings/page/manager.php\";s:4:\"line\";i:105;s:5:\"trace\";b:1;}s:7:\"\0*\0file\";s:73:\"/var/www/html/wp-content/plugins/elementor/core/settings/page/manager.php\";s:7:\"\0*\0line\";i:105;}s:32:\"fd5ed3e5705d0e9529732c027dae178f\";O:32:\"Elementor\\Core\\Logger\\Items\\Base\":7:{s:7:\"\0*\0date\";s:19:\"2026-03-24 19:12:26\";s:7:\"\0*\0type\";s:4:\"info\";s:10:\"\0*\0message\";s:36:\"elementor::elementor_updater Started\";s:7:\"\0*\0meta\";a:0:{}s:8:\"\0*\0times\";i:1;s:14:\"\0*\0times_dates\";a:1:{i:0;s:19:\"2026-03-24 19:12:26\";}s:7:\"\0*\0args\";a:2:{s:7:\"message\";s:36:\"elementor::elementor_updater Started\";s:4:\"type\";s:4:\"info\";}}s:32:\"d8d334f0a517a30fbfe9697cb576e27b\";O:32:\"Elementor\\Core\\Logger\\Items\\Base\":7:{s:7:\"\0*\0date\";s:19:\"2026-03-24 19:12:26\";s:7:\"\0*\0type\";s:4:\"info\";s:10:\"\0*\0message\";s:44:\"Elementor/Upgrades - _on_each_version Start \";s:7:\"\0*\0meta\";a:0:{}s:8:\"\0*\0times\";i:1;s:14:\"\0*\0times_dates\";a:1:{i:0;s:19:\"2026-03-24 19:12:26\";}s:7:\"\0*\0args\";a:2:{s:7:\"message\";s:44:\"Elementor/Upgrades - _on_each_version Start \";s:4:\"type\";s:4:\"info\";}}s:32:\"93bdb9325d02836095260990214096ad\";O:32:\"Elementor\\Core\\Logger\\Items\\Base\":7:{s:7:\"\0*\0date\";s:19:\"2026-03-24 19:12:26\";s:7:\"\0*\0type\";s:4:\"info\";s:10:\"\0*\0message\";s:46:\"Elementor/Upgrades - _on_each_version Finished\";s:7:\"\0*\0meta\";a:0:{}s:8:\"\0*\0times\";i:1;s:14:\"\0*\0times_dates\";a:1:{i:0;s:19:\"2026-03-24 19:12:26\";}s:7:\"\0*\0args\";a:2:{s:7:\"message\";s:46:\"Elementor/Upgrades - _on_each_version Finished\";s:4:\"type\";s:4:\"info\";}}s:32:\"f0e931a659597c9be4f1130801d993b1\";O:32:\"Elementor\\Core\\Logger\\Items\\Base\":7:{s:7:\"\0*\0date\";s:19:\"2026-03-24 19:12:26\";s:7:\"\0*\0type\";s:4:\"info\";s:10:\"\0*\0message\";s:50:\"Elementor data updater process has been completed.\";s:7:\"\0*\0meta\";a:3:{s:6:\"plugin\";s:9:\"Elementor\";s:4:\"from\";s:6:\"3.35.6\";s:2:\"to\";s:6:\"3.35.8\";}s:8:\"\0*\0times\";i:1;s:14:\"\0*\0times_dates\";a:1:{i:0;s:19:\"2026-03-24 19:12:26\";}s:7:\"\0*\0args\";a:3:{s:4:\"meta\";a:3:{s:6:\"plugin\";s:9:\"Elementor\";s:4:\"from\";s:6:\"3.35.6\";s:2:\"to\";s:6:\"3.35.8\";}s:7:\"message\";s:50:\"Elementor data updater process has been completed.\";s:4:\"type\";s:4:\"info\";}}s:32:\"fa7849751086421dd2fd9e7503890702\";O:32:\"Elementor\\Core\\Logger\\Items\\Base\":7:{s:7:\"\0*\0date\";s:19:\"2026-03-24 19:12:26\";s:7:\"\0*\0type\";s:4:\"info\";s:10:\"\0*\0message\";s:47:\"Elementor data updater process has been queued.\";s:7:\"\0*\0meta\";a:3:{s:6:\"plugin\";s:9:\"Elementor\";s:4:\"from\";s:6:\"3.35.6\";s:2:\"to\";s:6:\"3.35.8\";}s:8:\"\0*\0times\";i:1;s:14:\"\0*\0times_dates\";a:1:{i:0;s:19:\"2026-03-24 19:12:26\";}s:7:\"\0*\0args\";a:3:{s:4:\"meta\";a:3:{s:6:\"plugin\";s:9:\"Elementor\";s:4:\"from\";s:6:\"3.35.6\";s:2:\"to\";s:6:\"3.35.8\";}s:7:\"message\";s:47:\"Elementor data updater process has been queued.\";s:4:\"type\";s:4:\"info\";}}s:32:\"68f215aa0f06fbebee9ed844808459c2\";O:32:\"Elementor\\Core\\Logger\\Items\\Base\":7:{s:7:\"\0*\0date\";s:19:\"2026-03-24 19:12:27\";s:7:\"\0*\0type\";s:4:\"info\";s:10:\"\0*\0message\";s:47:\"Elementor data updater process has been queued.\";s:7:\"\0*\0meta\";a:3:{s:6:\"plugin\";s:9:\"Elementor\";s:4:\"from\";s:6:\"3.35.6\";s:2:\"to\";s:6:\"3.35.8\";}s:8:\"\0*\0times\";i:1;s:14:\"\0*\0times_dates\";a:1:{i:0;s:19:\"2026-03-24 19:12:27\";}s:7:\"\0*\0args\";a:3:{s:4:\"meta\";a:3:{s:6:\"plugin\";s:9:\"Elementor\";s:4:\"from\";s:6:\"3.35.6\";s:2:\"to\";s:6:\"3.35.8\";}s:7:\"message\";s:47:\"Elementor data updater process has been queued.\";s:4:\"type\";s:4:\"info\";}}}','off'), +(2255,'custom_css_post_-1','.ast-separate-container .site-content, body, .ast-separate-container { background: #0d1117 !important; } .site-header { background: #161b22 !important; border-bottom: 1px solid #30363d !important; } .ast-site-identity .site-title a { color: #f97316 !important; font-weight: 800 !important; } .main-header-menu .menu-item > .menu-link { color: #8b949e !important; } .main-header-menu .menu-item:hover > .menu-link, .main-header-menu .current-menu-item > .menu-link { color: #f97316 !important; } .entry-content .m3d-page { margin: -3em -3em 0 !important; } .ast-separate-container .ast-article-single { padding: 0 !important; background: transparent !important; } .site-below-footer-wrap { background: #161b22 !important; border-top: 1px solid #30363d !important; } .ast-footer-copyright { color: #8b949e !important; } .ast-mobile-header-stack .main-header-bar { background: #161b22 !important; border-bottom: 1px solid #30363d !important; }','yes'), +(3689,'elementor_elementor_updater_completed','1','auto'), +(3694,'elementor_1_elementor_updater_batch_afa1d72256fb98f37cdf417a3a8a','a:1:{i:0;a:1:{s:8:\"callback\";a:2:{i:0;s:31:\"Elementor\\Core\\Upgrade\\Upgrades\";i:1;s:16:\"_on_each_version\";}}}','off'), +(3695,'elementor_atomic_cache_validity__component-styles-related-posts','a:2:{s:5:\"state\";b:0;s:8:\"children\";a:61:{i:8;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:13;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:58;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:72;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:12;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:290;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:375;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:9;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:51;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:10;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:11;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:50;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:397;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:411;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:398;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:417;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:424;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:449;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:463;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:321;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:325;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:294;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:310;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:300;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:455;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:314;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:450;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:406;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:464;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:413;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:426;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:335;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:412;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:420;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:340;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:425;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:404;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:446;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:454;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:377;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:376;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:394;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:407;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:409;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:421;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:339;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:331;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:442;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:418;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:422;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:465;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:304;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:403;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:460;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:436;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:401;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:459;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:486;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:15;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:14;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}i:492;a:2:{s:5:\"state\";b:1;s:4:\"meta\";a:0:{}}}}','off'), +(3704,'custom_css_post_id','351','auto'), +(4009,'_transient_wp_styles_for_blocks','a:2:{s:4:\"hash\";s:32:\"3199e2537fbad380fa221e097719f7c6\";s:6:\"blocks\";a:6:{s:11:\"core/button\";s:0:\"\";s:14:\"core/site-logo\";s:0:\"\";s:18:\"core/post-template\";s:0:\"\";s:18:\"core/term-template\";s:0:\"\";s:12:\"core/columns\";s:0:\"\";s:14:\"core/pullquote\";s:69:\":root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}\";}}','on'), +(4025,'autoptimize_js','off','yes'), +(4026,'autoptimize_html','off','yes'), +(4091,'_site_transient_update_core','O:8:\"stdClass\":4:{s:7:\"updates\";a:1:{i:0;O:8:\"stdClass\":10:{s:8:\"response\";s:6:\"latest\";s:8:\"download\";s:59:\"https://downloads.wordpress.org/release/wordpress-6.9.4.zip\";s:6:\"locale\";s:5:\"en_US\";s:8:\"packages\";O:8:\"stdClass\":5:{s:4:\"full\";s:59:\"https://downloads.wordpress.org/release/wordpress-6.9.4.zip\";s:10:\"no_content\";s:70:\"https://downloads.wordpress.org/release/wordpress-6.9.4-no-content.zip\";s:11:\"new_bundled\";s:71:\"https://downloads.wordpress.org/release/wordpress-6.9.4-new-bundled.zip\";s:7:\"partial\";s:0:\"\";s:8:\"rollback\";s:0:\"\";}s:7:\"current\";s:5:\"6.9.4\";s:7:\"version\";s:5:\"6.9.4\";s:11:\"php_version\";s:6:\"7.2.24\";s:13:\"mysql_version\";s:5:\"5.5.5\";s:11:\"new_bundled\";s:3:\"6.7\";s:15:\"partial_version\";s:0:\"\";}}s:12:\"last_checked\";i:1774729138;s:15:\"version_checked\";s:5:\"6.9.4\";s:12:\"translations\";a:0:{}}','off'), +(4175,'_site_transient_timeout_php_check_986ab27a5c44eb5941b7e3b238532f66','1775156355','off'), +(4176,'_site_transient_php_check_986ab27a5c44eb5941b7e3b238532f66','a:5:{s:19:\"recommended_version\";s:3:\"8.3\";s:15:\"minimum_version\";s:6:\"7.2.24\";s:12:\"is_supported\";b:0;s:9:\"is_secure\";b:1;s:13:\"is_acceptable\";b:1;}','off'), +(4177,'_transient_health-check-site-status-result','{\"good\":20,\"recommended\":5,\"critical\":0}','on'), +(4488,'_transient_is_multi_author','1','on'), +(4502,'_site_transient_update_themes','O:8:\"stdClass\":5:{s:12:\"last_checked\";i:1774729139;s:7:\"checked\";a:4:{s:5:\"astra\";s:6:\"4.12.6\";s:16:\"twentytwentyfive\";s:3:\"1.3\";s:16:\"twentytwentyfour\";s:3:\"1.3\";s:17:\"twentytwentythree\";s:3:\"1.6\";}s:8:\"response\";a:2:{s:16:\"twentytwentyfive\";a:6:{s:5:\"theme\";s:16:\"twentytwentyfive\";s:11:\"new_version\";s:3:\"1.4\";s:3:\"url\";s:46:\"https://wordpress.org/themes/twentytwentyfive/\";s:7:\"package\";s:62:\"https://downloads.wordpress.org/theme/twentytwentyfive.1.4.zip\";s:8:\"requires\";s:3:\"6.7\";s:12:\"requires_php\";s:3:\"7.2\";}s:16:\"twentytwentyfour\";a:6:{s:5:\"theme\";s:16:\"twentytwentyfour\";s:11:\"new_version\";s:3:\"1.4\";s:3:\"url\";s:46:\"https://wordpress.org/themes/twentytwentyfour/\";s:7:\"package\";s:62:\"https://downloads.wordpress.org/theme/twentytwentyfour.1.4.zip\";s:8:\"requires\";s:3:\"6.4\";s:12:\"requires_php\";s:3:\"7.0\";}}s:9:\"no_update\";a:2:{s:5:\"astra\";a:6:{s:5:\"theme\";s:5:\"astra\";s:11:\"new_version\";s:6:\"4.12.6\";s:3:\"url\";s:35:\"https://wordpress.org/themes/astra/\";s:7:\"package\";s:54:\"https://downloads.wordpress.org/theme/astra.4.12.6.zip\";s:8:\"requires\";s:3:\"5.3\";s:12:\"requires_php\";s:3:\"5.3\";}s:17:\"twentytwentythree\";a:6:{s:5:\"theme\";s:17:\"twentytwentythree\";s:11:\"new_version\";s:3:\"1.6\";s:3:\"url\";s:47:\"https://wordpress.org/themes/twentytwentythree/\";s:7:\"package\";s:63:\"https://downloads.wordpress.org/theme/twentytwentythree.1.6.zip\";s:8:\"requires\";s:3:\"6.1\";s:12:\"requires_php\";s:3:\"5.6\";}}s:12:\"translations\";a:0:{}}','off'), +(4503,'_site_transient_update_plugins','O:8:\"stdClass\":5:{s:12:\"last_checked\";i:1774729140;s:8:\"response\";a:1:{s:23:\"elementor/elementor.php\";O:8:\"stdClass\":13:{s:2:\"id\";s:23:\"w.org/plugins/elementor\";s:4:\"slug\";s:9:\"elementor\";s:6:\"plugin\";s:23:\"elementor/elementor.php\";s:11:\"new_version\";s:6:\"3.35.9\";s:3:\"url\";s:40:\"https://wordpress.org/plugins/elementor/\";s:7:\"package\";s:59:\"https://downloads.wordpress.org/plugin/elementor.3.35.9.zip\";s:5:\"icons\";a:2:{s:2:\"2x\";s:62:\"https://ps.w.org/elementor/assets/icon-256x256.gif?rev=3444228\";s:2:\"1x\";s:62:\"https://ps.w.org/elementor/assets/icon-128x128.gif?rev=3444228\";}s:7:\"banners\";a:2:{s:2:\"2x\";s:65:\"https://ps.w.org/elementor/assets/banner-1544x500.png?rev=3443226\";s:2:\"1x\";s:64:\"https://ps.w.org/elementor/assets/banner-772x250.png?rev=3443226\";}s:11:\"banners_rtl\";a:0:{}s:8:\"requires\";s:3:\"6.6\";s:6:\"tested\";s:5:\"6.9.4\";s:12:\"requires_php\";s:3:\"7.4\";s:16:\"requires_plugins\";a:0:{}}}s:12:\"translations\";a:0:{}s:9:\"no_update\";a:6:{s:19:\"akismet/akismet.php\";O:8:\"stdClass\":10:{s:2:\"id\";s:21:\"w.org/plugins/akismet\";s:4:\"slug\";s:7:\"akismet\";s:6:\"plugin\";s:19:\"akismet/akismet.php\";s:11:\"new_version\";s:3:\"5.6\";s:3:\"url\";s:38:\"https://wordpress.org/plugins/akismet/\";s:7:\"package\";s:54:\"https://downloads.wordpress.org/plugin/akismet.5.6.zip\";s:5:\"icons\";a:2:{s:2:\"2x\";s:60:\"https://ps.w.org/akismet/assets/icon-256x256.png?rev=2818463\";s:2:\"1x\";s:60:\"https://ps.w.org/akismet/assets/icon-128x128.png?rev=2818463\";}s:7:\"banners\";a:2:{s:2:\"2x\";s:63:\"https://ps.w.org/akismet/assets/banner-1544x500.png?rev=2900731\";s:2:\"1x\";s:62:\"https://ps.w.org/akismet/assets/banner-772x250.png?rev=2900731\";}s:11:\"banners_rtl\";a:0:{}s:8:\"requires\";s:3:\"5.8\";}s:27:\"autoptimize/autoptimize.php\";O:8:\"stdClass\":10:{s:2:\"id\";s:25:\"w.org/plugins/autoptimize\";s:4:\"slug\";s:11:\"autoptimize\";s:6:\"plugin\";s:27:\"autoptimize/autoptimize.php\";s:11:\"new_version\";s:6:\"3.1.15\";s:3:\"url\";s:42:\"https://wordpress.org/plugins/autoptimize/\";s:7:\"package\";s:61:\"https://downloads.wordpress.org/plugin/autoptimize.3.1.15.zip\";s:5:\"icons\";a:2:{s:2:\"2x\";s:64:\"https://ps.w.org/autoptimize/assets/icon-256X256.png?rev=2211608\";s:2:\"1x\";s:64:\"https://ps.w.org/autoptimize/assets/icon-128x128.png?rev=1864142\";}s:7:\"banners\";a:1:{s:2:\"1x\";s:66:\"https://ps.w.org/autoptimize/assets/banner-772x250.jpg?rev=1315920\";}s:11:\"banners_rtl\";a:0:{}s:8:\"requires\";s:3:\"5.3\";}s:9:\"hello.php\";O:8:\"stdClass\":10:{s:2:\"id\";s:25:\"w.org/plugins/hello-dolly\";s:4:\"slug\";s:11:\"hello-dolly\";s:6:\"plugin\";s:9:\"hello.php\";s:11:\"new_version\";s:5:\"1.7.2\";s:3:\"url\";s:42:\"https://wordpress.org/plugins/hello-dolly/\";s:7:\"package\";s:60:\"https://downloads.wordpress.org/plugin/hello-dolly.1.7.2.zip\";s:5:\"icons\";a:2:{s:2:\"2x\";s:64:\"https://ps.w.org/hello-dolly/assets/icon-256x256.jpg?rev=2052855\";s:2:\"1x\";s:64:\"https://ps.w.org/hello-dolly/assets/icon-128x128.jpg?rev=2052855\";}s:7:\"banners\";a:2:{s:2:\"2x\";s:67:\"https://ps.w.org/hello-dolly/assets/banner-1544x500.jpg?rev=2645582\";s:2:\"1x\";s:66:\"https://ps.w.org/hello-dolly/assets/banner-772x250.jpg?rev=2052855\";}s:11:\"banners_rtl\";a:0:{}s:8:\"requires\";s:3:\"4.6\";}s:51:\"header-footer-elementor/header-footer-elementor.php\";O:8:\"stdClass\":10:{s:2:\"id\";s:37:\"w.org/plugins/header-footer-elementor\";s:4:\"slug\";s:23:\"header-footer-elementor\";s:6:\"plugin\";s:51:\"header-footer-elementor/header-footer-elementor.php\";s:11:\"new_version\";s:5:\"2.8.5\";s:3:\"url\";s:54:\"https://wordpress.org/plugins/header-footer-elementor/\";s:7:\"package\";s:72:\"https://downloads.wordpress.org/plugin/header-footer-elementor.2.8.5.zip\";s:5:\"icons\";a:2:{s:2:\"2x\";s:76:\"https://ps.w.org/header-footer-elementor/assets/icon-256x256.gif?rev=3278750\";s:2:\"1x\";s:76:\"https://ps.w.org/header-footer-elementor/assets/icon-128x128.gif?rev=3278750\";}s:7:\"banners\";a:2:{s:2:\"2x\";s:79:\"https://ps.w.org/header-footer-elementor/assets/banner-1544x500.gif?rev=3278750\";s:2:\"1x\";s:78:\"https://ps.w.org/header-footer-elementor/assets/banner-772x250.gif?rev=3278750\";}s:11:\"banners_rtl\";a:0:{}s:8:\"requires\";s:3:\"5.0\";}s:27:\"wp-super-cache/wp-cache.php\";O:8:\"stdClass\":10:{s:2:\"id\";s:28:\"w.org/plugins/wp-super-cache\";s:4:\"slug\";s:14:\"wp-super-cache\";s:6:\"plugin\";s:27:\"wp-super-cache/wp-cache.php\";s:11:\"new_version\";s:5:\"3.0.3\";s:3:\"url\";s:45:\"https://wordpress.org/plugins/wp-super-cache/\";s:7:\"package\";s:63:\"https://downloads.wordpress.org/plugin/wp-super-cache.3.0.3.zip\";s:5:\"icons\";a:2:{s:2:\"2x\";s:67:\"https://ps.w.org/wp-super-cache/assets/icon-256x256.png?rev=1095422\";s:2:\"1x\";s:67:\"https://ps.w.org/wp-super-cache/assets/icon-128x128.png?rev=1095422\";}s:7:\"banners\";a:2:{s:2:\"2x\";s:70:\"https://ps.w.org/wp-super-cache/assets/banner-1544x500.png?rev=1082414\";s:2:\"1x\";s:69:\"https://ps.w.org/wp-super-cache/assets/banner-772x250.png?rev=1082414\";}s:11:\"banners_rtl\";a:0:{}s:8:\"requires\";s:3:\"6.7\";}s:24:\"wordpress-seo/wp-seo.php\";O:8:\"stdClass\":10:{s:2:\"id\";s:27:\"w.org/plugins/wordpress-seo\";s:4:\"slug\";s:13:\"wordpress-seo\";s:6:\"plugin\";s:24:\"wordpress-seo/wp-seo.php\";s:11:\"new_version\";s:4:\"27.2\";s:3:\"url\";s:44:\"https://wordpress.org/plugins/wordpress-seo/\";s:7:\"package\";s:61:\"https://downloads.wordpress.org/plugin/wordpress-seo.27.2.zip\";s:5:\"icons\";a:2:{s:2:\"2x\";s:66:\"https://ps.w.org/wordpress-seo/assets/icon-256x256.gif?rev=3419908\";s:2:\"1x\";s:66:\"https://ps.w.org/wordpress-seo/assets/icon-128x128.gif?rev=3419908\";}s:7:\"banners\";a:2:{s:2:\"2x\";s:69:\"https://ps.w.org/wordpress-seo/assets/banner-1544x500.png?rev=3257862\";s:2:\"1x\";s:68:\"https://ps.w.org/wordpress-seo/assets/banner-772x250.png?rev=3257862\";}s:11:\"banners_rtl\";a:2:{s:2:\"2x\";s:73:\"https://ps.w.org/wordpress-seo/assets/banner-1544x500-rtl.png?rev=3257862\";s:2:\"1x\";s:72:\"https://ps.w.org/wordpress-seo/assets/banner-772x250-rtl.png?rev=3257862\";}s:8:\"requires\";s:3:\"6.8\";}}s:7:\"checked\";a:7:{s:19:\"akismet/akismet.php\";s:3:\"5.6\";s:27:\"autoptimize/autoptimize.php\";s:6:\"3.1.15\";s:23:\"elementor/elementor.php\";s:6:\"3.35.8\";s:9:\"hello.php\";s:5:\"1.7.2\";s:51:\"header-footer-elementor/header-footer-elementor.php\";s:5:\"2.8.5\";s:27:\"wp-super-cache/wp-cache.php\";s:5:\"3.0.3\";s:24:\"wordpress-seo/wp-seo.php\";s:4:\"27.2\";}}','off'), +(4509,'_transient_timeout_elementor_remote_info_api_data_3.35.8','1774773612','off'), +(4510,'_transient_elementor_remote_info_api_data_3.35.8','a:4:{s:9:\"timestamp\";s:10:\"1774730122\";s:14:\"upgrade_notice\";a:3:{s:7:\"version\";s:5:\"2.0.0\";s:7:\"message\";s:0:\"\";s:11:\"update_link\";s:0:\"\";}s:11:\"pro_widgets\";a:82:{i:0;a:4:{s:4:\"name\";s:6:\"search\";s:5:\"title\";s:6:\"Search\";s:4:\"icon\";s:17:\"eicon-site-search\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:1;a:4:{s:4:\"name\";s:5:\"posts\";s:5:\"title\";s:5:\"Posts\";s:4:\"icon\";s:15:\"eicon-post-list\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:2;a:4:{s:4:\"name\";s:9:\"portfolio\";s:5:\"title\";s:9:\"Portfolio\";s:4:\"icon\";s:18:\"eicon-gallery-grid\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:3;a:4:{s:4:\"name\";s:17:\"link-in-bio-var-2\";s:5:\"title\";s:7:\"Classic\";s:4:\"icon\";s:19:\"eicon-site-identity\";s:10:\"categories\";s:15:\"[\"link-in-bio\"]\";}i:4;a:4:{s:4:\"name\";s:9:\"mega-menu\";s:5:\"title\";s:4:\"Menu\";s:4:\"icon\";s:15:\"eicon-mega-menu\";s:10:\"categories\";s:33:\"[\"pro-elements\",\"theme-elements\"]\";}i:5;a:4:{s:4:\"name\";s:17:\"link-in-bio-var-3\";s:5:\"title\";s:8:\"Showcase\";s:4:\"icon\";s:19:\"eicon-site-identity\";s:10:\"categories\";s:15:\"[\"link-in-bio\"]\";}i:6;a:4:{s:4:\"name\";s:4:\"form\";s:5:\"title\";s:4:\"Form\";s:4:\"icon\";s:21:\"eicon-form-horizontal\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:7;a:4:{s:4:\"name\";s:17:\"link-in-bio-var-4\";s:5:\"title\";s:5:\"Links\";s:4:\"icon\";s:19:\"eicon-site-identity\";s:10:\"categories\";s:15:\"[\"link-in-bio\"]\";}i:8;a:4:{s:4:\"name\";s:9:\"loop-grid\";s:5:\"title\";s:9:\"Loop Grid\";s:4:\"icon\";s:18:\"eicon-loop-builder\";s:10:\"categories\";s:33:\"[\"pro-elements\",\"theme-elements\"]\";}i:9;a:4:{s:4:\"name\";s:17:\"link-in-bio-var-5\";s:5:\"title\";s:8:\"Services\";s:4:\"icon\";s:19:\"eicon-site-identity\";s:10:\"categories\";s:15:\"[\"link-in-bio\"]\";}i:10;a:4:{s:4:\"name\";s:13:\"loop-carousel\";s:5:\"title\";s:13:\"Loop Carousel\";s:4:\"icon\";s:19:\"eicon-carousel-loop\";s:10:\"categories\";s:33:\"[\"pro-elements\",\"theme-elements\"]\";}i:11;a:4:{s:4:\"name\";s:17:\"link-in-bio-var-6\";s:5:\"title\";s:9:\"Portfolio\";s:4:\"icon\";s:19:\"eicon-site-identity\";s:10:\"categories\";s:15:\"[\"link-in-bio\"]\";}i:12;a:4:{s:4:\"name\";s:7:\"gallery\";s:5:\"title\";s:7:\"Gallery\";s:4:\"icon\";s:23:\"eicon-gallery-justified\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:13;a:4:{s:4:\"name\";s:17:\"link-in-bio-var-7\";s:5:\"title\";s:13:\"Business Card\";s:4:\"icon\";s:19:\"eicon-site-identity\";s:10:\"categories\";s:15:\"[\"link-in-bio\"]\";}i:14;a:4:{s:4:\"name\";s:17:\"animated-headline\";s:5:\"title\";s:17:\"Animated Headline\";s:4:\"icon\";s:23:\"eicon-animated-headline\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:15;a:4:{s:4:\"name\";s:10:\"price-list\";s:5:\"title\";s:10:\"Price List\";s:4:\"icon\";s:16:\"eicon-price-list\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:16;a:4:{s:4:\"name\";s:11:\"price-table\";s:5:\"title\";s:11:\"Price Table\";s:4:\"icon\";s:17:\"eicon-price-table\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:17;a:4:{s:4:\"name\";s:8:\"flip-box\";s:5:\"title\";s:8:\"Flip Box\";s:4:\"icon\";s:14:\"eicon-flip-box\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:18;a:4:{s:4:\"name\";s:14:\"call-to-action\";s:5:\"title\";s:14:\"Call to Action\";s:4:\"icon\";s:20:\"eicon-image-rollover\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:19;a:4:{s:4:\"name\";s:14:\"media-carousel\";s:5:\"title\";s:14:\"Media Carousel\";s:4:\"icon\";s:20:\"eicon-media-carousel\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:20;a:4:{s:4:\"name\";s:15:\"nested-carousel\";s:5:\"title\";s:8:\"Carousel\";s:4:\"icon\";s:21:\"eicon-nested-carousel\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:21;a:4:{s:4:\"name\";s:10:\"off-canvas\";s:5:\"title\";s:10:\"Off-Canvas\";s:4:\"icon\";s:16:\"eicon-off-canvas\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:22;a:4:{s:4:\"name\";s:9:\"countdown\";s:5:\"title\";s:9:\"Countdown\";s:4:\"icon\";s:15:\"eicon-countdown\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:23;a:4:{s:4:\"name\";s:13:\"share-buttons\";s:5:\"title\";s:13:\"Share Buttons\";s:4:\"icon\";s:11:\"eicon-share\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:24;a:4:{s:4:\"name\";s:10:\"blockquote\";s:5:\"title\";s:10:\"Blockquote\";s:4:\"icon\";s:16:\"eicon-blockquote\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:25;a:4:{s:4:\"name\";s:6:\"lottie\";s:5:\"title\";s:6:\"Lottie\";s:4:\"icon\";s:12:\"eicon-lottie\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:26;a:4:{s:4:\"name\";s:7:\"hotspot\";s:5:\"title\";s:7:\"Hotspot\";s:4:\"icon\";s:19:\"eicon-image-hotspot\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:27;a:4:{s:4:\"name\";s:13:\"paypal-button\";s:5:\"title\";s:13:\"PayPal Button\";s:4:\"icon\";s:19:\"eicon-paypal-button\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:28;a:4:{s:4:\"name\";s:14:\"code-highlight\";s:5:\"title\";s:14:\"Code Highlight\";s:4:\"icon\";s:20:\"eicon-code-highlight\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:29;a:4:{s:4:\"name\";s:14:\"video-playlist\";s:5:\"title\";s:14:\"Video Playlist\";s:4:\"icon\";s:20:\"eicon-video-playlist\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:30;a:4:{s:4:\"name\";s:8:\"template\";s:5:\"title\";s:8:\"Template\";s:4:\"icon\";s:19:\"eicon-document-file\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:31;a:4:{s:4:\"name\";s:13:\"stripe-button\";s:5:\"title\";s:13:\"Stripe Button\";s:4:\"icon\";s:19:\"eicon-stripe-button\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:32;a:4:{s:4:\"name\";s:16:\"progress-tracker\";s:5:\"title\";s:16:\"Progress Tracker\";s:4:\"icon\";s:22:\"eicon-progress-tracker\";s:10:\"categories\";s:40:\"[\"pro-elements\",\"theme-elements-single\"]\";}i:33;a:4:{s:4:\"name\";s:8:\"nav-menu\";s:5:\"title\";s:8:\"Nav Menu\";s:4:\"icon\";s:14:\"eicon-nav-menu\";s:10:\"categories\";s:33:\"[\"pro-elements\",\"theme-elements\"]\";}i:34;a:4:{s:4:\"name\";s:17:\"table-of-contents\";s:5:\"title\";s:17:\"Table of Contents\";s:4:\"icon\";s:23:\"eicon-table-of-contents\";s:10:\"categories\";s:33:\"[\"pro-elements\",\"theme-elements\"]\";}i:35;a:4:{s:4:\"name\";s:5:\"login\";s:5:\"title\";s:5:\"Login\";s:4:\"icon\";s:15:\"eicon-lock-user\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:36;a:4:{s:4:\"name\";s:6:\"slides\";s:5:\"title\";s:6:\"Slides\";s:4:\"icon\";s:12:\"eicon-slides\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:37;a:4:{s:4:\"name\";s:20:\"testimonial-carousel\";s:5:\"title\";s:20:\"Testimonial Carousel\";s:4:\"icon\";s:26:\"eicon-testimonial-carousel\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:38;a:4:{s:4:\"name\";s:7:\"reviews\";s:5:\"title\";s:7:\"Reviews\";s:4:\"icon\";s:12:\"eicon-review\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:39;a:4:{s:4:\"name\";s:15:\"facebook-button\";s:5:\"title\";s:15:\"Facebook Button\";s:4:\"icon\";s:23:\"eicon-facebook-like-box\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:40;a:4:{s:4:\"name\";s:17:\"facebook-comments\";s:5:\"title\";s:17:\"Facebook Comments\";s:4:\"icon\";s:23:\"eicon-facebook-comments\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:41;a:4:{s:4:\"name\";s:14:\"facebook-embed\";s:5:\"title\";s:14:\"Facebook Embed\";s:4:\"icon\";s:14:\"eicon-fb-embed\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:42;a:4:{s:4:\"name\";s:13:\"facebook-page\";s:5:\"title\";s:13:\"Facebook Page\";s:4:\"icon\";s:13:\"eicon-fb-feed\";s:10:\"categories\";s:16:\"[\"pro-elements\"]\";}i:43;a:4:{s:4:\"name\";s:15:\"theme-site-logo\";s:5:\"title\";s:9:\"Site Logo\";s:4:\"icon\";s:15:\"eicon-site-logo\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:44;a:4:{s:4:\"name\";s:16:\"theme-site-title\";s:5:\"title\";s:10:\"Site Title\";s:4:\"icon\";s:16:\"eicon-site-title\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:45;a:4:{s:4:\"name\";s:16:\"theme-page-title\";s:5:\"title\";s:10:\"Page Title\";s:4:\"icon\";s:19:\"eicon-archive-title\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:46;a:4:{s:4:\"name\";s:16:\"theme-post-title\";s:5:\"title\";s:10:\"Post Title\";s:4:\"icon\";s:16:\"eicon-post-title\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:47;a:4:{s:4:\"name\";s:18:\"theme-post-excerpt\";s:5:\"title\";s:12:\"Post Excerpt\";s:4:\"icon\";s:18:\"eicon-post-excerpt\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:48;a:4:{s:4:\"name\";s:25:\"theme-post-featured-image\";s:5:\"title\";s:14:\"Featured Image\";s:4:\"icon\";s:20:\"eicon-featured-image\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:49;a:4:{s:4:\"name\";s:19:\"theme-archive-title\";s:5:\"title\";s:13:\"Archive Title\";s:4:\"icon\";s:19:\"eicon-archive-title\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:50;a:4:{s:4:\"name\";s:13:\"archive-posts\";s:5:\"title\";s:13:\"Archive Posts\";s:4:\"icon\";s:19:\"eicon-archive-posts\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:51;a:4:{s:4:\"name\";s:10:\"author-box\";s:5:\"title\";s:10:\"Author Box\";s:4:\"icon\";s:12:\"eicon-person\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:52;a:4:{s:4:\"name\";s:13:\"post-comments\";s:5:\"title\";s:13:\"Post Comments\";s:4:\"icon\";s:14:\"eicon-comments\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:53;a:4:{s:4:\"name\";s:15:\"post-navigation\";s:5:\"title\";s:15:\"Post Navigation\";s:4:\"icon\";s:21:\"eicon-post-navigation\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:54;a:4:{s:4:\"name\";s:9:\"post-info\";s:5:\"title\";s:9:\"Post Info\";s:4:\"icon\";s:15:\"eicon-post-info\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:55;a:4:{s:4:\"name\";s:7:\"sitemap\";s:5:\"title\";s:7:\"Sitemap\";s:4:\"icon\";s:13:\"eicon-sitemap\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:56;a:4:{s:4:\"name\";s:11:\"breadcrumbs\";s:5:\"title\";s:11:\"Breadcrumbs\";s:4:\"icon\";s:11:\"eicon-yoast\";s:10:\"categories\";s:18:\"[\"theme-elements\"]\";}i:57;a:4:{s:4:\"name\";s:21:\"woocommerce-menu-cart\";s:5:\"title\";s:9:\"Menu Cart\";s:4:\"icon\";s:10:\"eicon-cart\";s:10:\"categories\";s:41:\"[\"theme-elements\",\"woocommerce-elements\"]\";}i:58;a:4:{s:4:\"name\";s:19:\"wc-archive-products\";s:5:\"title\";s:16:\"Archive Products\";s:4:\"icon\";s:14:\"eicon-products\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:59;a:4:{s:4:\"name\";s:31:\"woocommerce-archive-description\";s:5:\"title\";s:19:\"Archive Description\";s:4:\"icon\";s:25:\"eicon-product-description\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:60;a:4:{s:4:\"name\";s:20:\"woocommerce-products\";s:5:\"title\";s:8:\"Products\";s:4:\"icon\";s:14:\"eicon-products\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:61;a:4:{s:4:\"name\";s:22:\"woocommerce-breadcrumb\";s:5:\"title\";s:23:\"WooCommerce Breadcrumbs\";s:4:\"icon\";s:25:\"eicon-product-breadcrumbs\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:62;a:4:{s:4:\"name\";s:14:\"wc-add-to-cart\";s:5:\"title\";s:18:\"Custom Add To Cart\";s:4:\"icon\";s:17:\"eicon-woocommerce\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:63;a:4:{s:4:\"name\";s:11:\"wc-elements\";s:5:\"title\";s:17:\"WooCommerce Pages\";s:4:\"icon\";s:19:\"eicon-product-pages\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:64;a:4:{s:4:\"name\";s:13:\"wc-categories\";s:5:\"title\";s:18:\"Product Categories\";s:4:\"icon\";s:24:\"eicon-product-categories\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:65;a:4:{s:4:\"name\";s:25:\"woocommerce-product-title\";s:5:\"title\";s:13:\"Product Title\";s:4:\"icon\";s:19:\"eicon-product-title\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:66;a:4:{s:4:\"name\";s:26:\"woocommerce-product-images\";s:5:\"title\";s:14:\"Product Images\";s:4:\"icon\";s:20:\"eicon-product-images\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:67;a:4:{s:4:\"name\";s:25:\"woocommerce-product-price\";s:5:\"title\";s:13:\"Product Price\";s:4:\"icon\";s:19:\"eicon-product-price\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:68;a:4:{s:4:\"name\";s:31:\"woocommerce-product-add-to-cart\";s:5:\"title\";s:11:\"Add To Cart\";s:4:\"icon\";s:25:\"eicon-product-add-to-cart\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:69;a:4:{s:4:\"name\";s:26:\"woocommerce-product-rating\";s:5:\"title\";s:14:\"Product Rating\";s:4:\"icon\";s:20:\"eicon-product-rating\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:70;a:4:{s:4:\"name\";s:25:\"woocommerce-product-stock\";s:5:\"title\";s:13:\"Product Stock\";s:4:\"icon\";s:19:\"eicon-product-stock\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:71;a:4:{s:4:\"name\";s:24:\"woocommerce-product-meta\";s:5:\"title\";s:12:\"Product Meta\";s:4:\"icon\";s:18:\"eicon-product-meta\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:72;a:4:{s:4:\"name\";s:37:\"woocommerce-product-short-description\";s:5:\"title\";s:17:\"Short Description\";s:4:\"icon\";s:25:\"eicon-product-description\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:73;a:4:{s:4:\"name\";s:29:\"woocommerce-product-data-tabs\";s:5:\"title\";s:17:\"Product Data Tabs\";s:4:\"icon\";s:18:\"eicon-product-tabs\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:74;a:4:{s:4:\"name\";s:42:\"woocommerce-product-additional-information\";s:5:\"title\";s:22:\"Additional Information\";s:4:\"icon\";s:19:\" eicon-product-info\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:75;a:4:{s:4:\"name\";s:27:\"woocommerce-product-related\";s:5:\"title\";s:15:\"Product Related\";s:4:\"icon\";s:21:\"eicon-product-related\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:76;a:4:{s:4:\"name\";s:26:\"woocommerce-product-upsell\";s:5:\"title\";s:7:\"Upsells\";s:4:\"icon\";s:20:\"eicon-product-upsell\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:77;a:4:{s:4:\"name\";s:25:\"woocommerce-checkout-page\";s:5:\"title\";s:8:\"Checkout\";s:4:\"icon\";s:14:\"eicon-checkout\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:78;a:4:{s:4:\"name\";s:16:\"woocommerce-cart\";s:5:\"title\";s:4:\"Cart\";s:4:\"icon\";s:14:\"eicon-woo-cart\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:79;a:4:{s:4:\"name\";s:22:\"woocommerce-my-account\";s:5:\"title\";s:10:\"My Account\";s:4:\"icon\";s:16:\"eicon-my-account\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:80;a:4:{s:4:\"name\";s:28:\"woocommerce-purchase-summary\";s:5:\"title\";s:16:\"Purchase Summary\";s:4:\"icon\";s:22:\"eicon-purchase-summary\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}i:81;a:4:{s:4:\"name\";s:19:\"woocommerce-notices\";s:5:\"title\";s:19:\"WooCommerce Notices\";s:4:\"icon\";s:25:\"eicon-woocommerce-notices\";s:10:\"categories\";s:24:\"[\"woocommerce-elements\"]\";}}s:17:\"canary_deployment\";a:2:{s:11:\"plugin_info\";a:11:{s:2:\"id\";s:23:\"w.org/plugins/elementor\";s:4:\"slug\";s:9:\"elementor\";s:6:\"plugin\";s:23:\"elementor/elementor.php\";s:11:\"new_version\";s:5:\"3.6.0\";s:7:\"package\";s:58:\"https://downloads.wordpress.org/plugin/elementor.3.6.0.zip\";s:3:\"url\";s:40:\"https://wordpress.org/plugins/elementor/\";s:5:\"icons\";a:3:{s:2:\"2x\";s:62:\"https://ps.w.org/elementor/assets/icon-256x256.png?rev=1427768\";s:2:\"1x\";s:54:\"https://ps.w.org/elementor/assets/icon.svg?rev=1426809\";s:3:\"svg\";s:54:\"https://ps.w.org/elementor/assets/icon.svg?rev=1426809\";}s:7:\"banners\";a:2:{s:2:\"2x\";s:65:\"https://ps.w.org/elementor/assets/banner-1544x500.png?rev=1475479\";s:2:\"1x\";s:64:\"https://ps.w.org/elementor/assets/banner-772x250.png?rev=1475479\";}s:11:\"banners_rtl\";a:0:{}s:6:\"tested\";s:5:\"6.9.4\";s:12:\"requires_php\";s:3:\"5.6\";}s:10:\"conditions\";a:0:{}}}','off'), +(4514,'_site_transient_timeout_theme_roots','1774733884','off'), +(4515,'_site_transient_theme_roots','a:4:{s:5:\"astra\";s:7:\"/themes\";s:16:\"twentytwentyfive\";s:7:\"/themes\";s:16:\"twentytwentyfour\";s:7:\"/themes\";s:17:\"twentytwentythree\";s:7:\"/themes\";}','off'), +(4524,'_site_transient_timeout_wp_theme_files_patterns-bcf70849d4b9b932360d3029c53c6af3','1774743525','off'), +(4525,'_site_transient_wp_theme_files_patterns-bcf70849d4b9b932360d3029c53c6af3','a:2:{s:7:\"version\";s:6:\"4.12.6\";s:8:\"patterns\";a:0:{}}','off'), +(4526,'_transient_timeout_astra-theme-cron-test-ok','1774745325','off'), +(4527,'_transient_astra-theme-cron-test-ok','1','off'); +/*!40000 ALTER TABLE `wp_options` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_postmeta` +-- + +DROP TABLE IF EXISTS `wp_postmeta`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_postmeta` ( + `meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `post_id` bigint(20) unsigned NOT NULL DEFAULT 0, + `meta_key` varchar(255) DEFAULT NULL, + `meta_value` longtext DEFAULT NULL, + PRIMARY KEY (`meta_id`), + KEY `post_id` (`post_id`), + KEY `meta_key` (`meta_key`(191)) +) ENGINE=InnoDB AUTO_INCREMENT=1120 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_postmeta` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_postmeta` WRITE; +/*!40000 ALTER TABLE `wp_postmeta` DISABLE KEYS */; +INSERT INTO `wp_postmeta` VALUES +(3,5,'_elementor_edit_mode','builder'), +(4,5,'_elementor_template_type','kit'), +(5,7,'_elementor_edit_mode','builder'), +(6,7,'_elementor_template_type','kit'), +(7,5,'_wp_page_template','default'), +(8,5,'_elementor_page_settings','a:2:{s:9:\"site_name\";s:12:\"3D-Druck Hub\";s:16:\"site_description\";s:54:\"News, Models, Ressourcen und Tools rund ums 3D-Drucken\";}'), +(107,111,'_menu_item_type','custom'), +(108,111,'_menu_item_menu_item_parent','0'), +(109,111,'_menu_item_object_id','111'), +(110,111,'_menu_item_object','custom'), +(111,111,'_menu_item_target',''), +(112,111,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(113,111,'_menu_item_xfn',''), +(114,111,'_menu_item_url','http://87.106.117.190/wissen/'), +(116,113,'_menu_item_type','custom'), +(117,113,'_menu_item_menu_item_parent','0'), +(118,113,'_menu_item_object_id','113'), +(119,113,'_menu_item_object','custom'), +(120,113,'_menu_item_target',''), +(121,113,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(122,113,'_menu_item_xfn',''), +(123,113,'_menu_item_url','#'), +(124,114,'_menu_item_type','custom'), +(125,114,'_menu_item_menu_item_parent','0'), +(126,114,'_menu_item_object_id','114'), +(127,114,'_menu_item_object','custom'), +(128,114,'_menu_item_target',''), +(129,114,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(130,114,'_menu_item_xfn',''), +(131,114,'_menu_item_url','#'), +(132,115,'_menu_item_type','custom'), +(133,115,'_menu_item_menu_item_parent','114'), +(134,115,'_menu_item_object_id','115'), +(135,115,'_menu_item_object','custom'), +(136,115,'_menu_item_target',''), +(137,115,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(138,115,'_menu_item_xfn',''), +(139,115,'_menu_item_url','https://chat.whatsapp.com/DaobPlhXwmLDyMZgWsBldP?mode=gi_t'), +(254,5,'_elementor_css','a:6:{s:4:\"time\";i:1774375985;s:5:\"fonts\";a:2:{i:0;s:6:\"Roboto\";i:1;s:11:\"Roboto Slab\";}s:5:\"icons\";a:0:{}s:20:\"dynamic_elements_ids\";a:0:{}s:6:\"status\";s:4:\"file\";i:0;s:0:\"\";}'), +(255,8,'_elementor_page_assets','a:0:{}'), +(272,13,'_elementor_page_assets','a:0:{}'), +(273,58,'_elementor_page_assets','a:0:{}'), +(274,72,'_elementor_page_assets','a:0:{}'), +(291,367,'_menu_item_type','post_type'), +(292,367,'_menu_item_menu_item_parent','111'), +(293,367,'_menu_item_object_id','13'), +(294,367,'_menu_item_object','page'), +(295,367,'_menu_item_target',''), +(296,367,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(297,367,'_menu_item_xfn',''), +(298,367,'_menu_item_url',''), +(299,368,'_menu_item_type','post_type'), +(300,368,'_menu_item_menu_item_parent','111'), +(301,368,'_menu_item_object_id','11'), +(302,368,'_menu_item_object','page'), +(303,368,'_menu_item_target',''), +(304,368,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(305,368,'_menu_item_xfn',''), +(306,368,'_menu_item_url',''), +(307,369,'_menu_item_type','post_type'), +(308,369,'_menu_item_menu_item_parent','113'), +(309,369,'_menu_item_object_id','10'), +(310,369,'_menu_item_object','page'), +(311,369,'_menu_item_target',''), +(312,369,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(313,369,'_menu_item_xfn',''), +(314,369,'_menu_item_url',''), +(315,370,'_menu_item_type','post_type'), +(316,370,'_menu_item_menu_item_parent','113'), +(317,370,'_menu_item_object_id','9'), +(318,370,'_menu_item_object','page'), +(319,370,'_menu_item_target',''), +(320,370,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(321,370,'_menu_item_xfn',''), +(322,370,'_menu_item_url',''), +(323,371,'_menu_item_type','post_type'), +(324,371,'_menu_item_menu_item_parent','113'), +(325,371,'_menu_item_object_id','58'), +(326,371,'_menu_item_object','page'), +(327,371,'_menu_item_target',''), +(328,371,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(329,371,'_menu_item_xfn',''), +(330,371,'_menu_item_url',''), +(347,374,'_menu_item_type','post_type'), +(348,374,'_menu_item_menu_item_parent','114'), +(349,374,'_menu_item_object_id','51'), +(350,374,'_menu_item_object','page'), +(351,374,'_menu_item_target',''), +(352,374,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(353,374,'_menu_item_xfn',''), +(354,374,'_menu_item_url',''), +(355,114,'_wp_old_date','2026-03-05'), +(356,111,'_wp_old_date','2026-03-05'), +(357,113,'_wp_old_date','2026-03-05'), +(366,290,'_wp_old_slug','guide-1-pla-perfekt-einstellen-2026-03-20'), +(369,294,'_wp_old_slug','guide-2-stringing-reduzieren-2026-03-20'), +(372,300,'_wp_old_slug','guide-1-warping-vermeiden-2026-03-21'), +(375,304,'_wp_old_slug','guide-2-petg-ohne-frust-2026-03-21'), +(378,310,'_wp_old_slug','guide-1-tpu-drucken-2026-03-22'), +(381,314,'_wp_old_slug','guide-2-asa-abs-grundlagen-2026-03-22'), +(384,321,'_wp_old_slug','guide-1-support-richtig-setzen-2026-03-23'), +(387,325,'_wp_old_slug','guide-2-slicer-profil-optimieren-2026-03-23'), +(390,331,'_wp_old_slug','guide-1-mau00dfhaltigkeit-verbessern-2026-03-24'), +(393,335,'_wp_old_slug','guide-2-druckzeit-vs-qualitu00e4t-2026-03-24'), +(396,339,'_wp_old_slug','guide-layer-separation-beheben'), +(399,340,'_wp_old_slug','guide-erstes-modell-drucken'), +(400,12,'_elementor_page_assets','a:0:{}'), +(401,290,'_elementor_page_assets','a:0:{}'), +(402,375,'_elementor_page_assets','a:0:{}'), +(403,9,'_elementor_page_assets','a:0:{}'), +(406,51,'_elementor_page_assets','a:0:{}'), +(411,10,'_elementor_page_assets','a:0:{}'), +(412,11,'_elementor_page_assets','a:0:{}'), +(413,50,'_elementor_page_assets','a:0:{}'), +(414,397,'_elementor_page_assets','a:0:{}'), +(425,111,'_wp_old_date','2026-03-24'), +(434,411,'_elementor_page_assets','a:0:{}'), +(435,398,'_elementor_page_assets','a:0:{}'), +(440,417,'_elementor_page_assets','a:0:{}'), +(447,424,'_elementor_page_assets','a:0:{}'), +(464,449,'_elementor_page_assets','a:0:{}'), +(481,463,'_elementor_page_assets','a:0:{}'), +(482,321,'_elementor_page_assets','a:0:{}'), +(483,483,'_menu_item_type','post_type'), +(484,483,'_menu_item_menu_item_parent','0'), +(485,483,'_menu_item_object_id','72'), +(486,483,'_menu_item_object','page'), +(487,483,'_menu_item_target',''), +(488,483,'_menu_item_classes','a:1:{i:0;s:0:\"\";}'), +(489,483,'_menu_item_xfn',''), +(490,483,'_menu_item_url',''), +(493,325,'_elementor_page_assets','a:0:{}'), +(494,294,'_elementor_page_assets','a:0:{}'), +(495,310,'_elementor_page_assets','a:0:{}'), +(496,300,'_elementor_page_assets','a:0:{}'), +(497,455,'_elementor_page_assets','a:0:{}'), +(498,314,'_elementor_page_assets','a:0:{}'), +(499,450,'_elementor_page_assets','a:0:{}'), +(500,406,'_elementor_page_assets','a:0:{}'), +(501,464,'_elementor_page_assets','a:0:{}'), +(502,413,'_elementor_page_assets','a:0:{}'), +(503,426,'_elementor_page_assets','a:0:{}'), +(504,335,'_elementor_page_assets','a:0:{}'), +(505,412,'_elementor_page_assets','a:0:{}'), +(506,420,'_elementor_page_assets','a:0:{}'), +(507,340,'_elementor_page_assets','a:0:{}'), +(508,425,'_elementor_page_assets','a:0:{}'), +(509,404,'_elementor_page_assets','a:0:{}'), +(510,446,'_elementor_page_assets','a:0:{}'), +(511,454,'_elementor_page_assets','a:0:{}'), +(512,377,'_elementor_page_assets','a:0:{}'), +(513,376,'_elementor_page_assets','a:0:{}'), +(514,394,'_elementor_page_assets','a:0:{}'), +(515,407,'_elementor_page_assets','a:0:{}'), +(516,409,'_elementor_page_assets','a:0:{}'), +(517,421,'_elementor_page_assets','a:0:{}'), +(518,339,'_elementor_page_assets','a:0:{}'), +(519,331,'_elementor_page_assets','a:0:{}'), +(520,442,'_elementor_page_assets','a:0:{}'), +(521,418,'_elementor_page_assets','a:0:{}'), +(522,422,'_elementor_page_assets','a:0:{}'), +(523,465,'_elementor_page_assets','a:0:{}'), +(524,304,'_elementor_page_assets','a:0:{}'), +(525,403,'_elementor_page_assets','a:0:{}'), +(526,460,'_elementor_page_assets','a:0:{}'), +(527,436,'_elementor_page_assets','a:0:{}'), +(528,401,'_elementor_page_assets','a:0:{}'), +(529,459,'_elementor_page_assets','a:0:{}'), +(530,486,'_elementor_page_assets','a:0:{}'), +(531,15,'_elementor_page_assets','a:0:{}'), +(532,14,'_elementor_page_assets','a:0:{}'), +(533,8,'ast-main-header-display','disabled'), +(534,9,'ast-main-header-display','disabled'), +(535,10,'ast-main-header-display','disabled'), +(536,11,'ast-main-header-display','disabled'), +(537,12,'ast-main-header-display','disabled'), +(538,13,'ast-main-header-display','disabled'), +(539,14,'ast-main-header-display','disabled'), +(540,15,'ast-main-header-display','disabled'), +(541,50,'ast-main-header-display','disabled'), +(542,51,'ast-main-header-display','disabled'), +(543,58,'ast-main-header-display','disabled'), +(544,72,'ast-main-header-display','disabled'), +(545,424,'ast-main-header-display','disabled'), +(546,425,'ast-main-header-display','disabled'), +(547,426,'ast-main-header-display','disabled'), +(548,290,'ast-main-header-display','disabled'), +(549,294,'ast-main-header-display','disabled'), +(550,300,'ast-main-header-display','disabled'), +(551,304,'ast-main-header-display','disabled'), +(552,310,'ast-main-header-display','disabled'), +(553,314,'ast-main-header-display','disabled'), +(554,321,'ast-main-header-display','disabled'), +(555,325,'ast-main-header-display','disabled'), +(556,331,'ast-main-header-display','disabled'), +(557,335,'ast-main-header-display','disabled'), +(558,339,'ast-main-header-display','disabled'), +(559,340,'ast-main-header-display','disabled'), +(560,375,'ast-main-header-display','disabled'), +(561,376,'ast-main-header-display','disabled'), +(562,377,'ast-main-header-display','disabled'), +(563,394,'ast-main-header-display','disabled'), +(564,397,'ast-main-header-display','disabled'), +(565,398,'ast-main-header-display','disabled'), +(566,401,'ast-main-header-display','disabled'), +(567,403,'ast-main-header-display','disabled'), +(568,404,'ast-main-header-display','disabled'), +(569,406,'ast-main-header-display','disabled'), +(570,407,'ast-main-header-display','disabled'), +(571,409,'ast-main-header-display','disabled'), +(572,411,'ast-main-header-display','disabled'), +(573,412,'ast-main-header-display','disabled'), +(574,413,'ast-main-header-display','disabled'), +(575,417,'ast-main-header-display','disabled'), +(576,418,'ast-main-header-display','disabled'), +(577,420,'ast-main-header-display','disabled'), +(578,421,'ast-main-header-display','disabled'), +(579,422,'ast-main-header-display','disabled'), +(580,436,'ast-main-header-display','disabled'), +(581,442,'ast-main-header-display','disabled'), +(582,446,'ast-main-header-display','disabled'), +(583,449,'ast-main-header-display','disabled'), +(584,450,'ast-main-header-display','disabled'), +(585,454,'ast-main-header-display','disabled'), +(586,455,'ast-main-header-display','disabled'), +(587,459,'ast-main-header-display','disabled'), +(588,460,'ast-main-header-display','disabled'), +(589,463,'ast-main-header-display','disabled'), +(590,464,'ast-main-header-display','disabled'), +(591,465,'ast-main-header-display','disabled'), +(592,469,'ast-main-header-display','disabled'), +(593,486,'ast-main-header-display','disabled'), +(596,8,'ast-footer-layout-display','disabled'), +(597,9,'ast-footer-layout-display','disabled'), +(598,10,'ast-footer-layout-display','disabled'), +(599,11,'ast-footer-layout-display','disabled'), +(600,12,'ast-footer-layout-display','disabled'), +(601,13,'ast-footer-layout-display','disabled'), +(602,14,'ast-footer-layout-display','disabled'), +(603,15,'ast-footer-layout-display','disabled'), +(604,50,'ast-footer-layout-display','disabled'), +(605,51,'ast-footer-layout-display','disabled'), +(606,58,'ast-footer-layout-display','disabled'), +(607,72,'ast-footer-layout-display','disabled'), +(608,424,'ast-footer-layout-display','disabled'), +(609,425,'ast-footer-layout-display','disabled'), +(610,426,'ast-footer-layout-display','disabled'), +(611,290,'ast-footer-layout-display','disabled'), +(612,294,'ast-footer-layout-display','disabled'), +(613,300,'ast-footer-layout-display','disabled'), +(614,304,'ast-footer-layout-display','disabled'), +(615,310,'ast-footer-layout-display','disabled'), +(616,314,'ast-footer-layout-display','disabled'), +(617,321,'ast-footer-layout-display','disabled'), +(618,325,'ast-footer-layout-display','disabled'), +(619,331,'ast-footer-layout-display','disabled'), +(620,335,'ast-footer-layout-display','disabled'), +(621,339,'ast-footer-layout-display','disabled'), +(622,340,'ast-footer-layout-display','disabled'), +(623,375,'ast-footer-layout-display','disabled'), +(624,376,'ast-footer-layout-display','disabled'), +(625,377,'ast-footer-layout-display','disabled'), +(626,394,'ast-footer-layout-display','disabled'), +(627,397,'ast-footer-layout-display','disabled'), +(628,398,'ast-footer-layout-display','disabled'), +(629,401,'ast-footer-layout-display','disabled'), +(630,403,'ast-footer-layout-display','disabled'), +(631,404,'ast-footer-layout-display','disabled'), +(632,406,'ast-footer-layout-display','disabled'), +(633,407,'ast-footer-layout-display','disabled'), +(634,409,'ast-footer-layout-display','disabled'), +(635,411,'ast-footer-layout-display','disabled'), +(636,412,'ast-footer-layout-display','disabled'), +(637,413,'ast-footer-layout-display','disabled'), +(638,417,'ast-footer-layout-display','disabled'), +(639,418,'ast-footer-layout-display','disabled'), +(640,420,'ast-footer-layout-display','disabled'), +(641,421,'ast-footer-layout-display','disabled'), +(642,422,'ast-footer-layout-display','disabled'), +(643,436,'ast-footer-layout-display','disabled'), +(644,442,'ast-footer-layout-display','disabled'), +(645,446,'ast-footer-layout-display','disabled'), +(646,449,'ast-footer-layout-display','disabled'), +(647,450,'ast-footer-layout-display','disabled'), +(648,454,'ast-footer-layout-display','disabled'), +(649,455,'ast-footer-layout-display','disabled'), +(650,459,'ast-footer-layout-display','disabled'), +(651,460,'ast-footer-layout-display','disabled'), +(652,463,'ast-footer-layout-display','disabled'), +(653,464,'ast-footer-layout-display','disabled'), +(654,465,'ast-footer-layout-display','disabled'), +(655,469,'ast-footer-layout-display','disabled'), +(656,486,'ast-footer-layout-display','disabled'), +(659,8,'ast-hfb-above-header-display','disabled'), +(660,9,'ast-hfb-above-header-display','disabled'), +(661,10,'ast-hfb-above-header-display','disabled'), +(662,11,'ast-hfb-above-header-display','disabled'), +(663,12,'ast-hfb-above-header-display','disabled'), +(664,13,'ast-hfb-above-header-display','disabled'), +(665,14,'ast-hfb-above-header-display','disabled'), +(666,15,'ast-hfb-above-header-display','disabled'), +(667,50,'ast-hfb-above-header-display','disabled'), +(668,51,'ast-hfb-above-header-display','disabled'), +(669,58,'ast-hfb-above-header-display','disabled'), +(670,72,'ast-hfb-above-header-display','disabled'), +(671,424,'ast-hfb-above-header-display','disabled'), +(672,425,'ast-hfb-above-header-display','disabled'), +(673,426,'ast-hfb-above-header-display','disabled'), +(674,290,'ast-hfb-above-header-display','disabled'), +(675,294,'ast-hfb-above-header-display','disabled'), +(676,300,'ast-hfb-above-header-display','disabled'), +(677,304,'ast-hfb-above-header-display','disabled'), +(678,310,'ast-hfb-above-header-display','disabled'), +(679,314,'ast-hfb-above-header-display','disabled'), +(680,321,'ast-hfb-above-header-display','disabled'), +(681,325,'ast-hfb-above-header-display','disabled'), +(682,331,'ast-hfb-above-header-display','disabled'), +(683,335,'ast-hfb-above-header-display','disabled'), +(684,339,'ast-hfb-above-header-display','disabled'), +(685,340,'ast-hfb-above-header-display','disabled'), +(686,375,'ast-hfb-above-header-display','disabled'), +(687,376,'ast-hfb-above-header-display','disabled'), +(688,377,'ast-hfb-above-header-display','disabled'), +(689,394,'ast-hfb-above-header-display','disabled'), +(690,397,'ast-hfb-above-header-display','disabled'), +(691,398,'ast-hfb-above-header-display','disabled'), +(692,401,'ast-hfb-above-header-display','disabled'), +(693,403,'ast-hfb-above-header-display','disabled'), +(694,404,'ast-hfb-above-header-display','disabled'), +(695,406,'ast-hfb-above-header-display','disabled'), +(696,407,'ast-hfb-above-header-display','disabled'), +(697,409,'ast-hfb-above-header-display','disabled'), +(698,411,'ast-hfb-above-header-display','disabled'), +(699,412,'ast-hfb-above-header-display','disabled'), +(700,413,'ast-hfb-above-header-display','disabled'), +(701,417,'ast-hfb-above-header-display','disabled'), +(702,418,'ast-hfb-above-header-display','disabled'), +(703,420,'ast-hfb-above-header-display','disabled'), +(704,421,'ast-hfb-above-header-display','disabled'), +(705,422,'ast-hfb-above-header-display','disabled'), +(706,436,'ast-hfb-above-header-display','disabled'), +(707,442,'ast-hfb-above-header-display','disabled'), +(708,446,'ast-hfb-above-header-display','disabled'), +(709,449,'ast-hfb-above-header-display','disabled'), +(710,450,'ast-hfb-above-header-display','disabled'), +(711,454,'ast-hfb-above-header-display','disabled'), +(712,455,'ast-hfb-above-header-display','disabled'), +(713,459,'ast-hfb-above-header-display','disabled'), +(714,460,'ast-hfb-above-header-display','disabled'), +(715,463,'ast-hfb-above-header-display','disabled'), +(716,464,'ast-hfb-above-header-display','disabled'), +(717,465,'ast-hfb-above-header-display','disabled'), +(718,469,'ast-hfb-above-header-display','disabled'), +(719,486,'ast-hfb-above-header-display','disabled'), +(722,8,'ast-hfb-below-header-display','disabled'), +(723,9,'ast-hfb-below-header-display','disabled'), +(724,10,'ast-hfb-below-header-display','disabled'), +(725,11,'ast-hfb-below-header-display','disabled'), +(726,12,'ast-hfb-below-header-display','disabled'), +(727,13,'ast-hfb-below-header-display','disabled'), +(728,14,'ast-hfb-below-header-display','disabled'), +(729,15,'ast-hfb-below-header-display','disabled'), +(730,50,'ast-hfb-below-header-display','disabled'), +(731,51,'ast-hfb-below-header-display','disabled'), +(732,58,'ast-hfb-below-header-display','disabled'), +(733,72,'ast-hfb-below-header-display','disabled'), +(734,424,'ast-hfb-below-header-display','disabled'), +(735,425,'ast-hfb-below-header-display','disabled'), +(736,426,'ast-hfb-below-header-display','disabled'), +(737,290,'ast-hfb-below-header-display','disabled'), +(738,294,'ast-hfb-below-header-display','disabled'), +(739,300,'ast-hfb-below-header-display','disabled'), +(740,304,'ast-hfb-below-header-display','disabled'), +(741,310,'ast-hfb-below-header-display','disabled'), +(742,314,'ast-hfb-below-header-display','disabled'), +(743,321,'ast-hfb-below-header-display','disabled'), +(744,325,'ast-hfb-below-header-display','disabled'), +(745,331,'ast-hfb-below-header-display','disabled'), +(746,335,'ast-hfb-below-header-display','disabled'), +(747,339,'ast-hfb-below-header-display','disabled'), +(748,340,'ast-hfb-below-header-display','disabled'), +(749,375,'ast-hfb-below-header-display','disabled'), +(750,376,'ast-hfb-below-header-display','disabled'), +(751,377,'ast-hfb-below-header-display','disabled'), +(752,394,'ast-hfb-below-header-display','disabled'), +(753,397,'ast-hfb-below-header-display','disabled'), +(754,398,'ast-hfb-below-header-display','disabled'), +(755,401,'ast-hfb-below-header-display','disabled'), +(756,403,'ast-hfb-below-header-display','disabled'), +(757,404,'ast-hfb-below-header-display','disabled'), +(758,406,'ast-hfb-below-header-display','disabled'), +(759,407,'ast-hfb-below-header-display','disabled'), +(760,409,'ast-hfb-below-header-display','disabled'), +(761,411,'ast-hfb-below-header-display','disabled'), +(762,412,'ast-hfb-below-header-display','disabled'), +(763,413,'ast-hfb-below-header-display','disabled'), +(764,417,'ast-hfb-below-header-display','disabled'), +(765,418,'ast-hfb-below-header-display','disabled'), +(766,420,'ast-hfb-below-header-display','disabled'), +(767,421,'ast-hfb-below-header-display','disabled'), +(768,422,'ast-hfb-below-header-display','disabled'), +(769,436,'ast-hfb-below-header-display','disabled'), +(770,442,'ast-hfb-below-header-display','disabled'), +(771,446,'ast-hfb-below-header-display','disabled'), +(772,449,'ast-hfb-below-header-display','disabled'), +(773,450,'ast-hfb-below-header-display','disabled'), +(774,454,'ast-hfb-below-header-display','disabled'), +(775,455,'ast-hfb-below-header-display','disabled'), +(776,459,'ast-hfb-below-header-display','disabled'), +(777,460,'ast-hfb-below-header-display','disabled'), +(778,463,'ast-hfb-below-header-display','disabled'), +(779,464,'ast-hfb-below-header-display','disabled'), +(780,465,'ast-hfb-below-header-display','disabled'), +(781,469,'ast-hfb-below-header-display','disabled'), +(782,486,'ast-hfb-below-header-display','disabled'), +(785,8,'site-sidebar-layout','no-sidebar'), +(786,9,'site-sidebar-layout','no-sidebar'), +(787,10,'site-sidebar-layout','no-sidebar'), +(788,11,'site-sidebar-layout','no-sidebar'), +(789,12,'site-sidebar-layout','no-sidebar'), +(790,13,'site-sidebar-layout','no-sidebar'), +(791,14,'site-sidebar-layout','no-sidebar'), +(792,15,'site-sidebar-layout','no-sidebar'), +(793,50,'site-sidebar-layout','no-sidebar'), +(794,51,'site-sidebar-layout','no-sidebar'), +(795,58,'site-sidebar-layout','no-sidebar'), +(796,72,'site-sidebar-layout','no-sidebar'), +(797,424,'site-sidebar-layout','no-sidebar'), +(798,425,'site-sidebar-layout','no-sidebar'), +(799,426,'site-sidebar-layout','no-sidebar'), +(800,290,'site-sidebar-layout','no-sidebar'), +(801,294,'site-sidebar-layout','no-sidebar'), +(802,300,'site-sidebar-layout','no-sidebar'), +(803,304,'site-sidebar-layout','no-sidebar'), +(804,310,'site-sidebar-layout','no-sidebar'), +(805,314,'site-sidebar-layout','no-sidebar'), +(806,321,'site-sidebar-layout','no-sidebar'), +(807,325,'site-sidebar-layout','no-sidebar'), +(808,331,'site-sidebar-layout','no-sidebar'), +(809,335,'site-sidebar-layout','no-sidebar'), +(810,339,'site-sidebar-layout','no-sidebar'), +(811,340,'site-sidebar-layout','no-sidebar'), +(812,375,'site-sidebar-layout','no-sidebar'), +(813,376,'site-sidebar-layout','no-sidebar'), +(814,377,'site-sidebar-layout','no-sidebar'), +(815,394,'site-sidebar-layout','no-sidebar'), +(816,397,'site-sidebar-layout','no-sidebar'), +(817,398,'site-sidebar-layout','no-sidebar'), +(818,401,'site-sidebar-layout','no-sidebar'), +(819,403,'site-sidebar-layout','no-sidebar'), +(820,404,'site-sidebar-layout','no-sidebar'), +(821,406,'site-sidebar-layout','no-sidebar'), +(822,407,'site-sidebar-layout','no-sidebar'), +(823,409,'site-sidebar-layout','no-sidebar'), +(824,411,'site-sidebar-layout','no-sidebar'), +(825,412,'site-sidebar-layout','no-sidebar'), +(826,413,'site-sidebar-layout','no-sidebar'), +(827,417,'site-sidebar-layout','no-sidebar'), +(828,418,'site-sidebar-layout','no-sidebar'), +(829,420,'site-sidebar-layout','no-sidebar'), +(830,421,'site-sidebar-layout','no-sidebar'), +(831,422,'site-sidebar-layout','no-sidebar'), +(832,436,'site-sidebar-layout','no-sidebar'), +(833,442,'site-sidebar-layout','no-sidebar'), +(834,446,'site-sidebar-layout','no-sidebar'), +(835,449,'site-sidebar-layout','no-sidebar'), +(836,450,'site-sidebar-layout','no-sidebar'), +(837,454,'site-sidebar-layout','no-sidebar'), +(838,455,'site-sidebar-layout','no-sidebar'), +(839,459,'site-sidebar-layout','no-sidebar'), +(840,460,'site-sidebar-layout','no-sidebar'), +(841,463,'site-sidebar-layout','no-sidebar'), +(842,464,'site-sidebar-layout','no-sidebar'), +(843,465,'site-sidebar-layout','no-sidebar'), +(844,469,'site-sidebar-layout','no-sidebar'), +(845,486,'site-sidebar-layout','no-sidebar'), +(848,8,'site-content-layout','page-builder'), +(849,9,'site-content-layout','page-builder'), +(850,10,'site-content-layout','page-builder'), +(851,11,'site-content-layout','page-builder'), +(852,12,'site-content-layout','page-builder'), +(853,13,'site-content-layout','page-builder'), +(854,14,'site-content-layout','page-builder'), +(855,15,'site-content-layout','page-builder'), +(856,50,'site-content-layout','page-builder'), +(857,51,'site-content-layout','page-builder'), +(858,58,'site-content-layout','page-builder'), +(859,72,'site-content-layout','page-builder'), +(860,424,'site-content-layout','page-builder'), +(861,425,'site-content-layout','page-builder'), +(862,426,'site-content-layout','page-builder'), +(863,290,'site-content-layout','page-builder'), +(864,294,'site-content-layout','page-builder'), +(865,300,'site-content-layout','page-builder'), +(866,304,'site-content-layout','page-builder'), +(867,310,'site-content-layout','page-builder'), +(868,314,'site-content-layout','page-builder'), +(869,321,'site-content-layout','page-builder'), +(870,325,'site-content-layout','page-builder'), +(871,331,'site-content-layout','page-builder'), +(872,335,'site-content-layout','page-builder'), +(873,339,'site-content-layout','page-builder'), +(874,340,'site-content-layout','page-builder'), +(875,375,'site-content-layout','page-builder'), +(876,376,'site-content-layout','page-builder'), +(877,377,'site-content-layout','page-builder'), +(878,394,'site-content-layout','page-builder'), +(879,397,'site-content-layout','page-builder'), +(880,398,'site-content-layout','page-builder'), +(881,401,'site-content-layout','page-builder'), +(882,403,'site-content-layout','page-builder'), +(883,404,'site-content-layout','page-builder'), +(884,406,'site-content-layout','page-builder'), +(885,407,'site-content-layout','page-builder'), +(886,409,'site-content-layout','page-builder'), +(887,411,'site-content-layout','page-builder'), +(888,412,'site-content-layout','page-builder'), +(889,413,'site-content-layout','page-builder'), +(890,417,'site-content-layout','page-builder'), +(891,418,'site-content-layout','page-builder'), +(892,420,'site-content-layout','page-builder'), +(893,421,'site-content-layout','page-builder'), +(894,422,'site-content-layout','page-builder'), +(895,436,'site-content-layout','page-builder'), +(896,442,'site-content-layout','page-builder'), +(897,446,'site-content-layout','page-builder'), +(898,449,'site-content-layout','page-builder'), +(899,450,'site-content-layout','page-builder'), +(900,454,'site-content-layout','page-builder'), +(901,455,'site-content-layout','page-builder'), +(902,459,'site-content-layout','page-builder'), +(903,460,'site-content-layout','page-builder'), +(904,463,'site-content-layout','page-builder'), +(905,464,'site-content-layout','page-builder'), +(906,465,'site-content-layout','page-builder'), +(907,469,'site-content-layout','page-builder'), +(908,486,'site-content-layout','page-builder'), +(911,8,'ast-featured-img','disabled'), +(912,9,'ast-featured-img','disabled'), +(913,10,'ast-featured-img','disabled'), +(914,11,'ast-featured-img','disabled'), +(915,12,'ast-featured-img','disabled'), +(916,13,'ast-featured-img','disabled'), +(917,14,'ast-featured-img','disabled'), +(918,15,'ast-featured-img','disabled'), +(919,50,'ast-featured-img','disabled'), +(920,51,'ast-featured-img','disabled'), +(921,58,'ast-featured-img','disabled'), +(922,72,'ast-featured-img','disabled'), +(923,424,'ast-featured-img','disabled'), +(924,425,'ast-featured-img','disabled'), +(925,426,'ast-featured-img','disabled'), +(926,290,'ast-featured-img','disabled'), +(927,294,'ast-featured-img','disabled'), +(928,300,'ast-featured-img','disabled'), +(929,304,'ast-featured-img','disabled'), +(930,310,'ast-featured-img','disabled'), +(931,314,'ast-featured-img','disabled'), +(932,321,'ast-featured-img','disabled'), +(933,325,'ast-featured-img','disabled'), +(934,331,'ast-featured-img','disabled'), +(935,335,'ast-featured-img','disabled'), +(936,339,'ast-featured-img','disabled'), +(937,340,'ast-featured-img','disabled'), +(938,375,'ast-featured-img','disabled'), +(939,376,'ast-featured-img','disabled'), +(940,377,'ast-featured-img','disabled'), +(941,394,'ast-featured-img','disabled'), +(942,397,'ast-featured-img','disabled'), +(943,398,'ast-featured-img','disabled'), +(944,401,'ast-featured-img','disabled'), +(945,403,'ast-featured-img','disabled'), +(946,404,'ast-featured-img','disabled'), +(947,406,'ast-featured-img','disabled'), +(948,407,'ast-featured-img','disabled'), +(949,409,'ast-featured-img','disabled'), +(950,411,'ast-featured-img','disabled'), +(951,412,'ast-featured-img','disabled'), +(952,413,'ast-featured-img','disabled'), +(953,417,'ast-featured-img','disabled'), +(954,418,'ast-featured-img','disabled'), +(955,420,'ast-featured-img','disabled'), +(956,421,'ast-featured-img','disabled'), +(957,422,'ast-featured-img','disabled'), +(958,436,'ast-featured-img','disabled'), +(959,442,'ast-featured-img','disabled'), +(960,446,'ast-featured-img','disabled'), +(961,449,'ast-featured-img','disabled'), +(962,450,'ast-featured-img','disabled'), +(963,454,'ast-featured-img','disabled'), +(964,455,'ast-featured-img','disabled'), +(965,459,'ast-featured-img','disabled'), +(966,460,'ast-featured-img','disabled'), +(967,463,'ast-featured-img','disabled'), +(968,464,'ast-featured-img','disabled'), +(969,465,'ast-featured-img','disabled'), +(970,469,'ast-featured-img','disabled'), +(971,486,'ast-featured-img','disabled'), +(974,8,'ast-title-bar-display','disabled'), +(975,9,'ast-title-bar-display','disabled'), +(976,10,'ast-title-bar-display','disabled'), +(977,11,'ast-title-bar-display','disabled'), +(978,12,'ast-title-bar-display','disabled'), +(979,13,'ast-title-bar-display','disabled'), +(980,14,'ast-title-bar-display','disabled'), +(981,15,'ast-title-bar-display','disabled'), +(982,50,'ast-title-bar-display','disabled'), +(983,51,'ast-title-bar-display','disabled'), +(984,58,'ast-title-bar-display','disabled'), +(985,72,'ast-title-bar-display','disabled'), +(986,424,'ast-title-bar-display','disabled'), +(987,425,'ast-title-bar-display','disabled'), +(988,426,'ast-title-bar-display','disabled'), +(989,290,'ast-title-bar-display','disabled'), +(990,294,'ast-title-bar-display','disabled'), +(991,300,'ast-title-bar-display','disabled'), +(992,304,'ast-title-bar-display','disabled'), +(993,310,'ast-title-bar-display','disabled'), +(994,314,'ast-title-bar-display','disabled'), +(995,321,'ast-title-bar-display','disabled'), +(996,325,'ast-title-bar-display','disabled'), +(997,331,'ast-title-bar-display','disabled'), +(998,335,'ast-title-bar-display','disabled'), +(999,339,'ast-title-bar-display','disabled'), +(1000,340,'ast-title-bar-display','disabled'), +(1001,375,'ast-title-bar-display','disabled'), +(1002,376,'ast-title-bar-display','disabled'), +(1003,377,'ast-title-bar-display','disabled'), +(1004,394,'ast-title-bar-display','disabled'), +(1005,397,'ast-title-bar-display','disabled'), +(1006,398,'ast-title-bar-display','disabled'), +(1007,401,'ast-title-bar-display','disabled'), +(1008,403,'ast-title-bar-display','disabled'), +(1009,404,'ast-title-bar-display','disabled'), +(1010,406,'ast-title-bar-display','disabled'), +(1011,407,'ast-title-bar-display','disabled'), +(1012,409,'ast-title-bar-display','disabled'), +(1013,411,'ast-title-bar-display','disabled'), +(1014,412,'ast-title-bar-display','disabled'), +(1015,413,'ast-title-bar-display','disabled'), +(1016,417,'ast-title-bar-display','disabled'), +(1017,418,'ast-title-bar-display','disabled'), +(1018,420,'ast-title-bar-display','disabled'), +(1019,421,'ast-title-bar-display','disabled'), +(1020,422,'ast-title-bar-display','disabled'), +(1021,436,'ast-title-bar-display','disabled'), +(1022,442,'ast-title-bar-display','disabled'), +(1023,446,'ast-title-bar-display','disabled'), +(1024,449,'ast-title-bar-display','disabled'), +(1025,450,'ast-title-bar-display','disabled'), +(1026,454,'ast-title-bar-display','disabled'), +(1027,455,'ast-title-bar-display','disabled'), +(1028,459,'ast-title-bar-display','disabled'), +(1029,460,'ast-title-bar-display','disabled'), +(1030,463,'ast-title-bar-display','disabled'), +(1031,464,'ast-title-bar-display','disabled'), +(1032,465,'ast-title-bar-display','disabled'), +(1033,469,'ast-title-bar-display','disabled'), +(1034,486,'ast-title-bar-display','disabled'), +(1037,8,'_wp_page_template','page-v2-blank.php'), +(1038,9,'_wp_page_template','page-v2-blank.php'), +(1039,10,'_wp_page_template','page-v2-blank.php'), +(1040,11,'_wp_page_template','page-v2-blank.php'), +(1041,12,'_wp_page_template','page-v2-blank.php'), +(1042,13,'_wp_page_template','page-v2-blank.php'), +(1043,51,'_wp_page_template','page-v2-blank.php'), +(1044,58,'_wp_page_template','page-v2-blank.php'), +(1045,72,'_wp_page_template','page-v2-blank.php'), +(1052,14,'_wp_page_template','page-v2-blank.php'), +(1053,15,'_wp_page_template','page-v2-blank.php'), +(1054,50,'_wp_page_template','page-v2-blank.php'), +(1055,424,'_wp_page_template','page-v2-blank.php'), +(1056,425,'_wp_page_template','page-v2-blank.php'), +(1057,426,'_wp_page_template','page-v2-blank.php'), +(1058,290,'_wp_page_template','page-v2-blank.php'), +(1059,294,'_wp_page_template','page-v2-blank.php'), +(1060,300,'_wp_page_template','page-v2-blank.php'), +(1061,304,'_wp_page_template','page-v2-blank.php'), +(1062,310,'_wp_page_template','page-v2-blank.php'), +(1063,314,'_wp_page_template','page-v2-blank.php'), +(1064,321,'_wp_page_template','page-v2-blank.php'), +(1065,325,'_wp_page_template','page-v2-blank.php'), +(1066,331,'_wp_page_template','page-v2-blank.php'), +(1067,335,'_wp_page_template','page-v2-blank.php'), +(1068,339,'_wp_page_template','page-v2-blank.php'), +(1069,340,'_wp_page_template','page-v2-blank.php'), +(1070,375,'_wp_page_template','page-v2-blank.php'), +(1071,376,'_wp_page_template','page-v2-blank.php'), +(1072,377,'_wp_page_template','page-v2-blank.php'), +(1073,394,'_wp_page_template','page-v2-blank.php'), +(1074,397,'_wp_page_template','page-v2-blank.php'), +(1075,398,'_wp_page_template','page-v2-blank.php'), +(1076,401,'_wp_page_template','page-v2-blank.php'), +(1077,403,'_wp_page_template','page-v2-blank.php'), +(1078,404,'_wp_page_template','page-v2-blank.php'), +(1079,406,'_wp_page_template','page-v2-blank.php'), +(1080,407,'_wp_page_template','page-v2-blank.php'), +(1081,409,'_wp_page_template','page-v2-blank.php'), +(1082,411,'_wp_page_template','page-v2-blank.php'), +(1083,412,'_wp_page_template','page-v2-blank.php'), +(1084,413,'_wp_page_template','page-v2-blank.php'), +(1085,417,'_wp_page_template','page-v2-blank.php'), +(1086,418,'_wp_page_template','page-v2-blank.php'), +(1087,420,'_wp_page_template','page-v2-blank.php'), +(1088,421,'_wp_page_template','page-v2-blank.php'), +(1089,422,'_wp_page_template','page-v2-blank.php'), +(1090,459,'_wp_page_template','page-v2-blank.php'), +(1091,460,'_wp_page_template','page-v2-blank.php'), +(1092,463,'_wp_page_template','page-v2-blank.php'), +(1093,464,'_wp_page_template','page-v2-blank.php'), +(1094,465,'_wp_page_template','page-v2-blank.php'), +(1095,469,'_wp_page_template','page-v2-blank.php'), +(1096,486,'_wp_page_template','page-v2-blank.php'), +(1097,436,'_wp_page_template','page-v2-blank.php'), +(1098,442,'_wp_page_template','page-v2-blank.php'), +(1099,446,'_wp_page_template','page-v2-blank.php'), +(1100,449,'_wp_page_template','page-v2-blank.php'), +(1101,450,'_wp_page_template','page-v2-blank.php'), +(1102,454,'_wp_page_template','page-v2-blank.php'), +(1103,455,'_wp_page_template','page-v2-blank.php'), +(1119,492,'_elementor_page_assets','a:0:{}'); +/*!40000 ALTER TABLE `wp_postmeta` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_posts` +-- + +DROP TABLE IF EXISTS `wp_posts`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_posts` ( + `ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `post_author` bigint(20) unsigned NOT NULL DEFAULT 0, + `post_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `post_date_gmt` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `post_content` longtext NOT NULL, + `post_title` text NOT NULL, + `post_excerpt` text NOT NULL, + `post_status` varchar(20) NOT NULL DEFAULT 'publish', + `comment_status` varchar(20) NOT NULL DEFAULT 'open', + `ping_status` varchar(20) NOT NULL DEFAULT 'open', + `post_password` varchar(255) NOT NULL DEFAULT '', + `post_name` varchar(200) NOT NULL DEFAULT '', + `to_ping` text NOT NULL, + `pinged` text NOT NULL, + `post_modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `post_modified_gmt` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `post_content_filtered` longtext NOT NULL, + `post_parent` bigint(20) unsigned NOT NULL DEFAULT 0, + `guid` varchar(255) NOT NULL DEFAULT '', + `menu_order` int(11) NOT NULL DEFAULT 0, + `post_type` varchar(20) NOT NULL DEFAULT 'post', + `post_mime_type` varchar(100) NOT NULL DEFAULT '', + `comment_count` bigint(20) NOT NULL DEFAULT 0, + PRIMARY KEY (`ID`), + KEY `post_name` (`post_name`(191)), + KEY `type_status_date` (`post_type`,`post_status`,`post_date`,`ID`), + KEY `post_parent` (`post_parent`), + KEY `post_author` (`post_author`), + KEY `type_status_author` (`post_type`,`post_status`,`post_author`) +) ENGINE=InnoDB AUTO_INCREMENT=512 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_posts` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_posts` WRITE; +/*!40000 ALTER TABLE `wp_posts` DISABLE KEYS */; +INSERT INTO `wp_posts` VALUES +(4,0,'2026-03-04 18:58:16','2026-03-04 18:58:16','','Navigation','','publish','closed','closed','','navigation','','','2026-03-04 18:58:16','2026-03-04 18:58:16','',0,'http://87.106.117.190:8090/2026/03/04/navigation/',0,'wp_navigation','',0), +(5,0,'2026-03-04 18:58:21','2026-03-04 18:58:21','','Default Kit','','publish','closed','closed','','default-kit','','','2026-03-05 07:10:14','2026-03-05 07:10:14','',0,'http://87.106.117.190:8090/?p=5',0,'elementor_library','',0), +(7,0,'2026-03-05 07:10:14','2026-03-05 07:10:14','','Default Kit','','inherit','closed','closed','','5-revision-v1','','','2026-03-05 07:10:14','2026-03-05 07:10:14','',5,'http://87.106.117.190:8090/?p=7',0,'revision','',0), +(8,0,'2026-03-05 08:10:18','2026-03-05 07:10:18','\n\n\n\n\n\n\n\n\n\n\n
\n
\n \n\n\n\n
\n SYS_STATUS: ONLINE
\n NODE: DE-01
\n BUILD: 2026.03\n
\n
\n
[SYS_KNOWLEDGE] // 3D-PRINT HUB // EST.2024
\n

PRINT.
SHARE.
INSPIRE.

\n
\n
\n

\n Guides, Modelle & Community — alles was du für\n bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.\n

\n \n
\n
\n
\n\n\n
\n
\n 49+ GUIDES\n \n PLA · PETG · TPU · ABS\n BAMBU · PRUSA · ENDER\n KOSTENLOS\n OPEN COMMUNITY\n 4K+ MODELLE\n 49+ GUIDES\n \n PLA · PETG · TPU · ABS\n BAMBU · PRUSA · ENDER\n KOSTENLOS\n OPEN COMMUNITY\n 4K+ MODELLE\n
\n
\n\n\n
\n
\n 49+\n [GUIDES] // ALLE LEVELS\n
\n
\n DE.\n [OPEN] // COMMUNITY\n
\n
\n 4K+\n [DATA] // MODELLE\n
\n
\n 100%\n [ACCESS] // KOSTENLOS\n
\n
\n\n\n
\n
\n
\n 01_MODELLE\n

TRENDING_PRINTS

\n
\n ALLE MODELLE →\n
\n \n
\n
\n
\"Flexi
\n TRENDING // PRINT-IN-PLACE\n
Flexi Baby Snake
\n
Voll beweglich, keine Supports nötig. Perfekt für PLA-Einsteiger.
\n
PLA//KEINE SUPPORTS//EINSTEIGER
\n AUF PRINTABLES →\n
\n
\n
\"Parcel
\n ALLTAGSHELFER\n
Parcel Opener
\n
Sicher öffnen ohne Klinge — PLA oder PETG.
\n
PLA / PETG//SUPPORTS: NEIN//EINSTEIGER
\n AUF PRINTABLES →\n
\n
\n
\"Filament
\n ORGANISATION\n
Filament Storage Box
\n
Trocken lagern, ordentlich organisieren — mit Desiccant-Halter.
\n
PLA//4x SPOOL//ORGANISATION
\n AUF PRINTABLES →\n
\n
\n
\"Gridfinity
\n GRIDFINITY\n
Gridfinity Base 2×2
\n
Das modulare Ordnungssystem — kompatibel mit 1000+ Bins.
\n
PLA//GRIDFINITY//ORGANISATION
\n AUF PRINTABLES →\n
\n
\n
\"Low
\n DEKO // KLASSIKER\n
Low Poly Fox
\n
Zeitloser Klassiker — perfektes Erstprojekt für alle Einsteiger.
\n
PLA//KEINE SUPPORTS//EINSTEIGER
\n AUF PRINTABLES →\n
\n
\n
\"Cable
\n KABELMANAGEMENT\n
Cable Clip Set
\n
Kabel ordentlich verlegen — parametrisch, druckbar in 10 Minuten.
\n
TPU / PLA//SUPPORTS: NEIN//EINSTEIGER
\n AUF PRINTABLES →\n
\n
\n
\n\n\n
\n
\n
\n 02_WISSEN\n

KNOWLEDGE_BASE

\n
\n ALLE GUIDES →\n
\n \n
\n\n\n
\n
\n
\n 03_COMMUNITY\n

NETWORK_HUB

\n
\n
\n
\n
\n
\n
DEINE
MAKER
COMMUNITY.
\n

Die aktivste deutsche 3D-Druck Community — kostenlos, direkt, immer.

\n
\n
\n WHATSAPP_BEITRETEN →\n
[KOSTENLOS // KEIN SPAM // EXIT JEDERZEIT]
\n
\n
\n
\n
\n 01\n
\n
Sofortige Hilfe bei Druckfehlern
\n
Frag die Community — meistens Antwort in Minuten.
\n
\n
\n
\n 02\n
\n
Wöchentliche Modell-Highlights
\n
Jeden Freitag die besten neuen Drucke aus der Community.
\n
\n
\n
\n 03\n
\n
Filament- & Drucker-Empfehlungen
\n
Echte Erfahrungen — von Makern für Maker.
\n
\n
\n
\n
\n
\n\n\n
\n
Bereit für bessere DRUCKE?
\n \n
\n\n\n\n\n\n','Startseite','','publish','closed','closed','','home','','','2026-03-26 20:36:11','2026-03-25 21:24:02','',0,'http://87.106.117.190:8090/home/',0,'page','',0), +(9,0,'2026-03-05 08:10:18','2026-03-05 07:10:18','\n\n\n\n\n\n
\n
NEWS_FEED
\n

TRENDS &\nNEWS.

\n
\n\n
\n \n
Aktuelle Releases
\n
\n
\n
RELEASE
\n
Klipper
\n
N/A · —
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
Marlin
\n
2.1.2.7 · 2026-01-24
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
OrcaSlicer
\n
v2.3.2 · 2026-03-23
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
PrusaSlicer
\n
version_2.9.4 · 2025-11-07
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
Cura
\n
5.12.0 · 2026-03-05
\n DOWNLOAD →\n
\n
\n
RELEASE
\n
BambuStudio
\n
v02.05.00.67 · 2026-01-28
\n DOWNLOAD →\n
\n\n
\n
\n\n
\n \n
3D-Drucker Hardware
\n
\n
\n
Bambu Lab A1 Mini
\n
Bambu Lab
\n
Kompakter Einsteigerdrucker mit automatischer Kalibrierung, Multi-Color-faehig ueber AMS lite.
\n
ab 299 €
\n
\n
\n
Creality K2 Plus
\n
Creality
\n
Grossformat Core-XY mit 350x350x350mm Bauraum, Klipper-basiert, bis 600mm/s Druckgeschwindigkeit.
\n
ab 899 €
\n
\n
\n
Prusa MK4S
\n
Prusa Research
\n
Upgrade des MK4 mit verbessertem Extruder, Input Shaping und PrusaConnect Cloud-Anbindung.
\n
ab 799 €
\n
\n
\n
Voron Trident
\n
Voron Design (DIY)
\n
High-Performance DIY CoreXY mit beheizter Kammer, ideal fuer technische Filamente wie ABS/ASA.
\n
ab 600 € (Kit)
\n
\n
\n
Ankermake M5C
\n
AnkerMake
\n
Budgetfreundlicher Schnelldrucker mit 500mm/s, einfaches Setup ueber App.
\n
ab 349 €
\n
\n
\n
Elegoo Neptune 4 Max
\n
Elegoo
\n
Grosser FDM-Drucker (420x420x480mm), Klipper-Firmware, direkter Extruder.
\n
ab 469 €
\n
\n\n
\n
\n\n
\n \n
Community News
\n
\n
\n
2026-03-20
\n
Bambu Lab stellt neues Multi-Material-System vor
\n
Mit dem AMS2 koennen bis zu 16 Farben in einem Druck verwendet werden. Kompatibel mit der gesamten X1-Serie.
\n
\n
\n
2026-03-15
\n
Prusa kuendigt XL Firmware-Update an
\n
Groesseres Update fuer den Prusa XL bringt verbesserte Tool-Wechsel-Kalibrierung und schnellere Druckzeiten.
\n
\n
\n
2026-03-10
\n
OrcaSlicer 2.3 mit AI-Stuetzstrukturen
\n
Die neue Version von OrcaSlicer nutzt ML-basierte Algorithmen fuer optimierte Stuetzstrukturen mit weniger Materialverbrauch.
\n
\n
\n
2026-03-05
\n
Voron Community: Tap v2 offiziell released
\n
Der beliebte Voron Tap Sensor erhaelt ein Redesign mit verbesserter Genauigkeit und einfacherer Montage.
\n
\n
\n
2026-02-28
\n
Creality bringt Klipper-Support fuer Ender-3 V3
\n
Offizielles Klipper-Image verfuegbar. Input Shaping und Pressure Advance ab Werk konfiguriert.
\n
\n
\n
2026-02-22
\n
Neues Hochtemperatur-Filament: PAHT-CF von Extrudr
\n
Carbonfaserverstaerktes Nylon mit Drucktemperaturen bis 300°C fuer industrielle Anwendungen.
\n
\n\n
\n
\n\n\n','Trends & News','','publish','closed','closed','','news','','','2026-03-28 17:15:02','2026-03-28 17:15:02','',0,'http://87.106.117.190:8090/news/',0,'page','',0), +(10,0,'2026-03-05 08:10:19','2026-03-05 07:10:19','\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
716 Likes · 1282 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Dupont\n
\n P_02 // OTHER\n
Dupont connector bridge
\n
536 Likes · 677 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_03 // OTHER\n
Folding Wall Hook
\n
2906 Likes · 7652 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Knurled\n
\n P_04 // OTHER\n
Knurled knobs for M2.5 to M8 internal hex screw
\n
635 Likes · 754 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_05 // OTHER\n
Any Box Generator
\n
1212 Likes · 1773 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"2024\n
\n MW_01 // MAKERWORLD\n
2024 Earring
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Plato\n
\n MW_02 // MAKERWORLD\n
Plato Award
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Arborcycle\n
\n MW_03 // MAKERWORLD\n
Arborcycle Calendar
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ballerina\n
\n MW_04 // MAKERWORLD\n
Ballerina Silhouette Figure Decoration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Bento\n
\n MW_05 // MAKERWORLD\n
Bento Smoke Stack Stage 2 Air Filtration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','publish','closed','closed','','models','','','2026-03-28 19:10:39','2026-03-28 18:10:39','',0,'http://87.106.117.190:8090/models/',0,'page','',0), +(11,0,'2026-03-05 08:10:19','2026-03-05 07:10:19','\n\n\n\n\n\n
\n
TOOLS_DATABASE
\n

RESSOURCEN\n& TOOLS.

\n
\n\n
\n \n
Slicer & Firmware Downloads
\n
\n
\n \"OrcaSlicer\"\n
\n
DOWNLOAD
\n
OrcaSlicer
\n
v2.3.2 · 2026-03-23
\n DOWNLOAD →\n
\n
\n
\n \"PrusaSlicer\"\n
\n
DOWNLOAD
\n
PrusaSlicer
\n
version_2.9.4 · 2025-11-07
\n DOWNLOAD →\n
\n
\n
\n \"Cura\"\n
\n
DOWNLOAD
\n
Cura
\n
5.12.0 · 2026-03-05
\n DOWNLOAD →\n
\n
\n
\n \"BambuStudio\"\n
\n
DOWNLOAD
\n
BambuStudio
\n
v02.05.00.67 · 2026-01-28
\n DOWNLOAD →\n
\n
\n
\n \"Klipper\"\n
\n
DOWNLOAD
\n
Klipper
\n
N/A · —
\n DOWNLOAD →\n
\n
\n
\n \"Marlin\"\n
\n
DOWNLOAD
\n
Marlin
\n
2.1.2.7 · 2026-01-24
\n DOWNLOAD →\n
\n
\n\n
\n
\n\n\n\n\n\n
\n \n
Filament Hersteller
\n \n
\n\n\n','Ressourcen & Tools','','publish','closed','closed','','resources','','','2026-03-28 17:15:03','2026-03-28 17:15:03','',0,'http://87.106.117.190:8090/resources/',0,'page','',0), +(12,0,'2026-03-05 08:10:19','2026-03-05 07:10:19','\n\n\n\n\n\n\n\n
\n
\n
\n KNOWLEDGE_BASE\n

GUIDES_&_TUTORIALS

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n
\n
\n \n \n \n \n \n
\n
\n\n \n
EINSTEIGER

Erstes Modell drucken

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

GUIDE_LADEN →
\n
EINSTEIGER

PLA perfekt einstellen

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

GUIDE_LADEN →
\n
EINSTEIGER

Erste Schicht kalibrieren

Z-Offset, Betttemperatur und First-Layer-Speed für alle Drucker.

GUIDE_LADEN →
\n
EINSTEIGER

Flow-Rate & E-Steps

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt.

GUIDE_LADEN →
\n
EINSTEIGER

Maßhaltigkeit verbessern

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

GUIDE_LADEN →
\n
EINSTEIGER

Temperaturturm auswerten

Optimale Drucktemperatur für jedes Filament finden — schnell und präzise.

GUIDE_LADEN →
\n
EINSTEIGER

Druckbett leveln & Z-Offset

Manuell, BLTouch oder automatisch — perfekte erste Schicht.

GUIDE_LADEN →
\n
EINSTEIGER

Düsenwechsel & Nozzle-Upgrade

Wann wechseln, Messing, Hardened Steel, Ruby — der komplette Guide.

GUIDE_LADEN →
\n
EINSTEIGER

Klipper: Grundlagen & Ersteinrichtung

Raspberry Pi, KIAUH, Mainsail — vom Marlin-Drucker zu Klipper.

GUIDE_LADEN →
\n
EINSTEIGER

Gridfinity: Modulares Ordnungssystem

42mm-Raster, Magnete, Community-Bins — Werkstatt perfekt organisieren.

GUIDE_LADEN →
\n
EINSTEIGER

3D-Drucke nachbearbeiten

Schleifen, Grundieren, Lackieren — professionelles Endprodukt.

GUIDE_LADEN →
\n
EINSTEIGER

3D-Drucker Kaufberatung 2026

Von 200–1.000 € — welcher Drucker passt zu deinem Budget.

GUIDE_LADEN →
\n
EINSTEIGER

Resin-Druck: SLA & MSLA Grundlagen

FDM vs. Resin, Workflow, Sicherheit und Resin-Typen im Überblick.

GUIDE_LADEN →
\n \n
MATERIAL

PETG ohne Frust

Zäh, wasserfest, hitzestabil — der ultimative PETG-Guide.

GUIDE_LADEN →
\n
MATERIAL

TPU drucken

Direktantrieb vs. Bowden — alles für flexibles Filament.

GUIDE_LADEN →
\n
MATERIAL

ASA/ABS Grundlagen

Hitzebeständig und UV-stabil — ohne Warping drucken.

GUIDE_LADEN →
\n
MATERIAL

Nylon / PA drucken

Zäh, hitzebeständig, chemikalienresistent — PA6, PA12 und PA-CF.

GUIDE_LADEN →
\n
MATERIAL

Filament richtig trocknen

Knistern, Blasen — feuchtes Filament erkennen und trocknen.

GUIDE_LADEN →
\n
MATERIAL

TPU & Flexible Filamente

Shore-Härte, Extruder-Kompatibilität — flexibel drucken ohne Chaos.

GUIDE_LADEN →
\n
MATERIAL

Carbon Fiber & Glasfaser

Hardened-Steel-Düse, Abrasion — Hochleistungs-Filamente richtig.

GUIDE_LADEN →
\n
MATERIAL

Nylon (PA6 / PA12) drucken

Feuchtigkeit, Warping, Enclosure — Nylon richtig einrichten.

GUIDE_LADEN →
\n \n
FEHLERANALYSE

Warping vermeiden

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

GUIDE_LADEN →
\n
FEHLERANALYSE

Stringing reduzieren

Retraction, Temperatur und Travel-Speed richtig einstellen.

GUIDE_LADEN →
\n
FEHLERANALYSE

Retraction kalibrieren

Direct Drive vs. Bowden — kein Stringing mehr.

GUIDE_LADEN →
\n
FEHLERANALYSE

Unterextrusion beheben

Lücken, poröse Oberflächen — systematisch diagnostizieren.

GUIDE_LADEN →
\n
FEHLERANALYSE

Layer Separation beheben

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

GUIDE_LADEN →
\n
FEHLERANALYSE

Elefantenfuß beheben

Erste Schicht quillt nach außen — Z-Offset und Slicer-Kompensation.

GUIDE_LADEN →
\n
FEHLERANALYSE

Brücken & Überhänge drucken

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges.

GUIDE_LADEN →
\n
FEHLERANALYSE

Bed Adhesion: Haftung für alle

PEI, Klebestift, Magigoo, Haarspray — richtige Kombination.

GUIDE_LADEN →
\n
FEHLERANALYSE

Verstopfte Düse

Kalt-Ziehen, Atomar-Methode, Nadel — alle Reinigungsmethoden.

GUIDE_LADEN →
\n \n
SLICER

Support richtig setzen

Tree, Normal, Organic — wann welche Methode passt.

GUIDE_LADEN →
\n
SLICER

Slicer-Profil optimieren

E-Steps, Flow, Pressure Advance — das perfekte Profil.

GUIDE_LADEN →
\n
SLICER

Druckzeit vs. Qualität

Schichtdicke, Speed und Infill — der richtige Kompromiss.

GUIDE_LADEN →
\n
SLICER

OrcaSlicer Einsteiger-Guide

Kalibrier-Wizards, Supports, Profiles — der mächtigste freie Slicer.

GUIDE_LADEN →
\n
SLICER

Cura: Tipps & versteckte Einstellungen

Adaptive Layer Height, Ironing, Modifier Meshes.

GUIDE_LADEN →
\n
SLICER

PrusaSlicer: Einsteiger bis Fortgeschrittene

Organic Supports, Variable Layer Height, Paint-on Seams.

GUIDE_LADEN →
\n
SLICER

Bambu Studio komplett

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

GUIDE_LADEN →
\n
SLICER

Pressure Advance kalibrieren

Klipper PA und Marlin Linear Advance — scharfe Ecken.

GUIDE_LADEN →
\n
SLICER

Infill: Muster, Dichte & Wandstärke

Gyroid, Grid, Lightning — welches Muster für welchen Zweck.

GUIDE_LADEN →
\n
SLICER

Input Shaping kalibrieren

Klipper Resonance Compensation mit ADXL345 — Ringing eliminieren.

GUIDE_LADEN →
\n
SLICER

Ironing: Top-Oberflächen glätten

Glasglatte Deckflächen in allen Slicern.

GUIDE_LADEN →
\n
SLICER

Adaptive Layer Height

Kleinere Layer an Kurven — glattere Oberflächen, kürzere Druckzeit.

GUIDE_LADEN →
\n
SLICER

Multi-Material & AMS einrichten

Bambu AMS, Prusa MMU3, lösliche Supports.

GUIDE_LADEN →
\n
SLICER

Naht (Seam) verstecken

Aligned, Scarf Joint, Concave — Naht unsichtbar machen.

GUIDE_LADEN →
\n
SLICER

Speed Tower optimieren

Volumenstrom-Limit, Acceleration — ideale Geschwindigkeit ermitteln.

GUIDE_LADEN →
\n
SLICER

Modifier Meshes & Paint-on Supports

Slicer-Einstellungen zonenweise überschreiben.

GUIDE_LADEN →
\n
SLICER

Fuzzy Skin: Strukturierte Oberflächen

Rauhe, textile oder Steinoptik ohne Nachbearbeitung.

GUIDE_LADEN →
\n\n
\n
\n\n
\n

NOCH FRAGEN?

\n

Schau in die FAQ oder frag direkt in der Community.

\n \n
\n\n\n\n','Guides','','publish','closed','closed','','wissen','','','2026-03-26 20:36:11','2026-03-25 21:22:40','',0,'http://87.106.117.190:8090/wissen/',0,'page','',0), +(13,0,'2026-03-05 08:10:20','2026-03-05 07:10:20','\n\n\n\n\n\n\n\n
\n
\n
\n TOOL_MODULE\n

FILAMENT_RECHNER

\n

Druckkosten sekundenschnell kalkulieren — Filament, Strom, Gesamtkosten.

\n
\n
\n
\n
\n KALKULATION\n
\n
\n
\n
\n
\n
\n \n
\n
\n
[FILAMENT_KOSTEN]
\n
[STROM_KOSTEN]
\n
[GESAMT_KOSTEN]
\n
\n
\n
\n\n

// FILAMENT_RICHTWERTE_2026

\n
\n
PLA

15–25 €/kg

Einfachstes Material. Bambu, Prusament, eSUN, Polymaker.

\n
PETG

18–28 €/kg

Robust, feuchtigkeitsresistent. Etwas Stringing bei falschen Settings.

\n
TPU

22–38 €/kg

Flexibel, langlebig. Direct-Drive Drucker empfohlen.

\n
ASA / ABS

20–32 €/kg

UV-stabil, hitzefest. Enclosure notwendig.

\n
PLA-CF

28–45 €/kg

Carbon-verstärkt, steif und leicht. Gehärtete Düse nötig.

\n
NYLON PA

35–60 €/kg

Sehr zäh, geringe Feuchtigkeitstoleranz.

\n
\n
\n\n\n\n\n\n','Filament-Rechner','','publish','closed','closed','','tools-filament-rechner','','','2026-03-26 20:36:11','2026-03-25 21:22:40','',0,'http://87.106.117.190:8090/tools-filament-rechner/',0,'page','',0), +(14,0,'2026-03-05 08:10:20','2026-03-05 07:10:20','\n
\n\n\n\n
Rechtliches

Impressum

Angaben gemäß § 5 TMG

\n
\n

Hinweis: Bitte ergänze hier deine vollständigen Pflichtangaben gemäß § 5 TMG: Name/Firma, vollständige Adresse, Kontaktdaten (E-Mail, ggf. Telefon) und — falls zutreffend — USt-ID und Verantwortlicher gem. § 55 Abs. 2 RStV. Bis zur Ergänzung ist das Impressum unvollständig.

\n
\n

Verantwortlich für den Inhalt

\n

[Dein Name]
[Straße Hausnummer]
[PLZ Ort]

\n

Kontakt

\n

E-Mail: [deine@email.de]

\n

Haftungsausschluss

\n

Die Inhalte dieser Website wurden mit größter Sorgfalt erstellt. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte übernehmen wir keine Gewähr. Als Diensteanbieter sind wir gemäß § 7 Abs. 1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich.

\n

Externe Links

\n

Diese Website enthält Links zu externen Webseiten Dritter, auf deren Inhalte wir keinen Einfluss haben. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter verantwortlich.

\n
\n
\n\n
','Impressum','','publish','closed','closed','','impressum','','','2026-03-26 20:41:34','2026-03-25 21:22:41','',0,'http://87.106.117.190:8090/impressum/',0,'page','',0), +(15,0,'2026-03-05 08:10:20','2026-03-05 07:10:20','\n
\n\n\n\n
Rechtliches

Datenschutz

Informationen gemäß DSGVO über die Verarbeitung personenbezogener Daten.

\n
\n

Hinweis: Diese Datenschutzerklärung ist ein Rahmen und muss auf deine konkrete Situation angepasst werden. Insbesondere: Hosting-Anbieter, verwendete Plugins (Yoast SEO, WP Super Cache, Autoptimize), Google Fonts und WhatsApp-Verlinkungen. Hole im Zweifel rechtlichen Rat ein.

\n
\n

1. Verantwortlicher

\n

[Dein Name, Adresse, E-Mail] — gemäß Impressum.

\n

2. Erhobene Daten

\n

Beim Besuch dieser Website werden automatisch folgende Daten vom Server erfasst:

\n
  • IP-Adresse (anonymisiert nach kurzer Zeit)
  • Datum und Uhrzeit des Zugriffs
  • Aufgerufene Seite, Referrer-URL, Browser-Typ
\n

3. Hosting

\n

Diese Website wird auf einem eigenen VPS (Virtual Private Server) betrieben. Der Serverstandort ist [Standort des Servers angeben]. Es werden keine Daten an Drittanbieter-Hosting-Dienste übertragen.

\n

4. Google Fonts

\n

Diese Website lädt Schriftarten über Google Fonts (fonts.googleapis.com). Dabei wird deine IP-Adresse an Google übermittelt. Grundlage: berechtigtes Interesse gem. Art. 6 Abs. 1 lit. f DSGVO. Google LLC, 1600 Amphitheatre Parkway, Mountain View, CA 94043, USA.

\n

5. Externe Links

\n

Diese Seite enthält Links zu WhatsApp, Printables, MakerWorld, YouTube und GitHub. Beim Klick auf diese Links verlassen Sie unsere Website. Für die Datenschutzpraktiken dieser Dienste sind deren Betreiber verantwortlich.

\n

6. Deine Rechte

\n

Du hast das Recht auf Auskunft, Berichtigung, Löschung, Einschränkung der Verarbeitung sowie Datenübertragbarkeit (Art. 15–20 DSGVO). Kontakt: [deine@email.de]

\n

7. Beschwerderecht

\n

Du hast das Recht, dich bei einer Datenschutzbehörde zu beschweren. Zuständige Behörde in Deutschland: Bundesbeauftragte für den Datenschutz (BfDI).

\n
\n
\n\n
','Datenschutz','','publish','closed','closed','','datenschutz','','','2026-03-26 20:41:34','2026-03-25 21:22:41','',0,'http://87.106.117.190:8090/datenschutz/',0,'page','',0), +(23,0,'2026-03-05 08:14:35','2026-03-05 07:14:35','
\n

3D-Druck Hub – modern, praktisch, auf Deutsch

\n

Hier findest du jeden Tag relevante News, handverlesene Modelle, Lerninhalte und Tools für deinen 3D-Druck-Workflow – ohne unnötigen Ballast.

\n
\n\n
\n

📰 News

Aktuelle Entwicklungen zu Druckern, Materialien, Firmware und Community.

Zu den News →

\n

🎲 Models

Beliebte und nützliche Modelle mit direkten Quellen.

Zu den Models →

\n

📦 Ressourcen

Tools, Slicer, Profile und Links, die wirklich helfen.

Zu den Ressourcen →

\n

📚 Wissen

Praxiswissen zu Druckqualität, Fehlerdiagnose und Materialwahl.

Zum Wissens-Hub →

\n
\n\n
\n

Schnellstart für Einsteiger

\n
    \n
  1. Slicer-Profil korrekt einrichten
  2. \n
  3. Ersten Kalibrierwürfel drucken
  4. \n
  5. Layer, Temperatur und Speed feinjustieren
  6. \n
  7. Mit dem Filament-Rechner Kosten abschätzen
  8. \n
\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 08:14:35','2026-03-05 07:14:35','',8,'http://87.106.117.190:8090/?p=23',0,'revision','',0), +(24,0,'2026-03-05 08:14:35','2026-03-05 07:14:35','

News aus der 3D-Druck-Welt

\n

Hier sammeln wir relevante Updates zu Hardware, Open-Source-Projekten, Materialien und Business-Trends.

\n\n

Diese Woche im Fokus

\n
    \n
  • Materialien: Neue TPU-/PETG-Blends für robuste Funktionsdrucke
  • \n
  • Software: Verbesserungen in OrcaSlicer und PrusaSlicer
  • \n
  • Hardware: Schnellere Input-Shaper-Setups für CoreXY-Systeme
  • \n
\n\n

Hinweis: Diese Seite wird als redaktioneller Hub ausgebaut (inkl. Quellen-Links und Kurzanalysen).

','News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 08:14:35','2026-03-05 07:14:35','',9,'http://87.106.117.190:8090/?p=24',0,'revision','',0), +(25,0,'2026-03-05 08:14:36','2026-03-05 07:14:36','

Trending Models

\n

Eine kuratierte Übersicht mit sinnvollen Modellen – nicht nur Deko, sondern auch funktionale Prints.

\n\n

Empfohlene Kategorien

\n
    \n
  • Werkstatthelfer (Organizer, Halterungen, Lehren)
  • \n
  • Haushalt (Kabelmanagement, Ersatzteile, Adapter)
  • \n
  • Miniaturen & Hobby
  • \n
  • Maker-Projekte (Elektronik-Cases, Prototypen)
  • \n
\n\n

Quellen

\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 08:14:36','2026-03-05 07:14:36','',10,'http://87.106.117.190:8090/?p=25',0,'revision','',0), +(26,0,'2026-03-05 08:14:36','2026-03-05 07:14:36','

Ressourcen

\n

Alles Wichtige für einen stabilen Workflow – von Slicer bis Wartung.

\n\n

Software

\n
    \n
  • PrusaSlicer
  • \n
  • OrcaSlicer
  • \n
  • Cura
  • \n
\n\n

Wartung & Qualität

\n
    \n
  • Flow-/E-Steps-Kalibrierung
  • \n
  • Bed-Leveling-Checkliste
  • \n
  • Temperatur- und Retract-Tower-Tests
  • \n
\n\n

Nützliche Links

\n','Ressourcen','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 08:14:36','2026-03-05 07:14:36','',11,'http://87.106.117.190:8090/?p=26',0,'revision','',0), +(27,0,'2026-03-05 08:14:37','2026-03-05 07:14:37','

Wissens-Hub

\n

Praxisorientierte Guides für reproduzierbar gute Drucke.

\n\n

Häufige Probleme

\n
    \n
  • Stringing und wie man es reduziert
  • \n
  • Warping bei großen Flächen
  • \n
  • Schlechte Layerhaftung
  • \n
  • Unterextrusion/Überextrusion
  • \n
\n\n

Material-Grundlagen

\n
    \n
  • PLA: einfach, gut für Prototypen
  • \n
  • PETG: robust, temperaturbeständiger
  • \n
  • ABS/ASA: anspruchsvoller, dafür hitzefester
  • \n
  • TPU: flexibel, aber langsamer zu drucken
  • \n
','Wissen','','inherit','closed','closed','','12-revision-v1','','','2026-03-05 08:14:37','2026-03-05 07:14:37','',12,'http://87.106.117.190:8090/?p=27',0,'revision','',0), +(28,0,'2026-03-05 08:14:37','2026-03-05 07:14:37','

Filament-Rechner

\n

Schätze Materialverbrauch und Druckkosten schnell ab.

\n\n

Welche Werte du brauchst

\n
    \n
  • Gewicht des Druckteils (g)
  • \n
  • Preis pro kg Filament
  • \n
  • Druckzeit (optional für Stromkosten)
  • \n
\n\n

Faustformel

\n

Kosten = (Gewicht in g / 1000) × Preis pro kg

\n\n

Als nächster Schritt integrieren wir hier einen interaktiven Rechner direkt in die Seite.

','Filament-Rechner','','inherit','closed','closed','','13-revision-v1','','','2026-03-05 08:14:37','2026-03-05 07:14:37','',13,'http://87.106.117.190:8090/?p=28',0,'revision','',0), +(29,0,'2026-03-05 08:26:23','2026-03-05 07:26:23','@import url(\'https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700;900&family=Exo+2:wght@300;400;500;600;700&display=swap\');\n\n/* ═══════════════════════════════════════\n V2 DESIGN SYSTEM — GLOBAL OVERRIDES\n Accent: #00AE42 (Bambu Green)\n ═══════════════════════════════════════ */\n\n:root {\n --v2-bg: #07090F;\n --v2-s1: #0B0E1A;\n --v2-s2: #101525;\n --v2-bd: #1A2140;\n --v2-txt: #DCE4F5;\n --v2-muted: #5A6A90;\n --v2-acc: #00AE42;\n --v2-acc-dim: rgba(0,174,66,0.1);\n --v2-f-hud: \'Orbitron\', monospace;\n --v2-f-body: \'Exo 2\', sans-serif;\n}\n\n/* ── ASTRA LAYOUT RESET ─────────────────\n Remove ALL Astra spacing that breaks\n full-bleed v2 layouts.\n ─────────────────────────────────────── */\n\nhtml, body {\n background: var(--v2-bg) !important;\n overflow-x: hidden;\n}\n\n/* Hide Astra page title above our content */\n.entry-header,\n.entry-header .entry-title,\nh1.entry-title,\n.ast-page-title {\n display: none !important;\n}\n\n/* Kill all Astra container padding/margin */\n#main.site-main,\n.site-main,\n#primary,\n.content-area,\n#content,\n.ast-container,\n.ast-separate-container,\n.ast-separate-container .ast-article-single,\narticle.ast-article-single,\narticle.page,\narticle.post,\n.entry-content,\n.ast-separate-container .entry-content,\ndiv[data-ast-blocks-layout] {\n padding: 0 !important;\n margin: 0 !important;\n max-width: 100% !important;\n width: 100% !important;\n background: transparent !important;\n box-shadow: none !important;\n}\n\n/* Remove Astra header & footer entirely */\n#masthead,\n.site-header,\n.main-header-bar,\n.ast-header-sticker,\n.header-main-layout-1,\n#colophon,\n.site-footer,\n.ast-footer-overlay,\n.footer-widget-area {\n display: none !important;\n}\n\n/* Remove WP admin bar space */\n#wpadminbar { position: fixed !important; }\nhtml.admin-bar .v2-nav { top: 32px !important; }\n@media screen and (max-width: 782px) {\n html.admin-bar .v2-nav { top: 46px !important; }\n}\n\n/* Breadcrumbs, post-nav, comments */\n.ast-breadcrumbs-wrapper,\n.post-navigation,\n.comments-area,\n.ast-comment-formwrap,\n.ast-related-posts-section,\n.related-posts-inner {\n display: none !important;\n}\n\n/* ── V2 BASE ────────────────────────────── */\n\n.v2, .m3d-wrap {\n font-family: var(--v2-f-body) !important;\n background: var(--v2-bg) !important;\n color: var(--v2-txt) !important;\n}\n\n/* Negative margin trick for old pages that\n relied on m3d-wrap\'s -3em offset */\n.m3d-wrap {\n margin: 0 !important;\n overflow-x: hidden;\n}\n\n/* ── ARTICLE HEADERS (guide pages) ──────── */\n\n.gh, .m3d-ph {\n background: var(--v2-bg) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gh::before, .m3d-ph::before {\n background: radial-gradient(\n ellipse 70% 60% at 50% 0%,\n rgba(0,174,66,0.08), transparent 60%\n ) !important;\n}\n.gh h1, .m3d-ph h1 {\n font-family: var(--v2-f-hud) !important;\n font-weight: 900 !important;\n font-size: clamp(2rem,5vw,3.5rem) !important;\n letter-spacing: 0.04em !important;\n color: var(--v2-txt) !important;\n line-height: 0.95 !important;\n}\n.gh p, .m3d-ph p {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n}\n\n/* ── EYEBROW / LABELS ───────────────────── */\n\n.ew, .sl {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n letter-spacing: 0.18em !important;\n font-size: 0.6rem !important;\n font-weight: 700 !important;\n text-transform: uppercase !important;\n display: inline-flex !important;\n align-items: center !important;\n}\n/* Replace the old line-decoration with brackets */\n.ew::before {\n content: \'[\' !important;\n display: inline !important;\n width: auto !important;\n height: auto !important;\n background: none !important;\n border: none !important;\n opacity: 0.6;\n}\n.ew::after {\n content: \']\';\n opacity: 0.6;\n}\n\n/* ── CONTENT SECTIONS ───────────────────── */\n\n.gsec, .sec {\n padding: 2.5rem 48px !important;\n}\n.gsec h2, .sec h2, .sh {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n font-size: 1.3rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.04em !important;\n margin: 2.5rem 0 1rem !important;\n}\n.gsec h2:first-child, .sec h2:first-child { margin-top: 0 !important; }\n.gsec h3, .sec h3 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n font-size: 0.85rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.06em !important;\n}\n.gsec p, .sec p {\n font-size: 0.9rem !important;\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n line-height: 1.8 !important;\n}\n.gsec strong, .sec strong { color: var(--v2-txt) !important; }\n.gsec a, .sec a { color: var(--v2-acc) !important; }\n\n/* ── LISTS ──────────────────────────────── */\n\n.gsec ul li, .sec ul li {\n color: var(--v2-muted) !important;\n font-size: 0.88rem !important;\n font-weight: 300 !important;\n border-bottom-color: var(--v2-bd) !important;\n}\n.gsec ul li::before, .sec ul li::before {\n content: \'>\' !important;\n color: var(--v2-acc) !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.8rem !important;\n}\n.gsec ol li, .sec ol li {\n color: var(--v2-muted) !important;\n font-size: 0.88rem !important;\n font-weight: 300 !important;\n border-bottom-color: var(--v2-bd) !important;\n}\n.gsec ol li::before, .sec ol li::before {\n background: var(--v2-acc-dim) !important;\n border: 1px solid rgba(0,174,66,0.3) !important;\n border-radius: 0 !important;\n color: var(--v2-acc) !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.6rem !important;\n}\n\n/* ── TABLES ─────────────────────────────── */\n\n.gsec table th, .sec table th {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.1em !important;\n text-transform: uppercase !important;\n background: var(--v2-s1) !important;\n color: var(--v2-acc) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gsec table td, .sec table td {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gsec table tr:hover td, .sec table tr:hover td {\n background: var(--v2-s1) !important;\n}\n\n/* ── CALLOUT BOXES ──────────────────────── */\n\n.tip {\n background: rgba(0,174,66,0.06) !important;\n border: 1px solid rgba(0,174,66,0.2) !important;\n border-radius: 0 !important;\n padding: 1.2rem 1.5rem !important;\n}\n.tip strong { color: var(--v2-acc) !important; }\n.info {\n background: rgba(88,166,255,0.06) !important;\n border: 1px solid rgba(88,166,255,0.2) !important;\n border-radius: 0 !important;\n padding: 1.2rem 1.5rem !important;\n}\n.info strong { color: #58a6ff !important; }\n\n/* ── BUTTONS ────────────────────────────── */\n\n.btn { border-radius: 0 !important; font-family: var(--v2-f-hud) !important; }\n.bo {\n background: var(--v2-acc) !important;\n color: #000 !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.14em !important;\n text-transform: uppercase !important;\n}\n.bo:hover { opacity: 0.85 !important; transform: none !important; }\n.bgb {\n border: 1px solid var(--v2-bd) !important;\n color: var(--v2-muted) !important;\n background: transparent !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.14em !important;\n text-transform: uppercase !important;\n}\n.bgb:hover {\n border-color: var(--v2-acc) !important;\n color: var(--v2-acc) !important;\n}\n\n/* ── CARDS ──────────────────────────────── */\n\n.cd {\n background: var(--v2-bg) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n transition: background 0.15s !important;\n}\n.cd:hover {\n background: var(--v2-s1) !important;\n border-color: rgba(0,174,66,0.3) !important;\n transform: none !important;\n}\n.cd::before {\n background: var(--v2-acc) !important;\n border-radius: 0 !important;\n}\n.cd h3 { color: var(--v2-txt) !important; }\n.cd p { color: var(--v2-muted) !important; }\n\n/* Tags */\n.tg, .to, .tg2, .tb, .tp, .tm { border-radius: 0 !important; }\n.to {\n background: var(--v2-acc-dim) !important;\n color: var(--v2-acc) !important;\n border: 1px solid rgba(0,174,66,0.25) !important;\n}\n.lk {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.1em !important;\n text-transform: uppercase !important;\n}\n\n/* ── FILTER BUTTONS (Guides page) ───────── */\n\n#gfb button {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.52rem !important;\n letter-spacing: 0.12em !important;\n text-transform: uppercase !important;\n border-radius: 0 !important;\n background: var(--v2-s2) !important;\n color: var(--v2-muted) !important;\n border: 1px solid var(--v2-bd) !important;\n padding: 0.5rem 1rem !important;\n}\n#gfb button.active {\n background: var(--v2-acc-dim) !important;\n color: var(--v2-acc) !important;\n border-color: var(--v2-acc) !important;\n}\n\n/* ── CTA SECTION ────────────────────────── */\n\n.cta {\n background: none !important;\n border-top: 1px solid var(--v2-bd) !important;\n}\n.cta::before { display: none !important; }\n.cta h2 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n font-size: 1.5rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.04em !important;\n}\n.cta p { color: var(--v2-muted) !important; }\n.dv {\n height: 1px !important;\n background: var(--v2-bd) !important;\n position: relative;\n}\n\n/* ── RECHNER TOOL ───────────────────────── */\n\n.cw {\n background: var(--v2-s1) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n}\n.fld label {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.5rem !important;\n letter-spacing: 0.12em !important;\n color: var(--v2-muted) !important;\n}\n.fld input {\n background: var(--v2-s2) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n color: var(--v2-txt) !important;\n font-family: var(--v2-f-hud) !important;\n}\n.fld input:focus { border-color: var(--v2-acc) !important; }\n.cbtn {\n background: var(--v2-acc) !important;\n color: #000 !important;\n border-radius: 0 !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.6rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.14em !important;\n}\n.cbtn:hover { opacity: 0.85 !important; transform: none !important; }\n.cr {\n background: var(--v2-acc-dim) !important;\n border: 1px solid rgba(0,174,66,0.2) !important;\n border-radius: 0 !important;\n}\n.cr-val {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n}\n.cr-label { font-family: var(--v2-f-hud) !important; color: var(--v2-muted) !important; }\n.sl, .sh { font-family: var(--v2-f-hud) !important; }\n.sh { color: var(--v2-txt) !important; }\n\n/* ── HUB-SECTION (simple pages) ─────────── */\n\n.hub-section {\n background: var(--v2-bg) !important;\n color: var(--v2-txt) !important;\n font-family: var(--v2-f-body) !important;\n padding: 2rem !important;\n margin: 0 !important;\n}\n.hub-section h1, .hub-section h2, .hub-section h3 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n}\n.hub-section p, .hub-section li {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n}\n.hub-section a { color: var(--v2-acc) !important; }\n.hub-section th {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n background: var(--v2-s1) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.hub-section td {\n color: var(--v2-muted) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n\n/* ── RESPONSIVE ─────────────────────────── */\n\n@media (max-width: 600px) {\n .gsec, .sec { padding: 1.5rem 1rem !important; }\n}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* ── GLOBAL MOBILE RESPONSIVE ─────────────────────────── */\n\n/* Base: ensure all v2 containers have safe padding */\n\n}\n\n@media(max-width:680px) {\n /* NAV */\n .v2-nav { height:48px !important; padding:0 1rem !important; }\n .v2-nav-logo { font-size:0.85rem !important; }\n .v2-nav-tag { font-size:0.4rem !important; }\n .v2-nav-cta { display:none !important; }\n\n /* PAGE HEADER */\n .v2-ph { padding:calc(48px + 2rem) 1.25rem 2rem 1.25rem !important; }\n .v2-ph h1 { font-size:1.5rem !important; line-height:1.1 !important; word-break:break-word !important; }\n .v2-ph p { font-size:0.85rem !important; }\n\n /* GUIDE ARTICLES */\n .v2-guide { padding:calc(48px + 2.5rem) 1.25rem 2rem 1.25rem !important; max-width:100% !important; }\n .v2-guide h1 { font-size:1.3rem !important; line-height:1.15 !important; letter-spacing:0.01em !important; word-break:break-word !important; overflow-wrap:break-word !important; }\n .v2-guide .lead { font-size:0.88rem !important; padding-left:0.75rem !important; }\n .v2-guide h2 { font-size:0.6rem !important; margin:1.8rem 0 0.75rem !important; }\n .v2-guide h3 { font-size:0.58rem !important; }\n .v2-guide p { font-size:0.85rem !important; line-height:1.7 !important; }\n .v2-guide ul, .v2-guide ol { margin-left:1rem !important; font-size:0.85rem !important; line-height:1.8 !important; }\n .v2-guide p[style], .v2-guide li[style], .v2-guide ul[style], .v2-guide ol[style] { font-size:0.85rem !important; line-height:1.8 !important; }\n\n /* TABLES (global — guides + all pages) */\n .v2-guide table, .v2-body table, table[style] {\n display:block !important; overflow-x:auto !important;\n -webkit-overflow-scrolling:touch !important;\n width:100% !important; font-size:0.78rem !important;\n }\n .v2-guide th[style], .v2-body th[style], th[style] { padding:0.5rem 0.5rem !important; font-size:0.65rem !important; }\n .v2-guide td[style], .v2-body td[style], td[style] { padding:0.5rem 0.5rem !important; font-size:0.78rem !important; word-break:break-word !important; }\n\n /* BODY CONTENT */\n .v2-body { padding:2rem 1.25rem !important; }\n .v2-body h2 { font-size:0.6rem !important; }\n .v2-body p { font-size:0.85rem !important; }\n\n /* GRIDS */\n .v2-model-grid, .v2-models { grid-template-columns:1fr !important; }\n .v2-grid-3, .v2-grid { grid-template-columns:1fr !important; }\n .v2-stats { grid-template-columns:repeat(2,1fr) !important; }\n .v2-rel-grid { grid-template-columns:1fr !important; }\n .v2-yt-grid { grid-template-columns:1fr !important; }\n .v2-brand-grid { grid-template-columns:1fr !important; }\n .v2-guides, .v2-grow-grid { grid-template-columns:1fr !important; }\n\n /* CARDS */\n .v2-mcard, .v2-mc { width:100% !important; }\n .v2-card[style] { flex-direction:column !important; align-items:flex-start !important; gap:8px !important; }\n\n /* HERO (Startseite) */\n .v2-hero-h1 { font-size:2.2rem !important; }\n .v2-hero-sub { font-size:0.85rem !important; }\n .v2-hero-actions { flex-direction:column !important; gap:0.5rem !important; }\n .v2-hero-actions .v2-btn { width:100% !important; text-align:center !important; }\n .v2-hero-sys { display:none !important; }\n\n /* TICKER */\n .v2-ticker { font-size:0.55rem !important; }\n\n /* COMMUNITY SECTION */\n .v2-comm { grid-template-columns:1fr !important; }\n\n /* SHOP BANNER */\n .v2-shop-banner, .v2-banner { flex-direction:column !important; text-align:center !important; gap:0.75rem !important; padding:1rem !important; }\n\n /* FAQ ACCORDION */\n .v2-acc-btn { font-size:0.6rem !important; padding:0.75rem 1rem !important; }\n .v2-acc-body { padding:0 1rem 1rem !important; font-size:0.85rem !important; }\n\n /* FOOTER */\n .v2-footer { grid-template-columns:1fr !important; padding:1.25rem 1.25rem !important; }\n .v2-footer-brand { font-size:0.7rem !important; }\n .v2-footer-links { justify-content:flex-start !important; margin-top:0.5rem !important; gap:1.25rem !important; }\n .v2-footer-links a { font-size:0.45rem !important; }\n\n /* SECTION LABELS */\n .v2-label { font-size:0.5rem !important; }\n .v2-sec-title { font-size:0.85rem !important; }\n .v2-sec-link { font-size:0.5rem !important; }\n\n /* INLINE STYLE OVERRIDES */\n [style*=\"padding:\"] { box-sizing:border-box !important; }\n div[style*=\"overflow-x\"] { margin:0.75rem 0 !important; }\n}\n\n@media(max-width:400px) {\n .v2-ph { padding:calc(48px + 1.5rem) 1rem 1.5rem 1rem !important; }\n .v2-ph h1 { font-size:1.2rem !important; }\n .v2-guide { padding:calc(48px + 2rem) 1rem 1.5rem 1rem !important; }\n .v2-guide h1 { font-size:1.15rem !important; }\n .v2-guide p, .v2-guide li { font-size:0.82rem !important; }\n .v2-body { padding:1.5rem 1rem !important; }\n .v2-stats { grid-template-columns:1fr !important; }\n .v2-hero-h1 { font-size:1.8rem !important; }\n}\n\n@media(max-width:860px) {\n \n}\n@media(max-width:680px) {\n \n}\n\n/* ── CATCH-ALL CONTENT PADDING ── */\n/* Ensures ALL content has padding on mobile, regardless of wrapper class */\n\n/* Base: every direct page content gets padding */\n#v2-page-wrap { padding:0; }\n#v2-page-wrap > .entry-content,\n#v2-page-wrap .entry-content { \n overflow-x:hidden; \n}\n\n/* Old hub-section posts get padding */\n.hub-section {\n padding-left:clamp(1.25rem,5vw,3rem);\n padding-right:clamp(1.25rem,5vw,3rem);\n max-width:900px;\n margin:0 auto;\n}\n.hub-section h1 { word-break:break-word; overflow-wrap:break-word; }\n\n/* Single post content (blog articles) */\n.single .entry-content,\n.single article .entry-content,\narticle.post .entry-content {\n padding-left:clamp(1.25rem,5vw,3rem) !important;\n padding-right:clamp(1.25rem,5vw,3rem) !important;\n max-width:900px !important;\n margin:0 auto !important;\n}\n\n/* Tables in any context */\ntable { max-width:100%; }\n\n@media(max-width:680px) {\n /* Hub-section posts (old design) */\n .hub-section {\n padding-left:1.25rem !important;\n padding-right:1.25rem !important;\n }\n .hub-section h1 { \n font-size:1.4rem !important; \n line-height:1.15 !important;\n word-break:break-word !important;\n }\n .hub-section h2 { font-size:1rem !important; }\n .hub-section p, .hub-section li { font-size:0.88rem !important; line-height:1.7 !important; }\n .hub-section table { display:block !important; overflow-x:auto !important; -webkit-overflow-scrolling:touch !important; }\n .hub-section th, .hub-section td { padding:0.5rem !important; font-size:0.78rem !important; }\n\n /* Single post body */\n .single .entry-content,\n article.post .entry-content {\n padding-left:1.25rem !important;\n padding-right:1.25rem !important;\n }\n \n /* Any content wrapper fallback */\n .entry-content > div:not(.v2-guide):not([class*=\"v2-\"]) {\n padding-left:1.25rem;\n padding-right:1.25rem;\n box-sizing:border-box;\n }\n \n /* Prevent horizontal overflow globally */\n body, html { overflow-x:hidden !important; }\n img { max-width:100% !important; height:auto !important; }\n pre, code { overflow-x:auto !important; white-space:pre-wrap !important; word-break:break-all !important; }\n}\n\n@media(max-width:400px) {\n .hub-section { padding-left:1rem !important; padding-right:1rem !important; }\n .hub-section h1 { font-size:1.2rem !important; }\n .single .entry-content { padding-left:1rem !important; padding-right:1rem !important; }\n}\n/* ── END CATCH-ALL ── */\n\n/* ── M3D WRAP FIX ── */\n/* Force padding on old guide article wrappers */\n.m3d-wrap {\n padding-left:clamp(1.25rem,5vw,3rem) !important;\n padding-right:clamp(1.25rem,5vw,3rem) !important;\n max-width:900px !important;\n margin:0 auto !important;\n overflow-x:hidden !important;\n box-sizing:border-box !important;\n}\n.m3d-wrap .v2-nav {\n margin-left:calc(-1 * clamp(1.25rem,5vw,3rem)) !important;\n margin-right:calc(-1 * clamp(1.25rem,5vw,3rem)) !important;\n padding-left:clamp(1rem,4vw,2.5rem) !important;\n padding-right:clamp(1rem,4vw,2.5rem) !important;\n width:auto !important;\n}\n.m3d-wrap .v2-footer {\n margin-left:calc(-1 * clamp(1.25rem,5vw,3rem)) !important;\n margin-right:calc(-1 * clamp(1.25rem,5vw,3rem)) !important;\n padding-left:clamp(1rem,4vw,2.5rem) !important;\n padding-right:clamp(1rem,4vw,2.5rem) !important;\n}\n\n/* Hub sections inside m3d-wrap already get padding from parent */\n.m3d-wrap .hub-section { padding-left:0 !important; padding-right:0 !important; }\n.m3d-wrap .hub-section h1,\n.m3d-wrap .hub-section h2,\n.m3d-wrap .hub-section h3,\n.m3d-wrap .hub-section p,\n.m3d-wrap .hub-section ul,\n.m3d-wrap .hub-section ol,\n.m3d-wrap .hub-section table { \n max-width:100% !important; \n overflow-wrap:break-word !important;\n word-break:break-word !important;\n}\n\n@media(max-width:680px) {\n .m3d-wrap {\n padding-left:1.25rem !important;\n padding-right:1.25rem !important;\n padding-top:calc(48px + 2rem) !important;\n }\n .m3d-wrap .v2-nav {\n margin-left:-1.25rem !important;\n margin-right:-1.25rem !important;\n padding:0 1rem !important;\n height:48px !important;\n }\n .m3d-wrap .v2-footer {\n margin-left:-1.25rem !important;\n margin-right:-1.25rem !important;\n }\n .m3d-wrap h1 { font-size:1.4rem !important; line-height:1.15 !important; }\n .m3d-wrap h2 { font-size:1rem !important; }\n .m3d-wrap h3 { font-size:0.9rem !important; }\n .m3d-wrap p, .m3d-wrap li { font-size:0.88rem !important; line-height:1.7 !important; }\n .m3d-wrap table { display:block !important; overflow-x:auto !important; width:100% !important; }\n .m3d-wrap th, .m3d-wrap td { padding:0.5rem !important; font-size:0.78rem !important; }\n \n /* Page header sections in m3d-wrap */\n .m3d-wrap .gh, .m3d-wrap .gsec, .m3d-wrap .sec {\n padding-left:0 !important;\n padding-right:0 !important;\n }\n}\n@media(max-width:400px) {\n .m3d-wrap {\n padding-left:1rem !important;\n padding-right:1rem !important;\n }\n .m3d-wrap .v2-nav { margin-left:-1rem !important; margin-right:-1rem !important; }\n .m3d-wrap .v2-footer { margin-left:-1rem !important; margin-right:-1rem !important; }\n .m3d-wrap h1 { font-size:1.2rem !important; }\n}\n/* ── END M3D ── */\n\n\n/* ═══════════════════════════════════════\n MOBILE NAV — Single source of truth\n ═══════════════════════════════════════ */\n\n/* Hamburger button — hidden on desktop */\n.v2-hamburger {\n display: none;\n background: none;\n border: none;\n cursor: pointer;\n width: 40px;\n height: 40px;\n position: relative;\n flex-shrink: 0;\n z-index: 1002;\n -webkit-tap-highlight-color: transparent;\n}\n.v2-hamburger span {\n display: block;\n width: 22px;\n height: 2px;\n background: #DCE4F5;\n position: absolute;\n left: 9px;\n transition: transform 0.25s ease, opacity 0.2s ease;\n}\n.v2-hamburger span:nth-child(1) { top: 12px; }\n.v2-hamburger span:nth-child(2) { top: 19px; }\n.v2-hamburger span:nth-child(3) { top: 26px; }\n.v2-hamburger.open span:nth-child(1) { transform: rotate(45deg); top: 19px; }\n.v2-hamburger.open span:nth-child(2) { opacity: 0; }\n.v2-hamburger.open span:nth-child(3) { transform: rotate(-45deg); top: 19px; }\n\n/* Mobile menu overlay — hidden by default */\n.v2-mobile-menu {\n display: none;\n position: fixed;\n top: 52px;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(7, 9, 15, 0.98);\n backdrop-filter: blur(20px);\n -webkit-backdrop-filter: blur(20px);\n z-index: 999;\n flex-direction: column;\n padding: 2rem 1.5rem;\n overflow-y: auto;\n}\n.v2-mobile-menu.open {\n display: flex !important;\n}\n.v2-mobile-menu a {\n display: block;\n padding: 1rem 0;\n font-family: \"Orbitron\", monospace;\n font-size: 0.75rem;\n font-weight: 700;\n letter-spacing: 0.15em;\n text-transform: uppercase;\n color: #5A6A90;\n text-decoration: none;\n border-bottom: 1px solid #1A2140;\n transition: color 0.15s;\n}\n.v2-mobile-menu a:hover,\n.v2-mobile-menu a:active {\n color: #00AE42;\n}\n.v2-mobile-menu .v2-mobile-cta {\n display: inline-block;\n margin-top: 1.5rem;\n background: #00AE42;\n color: #000;\n text-align: center;\n padding: 0.8rem 1.5rem;\n border: none;\n border-bottom: none;\n clip-path: polygon(8px 0%, 100% 0%, calc(100% - 8px) 100%, 0% 100%);\n}\n\n/* BREAKPOINT: ≤860px → show burger, hide desktop links */\n@media (max-width: 860px) {\n .v2-hamburger {\n display: flex !important;\n align-items: center;\n justify-content: center;\n }\n .v2-nav-links {\n display: none !important;\n }\n .v2-nav-cta {\n display: none !important;\n }\n}\n','astra','','publish','closed','closed','','astra','','','2026-03-26 20:41:10','2026-03-26 12:10:05','',0,'http://87.106.117.190:8090/astra/',0,'custom_css','',0), +(30,0,'2026-03-05 08:26:23','2026-03-05 07:26:23','','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 08:26:23','2026-03-05 07:26:23','',29,'http://87.106.117.190:8090/?p=30',0,'revision','',0), +(31,0,'2026-03-05 08:26:23','2026-03-05 07:26:23','
\n

3D-Druck Hub – Moderne Plattform für Maker

\n

Klare Inhalte statt leerer Register: News, Modelle, Ressourcen, Wissen und Tools. Alles strukturiert, schnell auffindbar und optisch modern.

\n

News ansehenTrending Models

\n
\n\"3D-Druck\n
\n

📰 News

Tägliche Updates zu Druckern, Materialien, Slicern und Community-Themen.

Mehr lesen →

\n

🎲 Models

Kuratiert statt Zufall: sinnvolle und beliebte Modelle mit direktem Link.

Zu den Models →

\n

📦 Ressourcen

Slicer, Guides, Wartung und Druckprofile – kompakt an einem Ort.

Ressourcen →

\n

📚 Wissen

Fehlerdiagnose und Best Practices, damit Drucke reproduzierbar gelingen.

Wissens-Hub →

\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 08:26:23','2026-03-05 07:26:23','',8,'http://87.106.117.190:8090/?p=31',0,'revision','',0), +(32,0,'2026-03-05 08:26:24','2026-03-05 07:26:24','

News

\n\"3D-Drucker\"\n

Aktuelle Themen

  • Neue FDM- und Resin-Printer im Vergleich
  • Firmware-Updates (Klipper, Marlin) verständlich erklärt
  • Materialtrends: PETG-CF, ASA, TPU und ihre Einsatzbereiche

Diese Seite wird fortlaufend mit echten Quellenartikeln erweitert.

','News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 08:26:24','2026-03-05 07:26:24','',9,'http://87.106.117.190:8090/?p=32',0,'revision','',0), +(33,0,'2026-03-05 08:26:24','2026-03-05 07:26:24','

Trending Models

\n\"Werkbank\n

Beliebte Kategorien

  • Werkstatthelfer & Organizer
  • Haushaltslösungen & Ersatzteile
  • Elektronik-Gehäuse
  • Hobby & Miniaturen

Empfohlene Quellen

','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 08:26:24','2026-03-05 07:26:24','',10,'http://87.106.117.190:8090/?p=33',0,'revision','',0), +(34,0,'2026-03-05 08:26:24','2026-03-05 07:26:24','

Ressourcen

\n\"Maker\n

Software & Tools

  • PrusaSlicer
  • OrcaSlicer
  • Cura

Qualitätssicherung

  • Flow- und E-Step-Kalibrierung
  • Retraction-/Temp-Tower
  • Wartungs-Checklisten
','Ressourcen','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 08:26:24','2026-03-05 07:26:24','',11,'http://87.106.117.190:8090/?p=34',0,'revision','',0), +(35,0,'2026-03-05 08:26:25','2026-03-05 07:26:25','

Wissens-Hub

\n

Häufige Druckprobleme und Lösungen

  • Stringing: Retract erhöhen, Temperatur senken.
  • Warping: Bett-Temperatur und Haftung optimieren.
  • Unterextrusion: Nozzle prüfen, Flow kalibrieren.
  • Schlechte Layerhaftung: Temperatur/Speed anpassen.

Materialkurzüberblick

  • PLA: einfach und schnell
  • PETG: robust und alltagstauglich
  • ASA/ABS: hitzefest, anspruchsvoller
  • TPU: flexibel, langsamer Druck
','Wissen','','inherit','closed','closed','','12-revision-v1','','','2026-03-05 08:26:25','2026-03-05 07:26:25','',12,'http://87.106.117.190:8090/?p=35',0,'revision','',0), +(36,0,'2026-03-05 08:26:25','2026-03-05 07:26:25','

Filament-Rechner

\n

Kosten schnell überschlagen

Formel: (Gewicht in g / 1000) × Preis pro kg

Beispiel: 120g bei 24 €/kg = 2,88 € Materialkosten.

Als Nächstes

Ein interaktiver Rechner mit Eingabefeldern wird direkt hier eingebunden.

','Filament-Rechner','','inherit','closed','closed','','13-revision-v1','','','2026-03-05 08:26:25','2026-03-05 07:26:25','',13,'http://87.106.117.190:8090/?p=36',0,'revision','',0), +(37,0,'2026-03-05 08:26:50','2026-03-05 07:26:50',':root{--hub-accent:#ff6a00;--hub-dark:#111827;--hub-muted:#6b7280}\nbody{background:#f6f7fb}\n.hub-hero{background:linear-gradient(130deg,#111827 0%,#1f2937 45%,#374151 100%);color:#fff;border-radius:18px;padding:40px;margin:12px 0 24px 0;box-shadow:0 10px 30px rgba(0,0,0,.18)}\n.hub-hero h1{color:#fff!important;font-size:2.4rem;line-height:1.15;margin:0 0 12px}\n.hub-hero p{color:#e5e7eb;font-size:1.08rem;max-width:760px}\n.hub-btn{display:inline-block;background:var(--hub-accent);color:#fff!important;padding:10px 16px;border-radius:10px;margin-right:10px;text-decoration:none;font-weight:600}\n.hub-btn.alt{background:#374151}\n.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:18px 0}\n.hub-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:16px;box-shadow:0 4px 16px rgba(17,24,39,.06)}\n.hub-card h3{margin-top:0}\n.hub-image{width:100%;height:260px;object-fit:cover;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.14);margin:12px 0 20px}\n.hub-section{background:#fff;border:1px solid #eceff3;border-radius:14px;padding:18px 18px 8px;margin:14px 0}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 08:26:50','2026-03-05 07:26:50','',29,'http://87.106.117.190:8090/?p=37',0,'revision','',0), +(38,0,'2026-03-05 08:38:00','2026-03-05 07:38:00',':root{--bg:#0c111b;--panel:#131a28;--panel-2:#182136;--text:#e8ecf3;--muted:#9aa5b5;--bambu:#00d2ff;--prusa:#ff6a00;--accent-grad:linear-gradient(90deg,var(--bambu),#5ac8ff 35%,#8a7dff 70%,var(--prusa));}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd} a{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n.hub-hero{background:linear-gradient(140deg,#10182a,#16213a 45%,#1c1e3f);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:42px;box-shadow:0 14px 40px rgba(0,0,0,.35);position:relative;overflow:hidden}\n.hub-hero:before{content:\"\";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.24),transparent 32%),radial-gradient(circle at 15% 85%,rgba(255,106,0,.20),transparent 30%)}\n.hub-hero>*{position:relative;z-index:1}.hub-badge{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:#d9e6ff;font-size:.85rem;border:1px solid rgba(255,255,255,.14)}\n.hub-title{font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.1;margin:.4rem 0 1rem}.hub-gradient{background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent}\n.hub-btn{display:inline-block;padding:11px 18px;border-radius:12px;text-decoration:none;font-weight:700;margin:6px 10px 6px 0}.hub-btn.primary{background:var(--accent-grad);color:#0b0f17!important}.hub-btn.secondary{background:#1e2940;border:1px solid rgba(255,255,255,.14);color:#dce8f8!important}\n.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:20px}.hub-card{background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px}\n.hub-logo{width:84px;height:84px;border-radius:18px;box-shadow:0 10px 24px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.14)}.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 08:38:00','2026-03-05 07:38:00','',29,'http://87.106.117.190:8090/?p=38',0,'revision','',0), +(39,0,'2026-03-05 08:38:35','2026-03-05 07:38:35',':root{--bg:#0c111b;--panel:#131a28;--panel-2:#182136;--text:#e8ecf3;--bambu:#00d2ff;--prusa:#ff6a00;--accent-grad:linear-gradient(90deg,var(--bambu),#5ac8ff 35%,#8a7dff 70%,var(--prusa));}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd} a{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n.hub-hero{background:linear-gradient(140deg,#10182a,#16213a 45%,#1c1e3f);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:42px;box-shadow:0 14px 40px rgba(0,0,0,.35)}\n.hub-badge{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:#d9e6ff;font-size:.85rem;border:1px solid rgba(255,255,255,.14)}\n.hub-title{font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.1;margin:.4rem 0 1rem}.hub-gradient{background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent}\n.hub-btn{display:inline-block;padding:11px 18px;border-radius:12px;text-decoration:none;font-weight:700;margin:6px 10px 6px 0}.hub-btn.primary{background:var(--accent-grad);color:#0b0f17!important}.hub-btn.secondary{background:#1e2940;border:1px solid rgba(255,255,255,.14);color:#dce8f8!important}\n.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:20px}.hub-card{background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px}\n.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 08:38:35','2026-03-05 07:38:35','',29,'http://87.106.117.190:8090/?p=39',0,'revision','',0), +(40,0,'2026-03-05 08:38:36','2026-03-05 07:38:36','
\n WhatsApp Community • 3D-Druck Hub\n

Willkommen in der 3D-Druck Community

\n

Diese Seite ist dein zentraler Einstieg für die WhatsApp-Community: Wissen, News, Modelle und praktische Tools – in modernem Tech-Dark Look.

\n

\n Community beitreten\n Direkt zum Wissens-Hub\n

\n
\n
\n

🧠 Wissen

Klare Guides für Einsteiger und Fortgeschrittene.

Öffnen →

\n

📰 News

Aktuelle Entwicklungen aus der 3D-Druck-Welt.

Öffnen →

\n

🎲 Models

Beliebte und nützliche Modelle mit Quellenlinks.

Öffnen →

\n

🧮 Tools

Kalkulationen und Helfer für deinen Alltag.

Öffnen →

\n
\n
\n

WhatsApp Community

\n

Hier entsteht der zentrale Community-Bereich mit Regeln, FAQ, Druck-Showcase und Support-Ecken.

\n

Schick mir den Einladungslink, dann setze ich ihn direkt als Live-Button.

\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 08:38:36','2026-03-05 07:38:36','',8,'http://87.106.117.190:8090/?p=40',0,'revision','',0), +(41,0,'2026-03-05 09:06:51','2026-03-05 08:06:51','
\n WhatsApp Community • 3D-Druck Hub\n

Willkommen in der 3D-Druck Community

\n

Dein zentraler Treffpunkt für 3D-Druck in deutscher Sprache: Wissen, Hilfe, Modelle, News und Austausch auf Augenhöhe.

\n

\n Jetzt WhatsApp-Community beitreten\n Zum Wissens-Hub\n

\n
\n\n
\n

🧠 Wissen

Praxis-Guides, Troubleshooting und Materialwissen für bessere Drucke.

Öffnen →

\n

📰 News

Aktuelle Entwicklungen aus der 3D-Druck-Welt, kompakt zusammengefasst.

Öffnen →

\n

🎲 Models

Nützliche Modelle und Quellenlinks für Alltag, Werkstatt und Hobby.

Öffnen →

\n

🧮 Tools

Nützliche Rechner und Hilfen, z. B. für Filamentkosten.

Öffnen →

\n
\n\n
\n

Was dich in der Community erwartet

\n
    \n
  • Hilfe bei Druckproblemen (Stringing, Warping, Layer-Probleme)
  • \n
  • Empfehlungen zu Druckern, Filamenten und Slicer-Profilen
  • \n
  • Showcase deiner Drucke + Feedback aus der Community
  • \n
  • Austausch für Einsteiger und Fortgeschrittene
  • \n
\n

Zur WhatsApp-Community

\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 09:06:51','2026-03-05 08:06:51','',8,'http://87.106.117.190:8090/?p=41',0,'revision','',0), +(42,0,'2026-03-05 09:06:52','2026-03-05 08:06:52','
\n

News

\n

Hier findest du relevante Neuigkeiten rund um 3D-Druck – ohne Clickbait, dafür mit Fokus auf praktischen Nutzen.

\n\n

Schwerpunkte

\n
    \n
  • Hardware: neue Drucker, Upgrades, Firmware-Features
  • \n
  • Software: Slicer-Updates, Profile, Workflow-Verbesserungen
  • \n
  • Materialien: PLA/PETG/ASA/TPU und Spezialfilamente
  • \n
  • Community: Trends, Tipps und Best Practices
  • \n
\n\n

Warum diese Seite?

\n

Du bekommst eine schnelle Übersicht über das, was für deinen Druckalltag wirklich relevant ist.

\n\n

In der Community diskutieren

\n
','News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 09:06:52','2026-03-05 08:06:52','',9,'http://87.106.117.190:8090/?p=42',0,'revision','',0), +(43,0,'2026-03-05 09:06:52','2026-03-05 08:06:52','
\n

Models

\n

Eine kuratierte Übersicht mit sinnvollen Modellen statt endlosem Scrollen.

\n\n

Beliebte Kategorien

\n
    \n
  • Werkstatthelfer & Organizer
  • \n
  • Haushalt & Ersatzteile
  • \n
  • Elektronik-Cases & Maker-Projekte
  • \n
  • Hobby, Cosplay & Miniaturen
  • \n
\n\n

Top Plattformen

\n\n\n

Tipp: Teile dein Lieblingsmodell direkt in der Community und hol dir Feedback zu Druckeinstellungen.

\n

Modelle in WhatsApp teilen

\n
','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 09:06:52','2026-03-05 08:06:52','',10,'http://87.106.117.190:8090/?p=43',0,'revision','',0), +(44,0,'2026-03-05 09:06:53','2026-03-05 08:06:53','
\n

Ressourcen

\n

Deine Toolbox für bessere Ergebnisse: Software, Tuning und verlässliche Referenzen.

\n\n

Software

\n
    \n
  • PrusaSlicer
  • \n
  • OrcaSlicer
  • \n
  • Cura
  • \n
\n\n

Empfohlene Grundlagen

\n
    \n
  • Flow- und E-Step-Kalibrierung
  • \n
  • Retraction- und Temperaturtürme
  • \n
  • Sauberes Bed-Leveling und First-Layer-Checks
  • \n
\n\n

Nützliche Links

\n\n\n

Ressourcen in der Community diskutieren

\n
','Ressourcen','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 09:06:53','2026-03-05 08:06:53','',11,'http://87.106.117.190:8090/?p=44',0,'revision','',0), +(45,0,'2026-03-05 09:06:53','2026-03-05 08:06:53','
\n

Wissens-Hub

\n

Praxiswissen für reproduzierbar gute Drucke – von den Basics bis zum Feintuning.

\n\n

Häufige Probleme & Lösungen

\n
    \n
  • Stringing: Retract optimieren, Temperatur reduzieren
  • \n
  • Warping: Bett-Haftung verbessern, Gehäuse/Umgebung beachten
  • \n
  • Unterextrusion: Nozzle prüfen, Flow kalibrieren
  • \n
  • Layerprobleme: Speed/Temperatur/Belüftung fein abstimmen
  • \n
\n\n

Material-Kurzguide

\n
    \n
  • PLA: einfach, schnell, ideal für Prototyping
  • \n
  • PETG: robuster, alltagstauglich, leicht elastisch
  • \n
  • ASA/ABS: hitzebeständiger, anspruchsvoller zu drucken
  • \n
  • TPU: flexibel, braucht angepasste Druckgeschwindigkeit
  • \n
\n\n

Fragen im Community-Chat stellen

\n
','Wissen','','inherit','closed','closed','','12-revision-v1','','','2026-03-05 09:06:53','2026-03-05 08:06:53','',12,'http://87.106.117.190:8090/?p=45',0,'revision','',0), +(46,0,'2026-03-05 09:06:54','2026-03-05 08:06:54','
\n

Filament-Rechner

\n

Berechne Materialkosten schnell und nachvollziehbar.

\n\n

Formel

\n

(Gewicht in g / 1000) × Preis pro kg = Materialkosten

\n\n

Beispiele

\n
    \n
  • 120 g bei 24 €/kg → 2,88 €
  • \n
  • 350 g bei 19 €/kg → 6,65 €
  • \n
\n\n

Optional mit Stromkosten

\n

Ergänze deinen kWh-Preis und die Druckzeit für eine realistischere Gesamtkalkulation.

\n\n

Kalkulation in der Community besprechen

\n
','Filament-Rechner','','inherit','closed','closed','','13-revision-v1','','','2026-03-05 09:06:54','2026-03-05 08:06:54','',13,'http://87.106.117.190:8090/?p=46',0,'revision','',0), +(47,0,'2026-03-05 09:06:54','2026-03-05 08:06:54','
\n

Datenschutz

\n

Diese Seite wird aktuell finalisiert. Bitte ergänze hier deine rechtlich erforderlichen Datenschutzangaben (DSGVO-konform) inkl. Hosting, Kontakt und ggf. Analyse-/Plugin-Hinweisen.

\n
','Datenschutz','','inherit','closed','closed','','15-revision-v1','','','2026-03-05 09:06:54','2026-03-05 08:06:54','',15,'http://87.106.117.190:8090/?p=47',0,'revision','',0), +(48,0,'2026-03-05 09:06:55','2026-03-05 08:06:55','
\n

Impressum

\n

Diese Seite wird aktuell finalisiert. Bitte ergänze hier die vollständigen Pflichtangaben gemäß § 5 TMG.

\n
','Impressum','','inherit','closed','closed','','14-revision-v1','','','2026-03-05 09:06:55','2026-03-05 08:06:55','',14,'http://87.106.117.190:8090/?p=48',0,'revision','',0), +(49,0,'2026-03-05 09:10:13','2026-03-05 08:10:13','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:10:13','2026-03-05 08:10:13','',29,'http://87.106.117.190:8090/?p=49',0,'revision','',0), +(50,0,'2026-03-05 09:11:52','2026-03-05 08:11:52','\n
\n\n\n\n
Community

Community-Regeln

Damit der Austausch für alle funktioniert — kurz, klar und fair.

\n
\n
Grundregeln
\n

Wie wir miteinander umgehen

\n

Diese Regeln gelten für die WhatsApp-Community, den Showcase und alle Inhalte auf m0lzi_3D.

\n
\n
🤝

Respekt geht vor

Kein Angriff auf Personen, keine Beleidigungen. Kritik gerne — aber konstruktiv und sachlich.

\n
🔧

Hilfreiche Problemschilderung

Bei Druckproblemen immer angeben: Drucker, Material, Slicer, Einstellungen und ein Foto. Ohne diese Infos kann kaum jemand helfen.

\n
🚫

Kein Spam oder Werbung

Keine Affiliate-Links, keine Shop-Werbung ohne Kontext. Produktempfehlungen mit echtem Erfahrungsbericht sind willkommen.

\n
📎

Quellen korrekt angeben

Bei geteilten Modellen, Fotos und Designs immer den Urheber und die Quelle nennen (Printables, MakerWorld etc.).

\n
🔒

Datenschutz beachten

Keine persönlichen Daten anderer veröffentlichen — Name, Adresse, Fotos ohne Erlaubnis sind tabu.

\n
🌍

Sprache

Deutsch ist die Hauptsprache. Englisch ist auch okay, wenn jemand sich so besser ausdrücken kann.

\n
\n
\n
\n
\n
Übersicht
\n

Dos & Don’ts

\n

Eine schnelle Referenz für alle, die neu einsteigen.

\n
\n
✓  Das läuft gut
  • Druckfotos mit Einstellungen teilen
  • Konkrete Fragen mit Setup-Infos stellen
  • Andere ermutigen und Fortschritte feiern
  • Auf Guides und FAQ verweisen
  • Eigene Fails zeigen — daraus lernt man am meisten
\n
✕  Bitte nicht
  • Druckfehler kommentieren ohne Hilfe anzubieten
  • Links ohne Kontext posten
  • Dieselbe Frage mehrfach stellen
  • Off-Topic-Themen ohne 3D-Druck-Bezug
  • Screenshots von Chats anderer ohne Erlaubnis
\n
\n
\n

Bereit zum Mitmachen?

Tritt der WhatsApp-Community bei und tausch dich mit Gleichgesinnten aus.

Community beitreten
\n\n
','Community-Regeln','','publish','closed','closed','','community-regeln','','','2026-03-26 20:41:34','2026-03-25 21:22:41','',0,'http://87.106.117.190:8090/community-regeln/',0,'page','',0), +(51,0,'2026-03-05 09:11:53','2026-03-05 08:11:53','\n\n\n\n\n\n\n
\n
\n
\n FAQ_DATABASE\n

FREQUENTLY
ASKED.

\n

Antworten auf die häufigsten Fragen rund um 3D-Druck, Filament und Community.

\n
\n
\n\n
\n\n \n
\n
EINSTEIGER_FRAGEN
\n\n
\n \n
\n PLA ist der beste Einstieg — einfach zu drucken, verzeiht Fehler, keine gefährlichen Dämpfe. Empfehlungen: Bambu PLA Basic, Prusament PLA, eSUN PLA+.\n
\n
\n\n
\n \n
\n Ursachen: falscher Z-Offset, kaltes Bett, verschmutztes Bett oder zu wenig First-Layer-Breite.
\n [GUIDE: ERSTE_SCHICHT →]\n
\n
\n\n
\n \n
\n Stringing = dünne Fäden beim Travel-Move. Lösung: höhere Retraction, niedrigere Temperatur, schnellere Travel-Speed.
\n [GUIDE: STRINGING_FIX →]\n
\n
\n\n
\n \n
\n Für Einsteiger 2026: Bambu Lab A1 Mini (einfach, schnell, zuverlässig) oder Creality Ender 3 V3 KE (günstiger Einstieg).
\n [GUIDE: KAUFBERATUNG_2026 →]\n
\n
\n
\n\n \n
\n
MATERIALIEN
\n\n
\n \n
\n PLA für Deko & Prototypen. PETG für Outdoor, Schrauben-Verbindungen, wasserführende Teile. PETG ist etwas anspruchsvoller (110°C Bett, mehr Retraktion).\n
\n
\n\n
\n \n
\n PLA kann bei längerer Lagerung feucht werden. PETG, TPU, Nylon — definitiv trocknen. Anzeichen: Knistern, Blasen, raue Oberflächen.
\n [GUIDE: FILAMENT_TROCKNEN →]\n
\n
\n\n
\n \n
\n TPU benötigt einen Direct-Drive-Extruder (kein Bowden). Geschwindigkeit: max. 25-30 mm/s. Bambu Lab Drucker unterstützen TPU nativ.
\n [GUIDE: TPU_DRUCKEN →]\n
\n
\n
\n\n \n
\n
SLICER_&_SOFTWARE
\n\n
\n \n
\n Bambu Studio für Bambu-Drucker (beste Integration). PrusaSlicer für alle anderen (professionell, kostenlos). Orca Slicer für fortgeschrittene Kalibrierung.\n
\n
\n\n
\n \n
\n First Layer Höhe: 0.2mm, Geschwindigkeit: 20-25 mm/s, Breite: 120% der Nozzle. Z-Offset korrekt kalibrieren ist entscheidend.
\n [GUIDE: ERSTE_SCHICHT →]\n
\n
\n
\n\n \n
\n
COMMUNITY_&_SUPPORT
\n\n
\n \n
\n In unserem WhatsApp-Kanal — aktive Maker Community, schnelle Antworten, kein Spam.\n
\n
\n\n
\n \n
\n Ja. Alle Guides, Modelle, Tools und die Community sind komplett kostenlos und bleiben es auch.\n
\n
\n\n
\n \n
\n Ja! Tritt dem WhatsApp-Kanal bei und schreib uns. Gute Guides werden veröffentlicht und mit deinem Namen verknüpft.\n
\n
\n
\n\n
\n\n\n','FAQ','','publish','closed','closed','','faq','','','2026-03-26 20:36:11','2026-03-25 21:24:02','',0,'http://87.106.117.190:8090/faq/',0,'page','',0), +(52,0,'2026-03-05 09:11:54','2026-03-05 08:11:54','
\n

Community-Regeln

\n

Damit sich alle wohlfühlen, gilt in der WhatsApp-Community ein klarer, freundlicher Rahmen:

\n
    \n
  1. Respektvoll bleiben: keine Beleidigungen, kein toxisches Verhalten.
  2. \n
  3. On-Topic: Fokus auf 3D-Druck, Maker-Themen und sinnvolle Off-Topics.
  4. \n
  5. Hilfreich posten: bei Problemen immer Drucker, Material, Slicer und Settings dazuschreiben.
  6. \n
  7. Kein Spam: keine Werbung ohne Bezug oder Freigabe.
  8. \n
  9. Urheberrecht beachten: Modelle/Assets nur mit korrekter Quelle teilen.
  10. \n
  11. Datenschutz beachten: keine fremden persönlichen Daten posten.
  12. \n
\n

Jetzt der WhatsApp-Community beitreten

\n
','Community-Regeln','','inherit','closed','closed','','50-revision-v1','','','2026-03-05 09:11:54','2026-03-05 08:11:54','',50,'http://87.106.117.190:8090/?p=52',0,'revision','',0), +(53,0,'2026-03-05 09:11:54','2026-03-05 08:11:54','
\n

FAQ

\n

Ich bin Anfänger – wo starte ich?

\n

Mit PLA, einem Standard-Profil im Slicer und einem kleinen Kalibrierobjekt (z. B. 20mm Cube).

\n\n

Welche Infos brauche ich bei Druckproblemen?

\n

Drucker-Modell, Filament, Düse, Temperaturen, Speed, Retraction, Schichthöhe und am besten ein Foto.

\n\n

Welcher Slicer ist empfehlenswert?

\n

PrusaSlicer und OrcaSlicer sind für viele Setups eine starke Basis.

\n\n

Warum lösen sich Ecken vom Druckbett?

\n

Häufige Ursachen: zu wenig Haftung, falsche Bett-Temperatur, Zugluft oder zu schnelles Kühlen.

\n\n

Wie berechne ich Materialkosten?

\n

(Gewicht in g / 1000) × Preis pro kg – mehr im Filament-Rechner.

\n
','FAQ','','inherit','closed','closed','','51-revision-v1','','','2026-03-05 09:11:54','2026-03-05 08:11:54','',51,'http://87.106.117.190:8090/?p=53',0,'revision','',0), +(56,0,'2026-03-05 09:11:58','2026-03-05 08:11:58','
\n WhatsApp Community • 3D-Druck Hub\n

Willkommen in der 3D-Druck Community

\n

Dein zentraler Treffpunkt für 3D-Druck in deutscher Sprache: Wissen, Hilfe, Modelle, News und Austausch auf Augenhöhe.

\n

\n Jetzt WhatsApp-Community beitreten\n Zum Wissens-Hub\n

\n
\n\n
\n

🧠 Wissen

Praxis-Guides, Troubleshooting und Materialwissen für bessere Drucke.

Öffnen →

\n

📰 News

Aktuelle Entwicklungen aus der 3D-Druck-Welt, kompakt zusammengefasst.

Öffnen →

\n

🎲 Models

Nützliche Modelle und Quellenlinks für Alltag, Werkstatt und Hobby.

Öffnen →

\n

🧮 Tools

Nützliche Rechner und Hilfen, z. B. für Filamentkosten.

Öffnen →

\n
\n\n
\n

Was dich in der Community erwartet

\n
    \n
  • Hilfe bei Druckproblemen (Stringing, Warping, Layer-Probleme)
  • \n
  • Empfehlungen zu Druckern, Filamenten und Slicer-Profilen
  • \n
  • Showcase deiner Drucke + Feedback aus der Community
  • \n
  • Austausch für Einsteiger und Fortgeschrittene
  • \n
\n

Zur WhatsApp-Community

\n
\n
\n

Neu in der Community?

\n

Starte hier für den perfekten Einstieg:

\n

\n Community-Regeln\n FAQ\n

\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 09:11:58','2026-03-05 08:11:58','',8,'http://87.106.117.190:8090/?p=56',0,'revision','',0), +(57,0,'2026-03-05 09:11:59','2026-03-05 08:11:59','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:11:59','2026-03-05 08:11:59','',29,'http://87.106.117.190:8090/?p=57',0,'revision','',0), +(58,0,'2026-03-05 09:14:55','2026-03-05 08:14:55','\n\n\n\n\n\n\n\n
\n
\n
\n SHOWCASE_FEED\n

COMMUNITY_PRINTS

\n

Die schönsten Drucke aus der m0lzi_3D Community.

\n
\n
\n
\n\nSHOWCASE_FEED\n

Community Prints

\n

Die schönsten Drucke aus unserer WhatsApp-Community. Jede Woche neue Highlights — von Makern für Maker.

\n
\n
COMMUNITY

Woche 12/2026

Flexi Dragon, Gridfinity Setup, benutzerdefinierte Raspi-Gehäuse und mehr.

COMMUNITY_JOIN →
\n
HIGHLIGHT

Woche 11/2026

Multi-Color Prints mit Bambu AMS, TPU-Handschuhe, Werkzeughalter-System.

COMMUNITY_JOIN →
\n
FEATURED

Woche 10/2026

Klipper-Upgrade Dokumentationen, ASA-Outdoorhalter, Resin-Minis.

COMMUNITY_JOIN →
\n
\n

[SYS_NOTE] Teile deinen Print — komm in die WhatsApp Community

\n\n
\n\n\n\n','Showcase','','publish','closed','closed','','showcase','','','2026-03-26 20:36:11','2026-03-25 21:22:40','',0,'http://87.106.117.190:8090/showcase/',0,'page','',0), +(59,0,'2026-03-05 09:14:56','2026-03-05 08:14:56','
\n WhatsApp Community • 3D-Druck Hub\n

Die 3D-Druck Community für Einsteiger & Pros

\n

Hilfe in Minuten statt stundenlangem Rätseln. Wissen, Modelle, Ressourcen und echter Austausch in einem modernen Community-Hub.

\n

\n Jetzt beitreten\n Showcase ansehen\n

\n
\n\n
\n

⚡ Schnelle Hilfe

Poste dein Problem mit Foto + Settings und erhalte konkrete Lösungsvorschläge.

\n

🧪 Praxiswissen

Von First Layer bis Materialtuning – verständlich, direkt anwendbar.

\n

🧰 Tools & Quellen

Empfehlte Slicer, Guides und nützliche Model-Quellen an einem Ort.

\n

🤝 Community

Freundlicher Austausch, echte Erfahrungswerte, kein toxisches Blabla.

\n
\n\n
\n

So funktioniert der Einstieg

\n
    \n
  1. Community beitreten
  2. \n
  3. Kurz vorstellen (optional)
  4. \n
  5. Drucker + Material + Slicer nennen
  6. \n
  7. Fragen stellen oder Drucke im Showcase teilen
  8. \n
\n

\n Regeln lesen\n FAQ öffnen\n

\n
\n\n
\n

Für wen ist die Community?

\n

Für alle, die 3D-Druck sinnvoll nutzen wollen – vom ersten Benchy bis zu funktionalen Bauteilen, Werkstatt-Helfern und anspruchsvollen Tuning-Projekten.

\n

Zur WhatsApp Community

\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 09:14:56','2026-03-05 08:14:56','',8,'http://87.106.117.190:8090/?p=59',0,'revision','',0), +(60,0,'2026-03-05 09:14:56','2026-03-05 08:14:56','
\n Community Showcase\n

Zeig deine besten Drucke

\n

Inspiration, Feedback und Ideen aus der Community – nach Kategorien sortiert.

\n

Druck in WhatsApp teilen

\n
\n\n
\n

🛠️ Functional Prints

Halterungen, Organizer, Ersatzteile, Werkstattlösungen.

Beispiele: Kabelclips, Akkuhalter, Wandhalterungen.

\n

🏠 Haushalt

Alltagshelfer mit echtem Nutzen.

Beispiele: Küchenclips, Schubladeneinsätze, Adapter.

\n

🎨 Deko & Kreativ

Optische Projekte, Lampen, Figuren, saisonale Deko.

Beispiele: Lithophanes, Vasen, Schilder.

\n

⚙️ Tuning & Mods

Upgrades für Drucker und Zubehör.

Beispiele: Lüfterkanäle, Spulenhalter, Gehäusemods.

\n
\n\n
\n

Showcase-Template (für Posts)

\n
    \n
  • Projektname:
  • \n
  • Drucker:
  • \n
  • Material:
  • \n
  • Einstellungen: Layer / Temp / Speed
  • \n
  • Besonderheiten: Was gut lief, was schwierig war
  • \n
\n

Damit können andere dein Ergebnis leichter nachbauen.

\n
\n\n
\n

Top Quellen für Modelle

\n \n
','Showcase','','inherit','closed','closed','','58-revision-v1','','','2026-03-05 09:14:56','2026-03-05 08:14:56','',58,'http://87.106.117.190:8090/?p=60',0,'revision','',0), +(62,0,'2026-03-05 09:14:57','2026-03-05 08:14:57','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:14:57','2026-03-05 08:14:57','',29,'http://87.106.117.190:8090/?p=62',0,'revision','',0), +(63,0,'2026-03-05 09:16:56','2026-03-05 08:16:56','
\n Community Showcase\n

Zeig deine besten Drucke

\n

Inspiration, Feedback und Ideen aus der Community – nach Kategorien sortiert.

\n

Druck in WhatsApp teilen

\n
\n\n
\n

🏆 Druck des Monats

\n

Aktuell: Modularer Werkstatt-Organizer mit PETG (Community-Votum)

\n
    \n
  • Stabilität: sehr gut
  • \n
  • Nachbau-Faktor: hoch
  • \n
  • Alltagsnutzen: direkt einsetzbar
  • \n
\n

Für nächsten Monat nominieren

\n
\n\n
\n

🛠️ Functional Prints

Halterungen, Organizer, Ersatzteile, Werkstattlösungen.

Beispiele: Kabelclips, Akkuhalter, Wandhalterungen.

\n

🏠 Haushalt

Alltagshelfer mit echtem Nutzen.

Beispiele: Küchenclips, Schubladeneinsätze, Adapter.

\n

🎨 Deko & Kreativ

Optische Projekte, Lampen, Figuren, saisonale Deko.

Beispiele: Lithophanes, Vasen, Schilder.

\n

⚙️ Tuning & Mods

Upgrades für Drucker und Zubehör.

Beispiele: Lüfterkanäle, Spulenhalter, Gehäusemods.

\n
\n\n
\n

🌟 Mitglieder-Highlights

\n
\n

@MakerKlaus

Strong functional prints, saubere Toleranzen, hilfreiche Tipps für PETG.

\n

@PrintNerd

Klare Troubleshooting-Posts und gute Slicer-Profile für Einsteiger.

\n

@LayerLord

Starke Drucker-Mods und nachvollziehbare Vorher/Nachher-Ergebnisse.

\n
\n

Mitglieder feiern in der Community

\n
\n\n
\n

Showcase-Template (für Posts)

\n
    \n
  • Projektname:
  • \n
  • Drucker:
  • \n
  • Material:
  • \n
  • Einstellungen: Layer / Temp / Speed
  • \n
  • Besonderheiten: Was gut lief, was schwierig war
  • \n
\n
','Showcase','','inherit','closed','closed','','58-revision-v1','','','2026-03-05 09:16:56','2026-03-05 08:16:56','',58,'http://87.106.117.190:8090/?p=63',0,'revision','',0), +(64,0,'2026-03-05 09:16:57','2026-03-05 08:16:57','
\n WhatsApp Community • 3D-Druck Hub\n

Die 3D-Druck Community für Einsteiger & Pros

\n

Hilfe in Minuten statt stundenlangem Rätseln. Wissen, Modelle, Ressourcen und echter Austausch in einem modernen Community-Hub.

\n

\n Jetzt beitreten\n Showcase ansehen\n

\n
\n\n
\n

⚡ Schnelle Hilfe

Poste dein Problem mit Foto + Settings und erhalte konkrete Lösungsvorschläge.

\n

🧪 Praxiswissen

Von First Layer bis Materialtuning – verständlich, direkt anwendbar.

\n

🧰 Tools & Quellen

Empfehlte Slicer, Guides und nützliche Model-Quellen an einem Ort.

\n

🤝 Community

Freundlicher Austausch, echte Erfahrungswerte, kein toxisches Blabla.

\n
\n\n
\n

So funktioniert der Einstieg

\n
    \n
  1. Community beitreten
  2. \n
  3. Kurz vorstellen (optional)
  4. \n
  5. Drucker + Material + Slicer nennen
  6. \n
  7. Fragen stellen oder Drucke im Showcase teilen
  8. \n
\n

\n Regeln lesen\n FAQ öffnen\n

\n
\n\n
\n

Für wen ist die Community?

\n

Für alle, die 3D-Druck sinnvoll nutzen wollen – vom ersten Benchy bis zu funktionalen Bauteilen, Werkstatt-Helfern und anspruchsvollen Tuning-Projekten.

\n

Zur WhatsApp Community

\n
\n
\n

🏆 Community-Aktion: Druck des Monats

\n

Jeden Monat küren wir ein besonders starkes Projekt aus der Community.

\n

\n Zum Showcase\n Projekt einreichen\n

\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 09:16:57','2026-03-05 08:16:57','',8,'http://87.106.117.190:8090/?p=64',0,'revision','',0), +(65,0,'2026-03-05 09:16:57','2026-03-05 08:16:57','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:16:57','2026-03-05 08:16:57','',29,'http://87.106.117.190:8090/?p=65',0,'revision','',0), +(66,0,'2026-03-05 09:22:55','2026-03-05 08:22:55','
\n
\n

3D-Druck Hub • WhatsApp Community

\n

Mehr als nur ein Chat:
Dein 3D‑Druck Command Center

\n

Schnelle Hilfe, klare Guides, gute Modelle und echte Community-Vibes – alles an einem Ort, modern aufbereitet.

\n \n
\n\n
\n

⚡ Instant Hilfe

Problem posten, Settings dazu, Lösungsvorschläge in Minuten.

\n

🧠 Know-how

Wissen aus der Praxis statt Theorie-Wüste.

\n

🧰 Tools

Filamentkosten, Slicer-Hinweise und Workflow-Abkürzungen.

\n

🤝 Community

Freundlich, nerdy, hilfreich – hier helfen sich Leute wirklich.

\n
\n\n
\n
\n

Warum diese Community?

\n
    \n
  • Einsteigerfreundlich, ohne Gatekeeping
  • \n
  • Fokus auf echte Ergebnisse & Troubleshooting
  • \n
  • Kuratiertes Wissen statt Link-Chaos
  • \n
  • Monatliche Highlights & Druck des Monats
  • \n
\n
\n
\n

Dein Einstieg in 60 Sekunden

\n
    \n
  1. WhatsApp-Community öffnen
  2. \n
  3. Kurz hallo sagen
  4. \n
  5. Drucker + Material + Slicer nennen
  6. \n
  7. Ersten Druck/Frage posten
  8. \n
\n Jetzt starten\n
\n
\n\n
\n

Diese Woche im Fokus

\n

Druck des Monats: Modularer Werkstatt-Organizer (PETG) · Top bewertet für Stabilität & Nachbaubarkeit.

\n Zum Showcase\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 09:22:55','2026-03-05 08:22:55','',8,'http://87.106.117.190/?p=66',0,'revision','',0), +(67,0,'2026-03-05 09:22:55','2026-03-05 08:22:55','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:22:55','2026-03-05 08:22:55','',29,'http://87.106.117.190/?p=67',0,'revision','',0), +(68,0,'2026-03-05 09:32:48','2026-03-05 08:32:48','
\n

Models

\n

Hier siehst du die aktuell beliebtesten Modelle – je 5 Picks für Printables und MakerWorld – mit Bild, Kurzbeschreibung und Direktlink.

\n
\n\n
\n

🔥 Top 5 Printables (Live)

\n
\"Flexi

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1263 Likes und 11598 Downloads.

Zum Modell ↗
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 766 Likes und 3355 Downloads.

Zum Modell ↗
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1072 Likes und 2420 Downloads.

Zum Modell ↗
\n
\"LEGO

LEGO technic parts

Beliebtes Community-Modell mit 1579 Likes und 2375 Downloads.

Zum Modell ↗
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1159 Likes und 1759 Downloads.

Zum Modell ↗
\n
\n\n
\n

🚀 Top 5 MakerWorld

\n
\n\n\n\n
\n
\n\n

Hinweis: MakerWorld schützt Listings stark gegen Bot-Abfragen. Daher werden die MakerWorld-Picks derzeit kuratiert mit direkten Such-/Öffnungslinks angezeigt; Printables wird live gezogen.

','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 09:32:48','2026-03-05 08:32:48','',10,'http://87.106.117.190/?p=68',0,'revision','',0), +(69,0,'2026-03-05 09:32:49','2026-03-05 08:32:49','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:32:49','2026-03-05 08:32:49','',29,'http://87.106.117.190/?p=69',0,'revision','',0), +(70,0,'2026-03-05 09:35:44','2026-03-05 08:35:44','
\n

Models

\n

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n

Modelle in der Community teilen

\n
\n\n
\n
\n\n\n\n
\n
\n\n
\n

🔥 Top 5 Printables (Auto-Update)

\n
\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1263 Likes und 11605 Downloads.

Zum Modell ↗
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 766 Likes und 3360 Downloads.

Zum Modell ↗
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1072 Likes und 2422 Downloads.

Zum Modell ↗
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1579 Likes und 2377 Downloads.

Zum Modell ↗
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1159 Likes und 1761 Downloads.

Zum Modell ↗
\n
\n\n
\n

🚀 Top 5 MakerWorld

\n
\"Bambu
Curated Pick

Bambu AMS Riser (Top Pick)

Beliebtes Upgrade für bessere Zugänglichkeit rund um AMS/Top-Bereich.

Bei MakerWorld öffnen ↗
\n\n\n\n
\n
\n\n

Hinweis: MakerWorld ist technisch stark geschützt, deshalb sind diese Top-Picks kuratiert mit Direktlinks. Printables wird täglich automatisch aktualisiert.

\n\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 09:35:44','2026-03-05 08:35:44','',10,'http://87.106.117.190/?p=70',0,'revision','',0), +(71,0,'2026-03-05 09:35:44','2026-03-05 08:35:44','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:35:44','2026-03-05 08:35:44','',29,'http://87.106.117.190/?p=71',0,'revision','',0), +(72,0,'2026-03-05 09:37:22','2026-03-05 08:37:22','\n\n\n\n\n\n
\n
\n
\n MODEL_ARCHIVE\n

ARCHIV.

\n

Historie der wöchentlichen Top-Modelle.

\n
\n
\n\n
\n
2026-W13
Printables: Stargate with a working Iris
Printables: Folding Wall Hook
Printables: Full Desk Organizer & Monitor Stand + Stackable Drawers
\n
2026-W12
Printables: Wall Hook - Invisible Mounting
Printables: Folding Wall Hook
Printables: Dragon Egg Twist Fidget
\n
2026-W11
Printables: Wall Hook - Invisible Mounting
Printables: Folding Wall Hook
Printables: Parcel Opener – Safe, Durable & Blade-Free
\n
2026-W10
Printables: Flexi Baby Snake - Print in place - No Supports
Printables: Parcel Opener – Safe, Durable & Blade-Free
Printables: Filament Storage 2026
\n\n
\n\n\n','Model-Archiv','','publish','closed','closed','','model-archiv','','','2026-03-28 19:10:39','2026-03-28 18:10:39','',0,'http://87.106.117.190/model-archiv/',0,'page','',0), +(73,0,'2026-03-05 09:37:22','2026-03-05 08:37:22','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

🔥 Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1263 Likes und 11605 Downloads.

Zum Modell ↗
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 766 Likes und 3360 Downloads.

Zum Modell ↗
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1072 Likes und 2422 Downloads.

Zum Modell ↗
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1579 Likes und 2377 Downloads.

Zum Modell ↗
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1160 Likes und 1761 Downloads.

Zum Modell ↗
\n

🚀 Top 5 MakerWorld

\"Bambu
Curated Pick

Bambu AMS Riser (Top Pick)

Beliebtes Upgrade für bessere Zugänglichkeit rund um AMS/Top-Bereich.

Bei MakerWorld öffnen ↗
\n\n\n\n
\n\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 09:37:22','2026-03-05 08:37:22','',10,'http://87.106.117.190/?p=73',0,'revision','',0), +(74,0,'2026-03-05 09:37:23','2026-03-05 08:37:23','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-03-05 08-37

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-05 09:37:23','2026-03-05 08:37:23','',72,'http://87.106.117.190/?p=74',0,'revision','',0), +(75,0,'2026-03-05 09:37:23','2026-03-05 08:37:23','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:37:23','2026-03-05 08:37:23','',29,'http://87.106.117.190/?p=75',0,'revision','',0), +(77,0,'2026-03-05 09:38:44','2026-03-05 08:38:44','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

🔥 Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1263 Likes und 11605 Downloads.

Zum Modell ↗
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 766 Likes und 3360 Downloads.

Zum Modell ↗
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1072 Likes und 2422 Downloads.

Zum Modell ↗
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1579 Likes und 2377 Downloads.

Zum Modell ↗
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1161 Likes und 1761 Downloads.

Zum Modell ↗
\n

🚀 Top 5 MakerWorld

\"Bambu
Curated Pick

Bambu AMS Riser (Top Pick)

Beliebtes Upgrade für bessere Zugänglichkeit rund um AMS/Top-Bereich.

Bei MakerWorld öffnen ↗
\n\n\n\n
\n\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 09:38:44','2026-03-05 08:38:44','',10,'http://87.106.117.190/?p=77',0,'revision','',0), +(78,0,'2026-03-05 09:38:45','2026-03-05 08:38:45','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-03-05 08-38

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-37

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-05 09:38:45','2026-03-05 08:38:45','',72,'http://87.106.117.190/?p=78',0,'revision','',0), +(79,0,'2026-03-05 09:38:45','2026-03-05 08:38:45','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:38:45','2026-03-05 08:38:45','',29,'http://87.106.117.190/?p=79',0,'revision','',0), +(80,0,'2026-03-05 09:39:51','2026-03-05 08:39:51','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

🔥 Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1263 Likes und 11605 Downloads.

Zum Modell ↗
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 766 Likes und 3360 Downloads.

Zum Modell ↗
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1072 Likes und 2422 Downloads.

Zum Modell ↗
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1579 Likes und 2377 Downloads.

Zum Modell ↗
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1161 Likes und 1761 Downloads.

Zum Modell ↗
\n

🚀 Top 5 MakerWorld

MakerWorld
Curated Pick

Bambu AMS Riser (Top Pick)

Beliebtes Upgrade für bessere Zugänglichkeit rund um AMS/Top-Bereich.

Bei MakerWorld öffnen ↗
\n
MakerWorld

Gridfinity Organizer Set

Modulares Ordnungs-System für Werkstatt, Schreibtisch und Druckzubehör.

Bei MakerWorld öffnen ↗
\n\n\n
\n\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 09:39:51','2026-03-05 08:39:51','',10,'http://87.106.117.190/?p=80',0,'revision','',0), +(81,0,'2026-03-05 09:39:52','2026-03-05 08:39:52','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-03-05 08-39

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-38

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-37

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-05 09:39:52','2026-03-05 08:39:52','',72,'http://87.106.117.190/?p=81',0,'revision','',0), +(82,0,'2026-03-05 09:39:52','2026-03-05 08:39:52','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:39:52','2026-03-05 08:39:52','',29,'http://87.106.117.190/?p=82',0,'revision','',0), +(83,0,'2026-03-05 09:51:14','2026-03-05 08:51:14','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

🔥 Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1263 Likes und 11619 Downloads.

Zum Modell ↗
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 767 Likes und 3367 Downloads.

Zum Modell ↗
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1073 Likes und 2422 Downloads.

Zum Modell ↗
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1579 Likes und 2377 Downloads.

Zum Modell ↗
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1161 Likes und 1761 Downloads.

Zum Modell ↗
\n

🚀 Top 5 MakerWorld

MakerWorld
Curated Pick

Bambu AMS Riser (Top Pick)

Beliebtes Upgrade für bessere Zugänglichkeit rund um AMS/Top-Bereich.

Bei MakerWorld öffnen ↗
\n
MakerWorld

Gridfinity Organizer Set

Modulares Ordnungs-System für Werkstatt, Schreibtisch und Druckzubehör.

Bei MakerWorld öffnen ↗
\n\n\n
\n\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 09:51:14','2026-03-05 08:51:14','',10,'http://87.106.117.190/?p=83',0,'revision','',0), +(84,0,'2026-03-05 09:51:14','2026-03-05 08:51:14','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-03-05 08-51

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-39

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-38

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-37

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-05 09:51:14','2026-03-05 08:51:14','',72,'http://87.106.117.190/?p=84',0,'revision','',0), +(85,0,'2026-03-05 09:51:15','2026-03-05 08:51:15','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:51:15','2026-03-05 08:51:15','',29,'http://87.106.117.190/?p=85',0,'revision','',0), +(86,0,'2026-03-05 09:53:24','2026-03-05 08:53:24','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1263 Likes und 11619 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 767 Likes und 3367 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1073 Likes und 2422 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1579 Likes und 2377 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1161 Likes und 1761 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Ikea
Sitemap Pick

Ikea Kallax For Doll House Scale 1 12

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Skadis

Skadis Mount For Ikea Rodret Remote

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Keychain

Keychain Darth Vader Cute Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Chicago

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 09:53:24','2026-03-05 08:53:24','',10,'http://87.106.117.190/?p=86',0,'revision','',0), +(87,0,'2026-03-05 09:53:24','2026-03-05 08:53:24','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-03-05 08-53

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-51

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-39

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-38

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-37

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-05 09:53:24','2026-03-05 08:53:24','',72,'http://87.106.117.190/?p=87',0,'revision','',0), +(88,0,'2026-03-05 09:53:25','2026-03-05 08:53:25','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 09:53:25','2026-03-05 08:53:25','',29,'http://87.106.117.190/?p=88',0,'revision','',0), +(89,0,'2026-03-05 13:10:05','2026-03-05 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1268 Likes und 11700 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 789 Likes und 3433 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1081 Likes und 2432 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1588 Likes und 2396 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1169 Likes und 1777 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Ikea
Sitemap Pick

Ikea Kallax For Doll House Scale 1 12

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Skadis

Skadis Mount For Ikea Rodret Remote

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Keychain

Keychain Darth Vader Cute Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Chicago

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 13:10:05','2026-03-05 12:10:05','',10,'http://87.106.117.190/?p=89',0,'revision','',0), +(90,0,'2026-03-05 13:10:05','2026-03-05 12:10:05','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-03-05 12-10

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-53

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-51

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-39

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-38

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-37

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-05 13:10:05','2026-03-05 12:10:05','',72,'http://87.106.117.190/?p=90',0,'revision','',0), +(91,0,'2026-03-05 13:10:06','2026-03-05 12:10:06','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 13:10:06','2026-03-05 12:10:06','',29,'http://87.106.117.190/?p=91',0,'revision','',0), +(92,0,'2026-03-05 13:32:39','2026-03-05 12:32:39','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1269 Likes und 11705 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 790 Likes und 3438 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1081 Likes und 2432 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1590 Likes und 2396 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1169 Likes und 1777 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Ikea
Sitemap Pick

Ikea Kallax For Doll House Scale 1 12

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Skadis

Skadis Mount For Ikea Rodret Remote

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Keychain

Keychain Darth Vader Cute Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Chicago

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Models','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 13:32:39','2026-03-05 12:32:39','',10,'http://87.106.117.190/?p=92',0,'revision','',0), +(93,0,'2026-03-05 13:32:39','2026-03-05 12:32:39','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-W10

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 12-10

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-53

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-51

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-39

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-38

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026

2026-03-05 08-37

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-05 13:32:39','2026-03-05 12:32:39','',72,'http://87.106.117.190/?p=93',0,'revision','',0), +(94,0,'2026-03-05 13:32:40','2026-03-05 12:32:40','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 13:32:40','2026-03-05 12:32:40','',29,'http://87.106.117.190/?p=94',0,'revision','',0), +(95,0,'2026-03-05 13:32:45','2026-03-05 12:32:45','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-W10

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-05 13:32:45','2026-03-05 12:32:45','',72,'http://87.106.117.190/?p=95',0,'revision','',0), +(96,0,'2026-03-05 13:32:45','2026-03-05 12:32:45','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 13:32:45','2026-03-05 12:32:45','',29,'http://87.106.117.190/?p=96',0,'revision','',0), +(97,0,'2026-03-05 13:33:05','2026-03-05 12:33:05','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 13:33:05','2026-03-05 12:33:05','',29,'http://87.106.117.190/?p=97',0,'revision','',0), +(98,0,'2026-03-05 13:34:54','2026-03-05 12:34:54','
\n
\n

3D-Druck Hub • Inspiration & Wissen

\n

Neue Ideen für dein nächstes 3D-Druck-Projekt

\n

Diese Seite ist zum Stöbern gedacht: beliebte Modelle, frische Trends, praktische Guides und aktuelle Infos aus der 3D-Druck-Welt.

\n \n
\n\n
\n

🎯 Projektideen

Finde inspirierende Modelle für Alltag, Werkstatt und Hobby.

\n

📰 Aktuelle News

Bleib auf dem Laufenden zu Druckern, Materialien und Software.

\n

🧠 Wissen & Tipps

Von Anfängerfragen bis Troubleshooting – klar und praxisnah.

\n

🧰 Ressourcen

Slicer, Guides, Tools und hilfreiche Quellen an einem Ort.

\n
\n\n
\n
\n

Beliebte Themen zum Stöbern

\n
    \n
  • Functional Prints für Haushalt & Werkstatt
  • \n
  • Kreative Deko- und Hobbyprojekte
  • \n
  • Drucker-Upgrades und sinnvolle Mods
  • \n
  • Materialwahl: PLA, PETG, ASA, TPU
  • \n
\n
\n
\n

Was du hier findest

\n
    \n
  1. Aktuelle Top-Modelle mit Bildern und Links
  2. \n
  3. Neueste Infos rund um 3D-Druck
  4. \n
  5. Wissenshub mit praktischen Lösungen
  6. \n
  7. Wöchentliches Archiv mit den spannendsten Picks
  8. \n
\n Zum Wochen-Archiv\n
\n
\n\n
\n

Optional: Community-Austausch

\n

Wenn du möchtest, kannst du dich zusätzlich in der WhatsApp-Community austauschen und Feedback zu Projekten holen.

\n Zur Community\n
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 13:34:54','2026-03-05 12:34:54','',8,'http://87.106.117.190/?p=98',0,'revision','',0), +(99,0,'2026-03-05 13:34:55','2026-03-05 12:34:55','
\n

Neueste Infos zum Thema 3D-Druck

\n

Hier findest du aktuelle Entwicklungen, Trends und praktische Einordnungen – kompakt und verständlich aufbereitet.

\n\n

Aktuelle Schwerpunkte

\n
    \n
  • Neue Druckermodelle und Hardware-Updates
  • \n
  • Slicer-Neuerungen (z. B. Profile, Support, Speed-Optimierung)
  • \n
  • Materialtrends und Einsatzempfehlungen
  • \n
  • Community-Highlights und spannende Projekte
  • \n
\n\n

Diese Seite wird laufend ergänzt, damit du schnell relevante Neuigkeiten für deine nächsten Projekte findest.

\n
','News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 13:34:55','2026-03-05 12:34:55','',9,'http://87.106.117.190/?p=99',0,'revision','',0), +(100,0,'2026-03-05 13:34:55','2026-03-05 12:34:55','
\n

Ressourcen

\n

Hier sammelst du verlässliche Quellen für Inspiration und Umsetzung.

\n
    \n
  • Slicer-Tools & Profile
  • \n
  • Material-Übersichten
  • \n
  • Guide-Artikel und Tuning-Hilfen
  • \n
  • Nützliche Modell-Plattformen
  • \n
\n
','Ressourcen','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 13:34:55','2026-03-05 12:34:55','',11,'http://87.106.117.190/?p=100',0,'revision','',0), +(101,0,'2026-03-05 13:34:56','2026-03-05 12:34:56','
\n

Wissens-Hub

\n

Praktisches Wissen für bessere Drucke – schnell auffindbar und ohne unnötigen Ballast.

\n

Typische Themen

\n
    \n
  • Stringing, Warping, Layer-Probleme
  • \n
  • Materialwahl je Projekt
  • \n
  • Druckqualität gezielt verbessern
  • \n
  • Fehler erkennen und beheben
  • \n
\n
','Wissen','','inherit','closed','closed','','12-revision-v1','','','2026-03-05 13:34:56','2026-03-05 12:34:56','',12,'http://87.106.117.190/?p=101',0,'revision','',0), +(102,0,'2026-03-05 14:00:43','2026-03-05 13:00:43','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1269 Likes und 11705 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 790 Likes und 3438 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1081 Likes und 2432 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1590 Likes und 2396 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1169 Likes und 1777 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Ikea
Sitemap Pick

Ikea Kallax For Doll House Scale 1 12

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Skadis

Skadis Mount For Ikea Rodret Remote

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Keychain

Keychain Darth Vader Cute Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Chicago

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 14:00:43','2026-03-05 13:00:43','',10,'http://87.106.117.190/?p=102',0,'revision','',0), +(103,0,'2026-03-05 14:00:43','2026-03-05 13:00:43','
\n

Neueste Infos zum Thema 3D-Druck

\n

Hier findest du aktuelle Entwicklungen, Trends und praktische Einordnungen – kompakt und verständlich aufbereitet.

\n\n

Aktuelle Schwerpunkte

\n
    \n
  • Neue Druckermodelle und Hardware-Updates
  • \n
  • Slicer-Neuerungen (z. B. Profile, Support, Speed-Optimierung)
  • \n
  • Materialtrends und Einsatzempfehlungen
  • \n
  • Community-Highlights und spannende Projekte
  • \n
\n\n

Diese Seite wird laufend ergänzt, damit du schnell relevante Neuigkeiten für deine nächsten Projekte findest.

\n
','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 14:00:43','2026-03-05 13:00:43','',9,'http://87.106.117.190/?p=103',0,'revision','',0), +(104,0,'2026-03-05 14:00:44','2026-03-05 13:00:44','
\n

Wissens-Hub

\n

Praktisches Wissen für bessere Drucke – schnell auffindbar und ohne unnötigen Ballast.

\n

Typische Themen

\n
    \n
  • Stringing, Warping, Layer-Probleme
  • \n
  • Materialwahl je Projekt
  • \n
  • Druckqualität gezielt verbessern
  • \n
  • Fehler erkennen und beheben
  • \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-05 14:00:44','2026-03-05 13:00:44','',12,'http://87.106.117.190/?p=104',0,'revision','',0), +(105,0,'2026-03-05 14:00:44','2026-03-05 13:00:44','
\n

Ressourcen

\n

Hier sammelst du verlässliche Quellen für Inspiration und Umsetzung.

\n
    \n
  • Slicer-Tools & Profile
  • \n
  • Material-Übersichten
  • \n
  • Guide-Artikel und Tuning-Hilfen
  • \n
  • Nützliche Modell-Plattformen
  • \n
\n
','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 14:00:44','2026-03-05 13:00:44','',11,'http://87.106.117.190/?p=105',0,'revision','',0), +(106,0,'2026-03-05 15:34:01','2026-03-05 14:34:01','
\n

3D-Druck Hub • Inspiration & Wissen

\n

Neue Ideen für dein nächstes 3D‑Druck‑Projekt

\n

Stöbere durch beliebte Modelle, entdecke aktuelle Trends und finde hilfreiche Guides für bessere Druckergebnisse.

\n \n
\n

Beliebte Modelle zum Start

\n
\"Flexi

Flexi Baby Snake - Print in place - No Supports

Ansehen
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Ansehen
\n\n
\n

Was dich hier erwartet

  • Projektideen für Werkstatt, Haushalt und Hobby
  • Neueste Infos rund um Drucker, Filamente und Slicer
  • Guides zu PLA-Einstellungen, Fehleranalyse und Qualität

Druck der Woche

Wöchentliches Highlight aus der Community als Inspiration.

Zur WhatsApp-Community

Dort erwartet dich schnelle Hilfe bei Druckfehlern und Austausch zu Projekten.
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 15:34:01','2026-03-05 14:34:01','',8,'http://87.106.117.190/?p=106',0,'revision','',0), +(107,0,'2026-03-05 15:34:01','2026-03-05 14:34:01','

Neueste Infos zum Thema 3D-Druck

Aktuelle 3D-Druck-News: Trends zu Druckern, Slicern, Filamenten und neuen Technologien.

','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 15:34:01','2026-03-05 14:34:01','',9,'http://87.106.117.190/?p=107',0,'revision','',0), +(108,0,'2026-03-05 15:34:02','2026-03-05 14:34:02','

Guides

Beste PLA-Einstellungen, Tipps gegen Stringing und praxisnahe Fehleranalyse für bessere Druckqualität.

','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-05 15:34:02','2026-03-05 14:34:02','',12,'http://87.106.117.190/?p=108',0,'revision','',0), +(109,0,'2026-03-05 15:34:02','2026-03-05 14:34:02','

Ressourcen & Tools

3D-Druck Vorlagen für die Werkstatt, nützliche Quellen, Tools und Slicer-Hilfen.

','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 15:34:02','2026-03-05 14:34:02','',11,'http://87.106.117.190/?p=109',0,'revision','',0), +(110,0,'2026-03-05 15:34:02','2026-03-05 14:34:02','

Filament-Rechner

Berechne Materialkosten direkt am Smartphone beim Drucker.

','Filament-Rechner','','inherit','closed','closed','','13-revision-v1','','','2026-03-05 15:34:02','2026-03-05 14:34:02','',13,'http://87.106.117.190/?p=110',0,'revision','',0), +(111,0,'2026-03-25 01:21:15','2026-03-05 14:34:03','','Wissen','','publish','closed','closed','','wissen','','','2026-03-25 01:21:15','2026-03-25 00:21:15','',0,'http://87.106.117.190/wissen/',7,'nav_menu_item','',0), +(112,0,'2026-03-05 15:34:07','2026-03-05 14:34:07','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.neo-btn-primary{background:linear-gradient(90deg,#00d2ff,#66d6ff 45%,#ff6a00)!important;color:#0b1020!important;box-shadow:0 12px 26px rgba(0,210,255,.25),0 8px 20px rgba(255,106,0,.22)!important}\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}\n.calc-grid input{width:100%;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n@media (max-width:700px){.calc-grid{grid-template-columns:1fr}.home-teaser-card img{height:150px}}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 15:34:07','2026-03-05 14:34:07','',29,'http://87.106.117.190/?p=112',0,'revision','',0), +(113,0,'2026-03-24 20:02:36','2026-03-05 14:38:16','','Entdecken','','publish','closed','closed','','entdecken','','','2026-03-24 20:02:36','2026-03-24 19:02:36','',0,'http://87.106.117.190/entdecken/',8,'nav_menu_item','',0), +(114,0,'2026-03-24 20:02:35','2026-03-05 14:38:16','','Community','','publish','closed','closed','','community','','','2026-03-24 20:02:35','2026-03-24 19:02:35','',0,'http://87.106.117.190/community/',9,'nav_menu_item','',0), +(115,0,'2026-03-05 15:38:26','2026-03-05 14:38:18','','WhatsApp','','publish','closed','closed','','whatsapp','','','2026-03-05 15:38:26','2026-03-05 14:38:26','',0,'http://87.106.117.190/whatsapp/',10,'nav_menu_item','',0), +(116,0,'2026-03-05 15:38:28','2026-03-05 14:38:28','
\n
\n
\n

3D-Druck Hub • Inspiration

\n

Neue Ideen für dein nächstes 3D-Druck-Projekt

\n

Entdecke aktuelle Top-Modelle, neue Trends und praktische Guides zum Stöbern und Nachbauen.

\n \n
\n
\n
Top-Modell #1
\n
Top-Modell #2
\n
Top-Modell #3
\n
\n
\n
\n

3D-Druck Hub • Inspiration & Wissen

\n

Neue Ideen für dein nächstes 3D‑Druck‑Projekt

\n

Stöbere durch beliebte Modelle, entdecke aktuelle Trends und finde hilfreiche Guides für bessere Druckergebnisse.

\n \n
\n

Beliebte Modelle zum Start

\n
\"Flexi

Flexi Baby Snake - Print in place - No Supports

Ansehen
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Ansehen
\n\n
\n

Was dich hier erwartet

  • Projektideen für Werkstatt, Haushalt und Hobby
  • Neueste Infos rund um Drucker, Filamente und Slicer
  • Guides zu PLA-Einstellungen, Fehleranalyse und Qualität

Druck der Woche

Wöchentliches Highlight aus der Community als Inspiration.

Zur WhatsApp-Community

Dort erwartet dich schnelle Hilfe bei Druckfehlern und Austausch zu Projekten.
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 15:38:28','2026-03-05 14:38:28','',8,'http://87.106.117.190/?p=116',0,'revision','',0), +(117,0,'2026-03-05 15:38:28','2026-03-05 14:38:28','
\n

Filament-Rechner

\n

Mobil optimiert: schnell am Drucker nutzbar.

\n
\n \n \n \n
\n

\n \n \n \n

\n
Noch keine Berechnung.
\n
\n','Filament-Rechner','','inherit','closed','closed','','13-revision-v1','','','2026-03-05 15:38:28','2026-03-05 14:38:28','',13,'http://87.106.117.190/?p=117',0,'revision','',0), +(118,0,'2026-03-05 15:38:29','2026-03-05 14:38:29','.ast-footer-copyright{font-size:.95rem;letter-spacing:.1px}\n.site-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(10,14,24,.55)!important}\n.ast-footer-copyright a{font-weight:600;text-decoration:none}\n.ast-footer-copyright a:hover{opacity:.95}\n\n.hub-card,.hub-section,.hub-hero{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}\n.hub-card:hover,.hub-section:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.25);border-color:rgba(111,223,255,.35)}\n.hub-btn{position:relative;overflow:hidden}\n.hub-btn:after{content:\"\";position:absolute;left:-120%;top:0;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s ease}\n.hub-btn:hover:after{left:120%}\n@media (max-width:768px){.hub-hero{padding:24px}.hub-title{font-size:1.9rem}}\n\n.hub-hero .hub-btn.primary{box-shadow:0 10px 24px rgba(0,210,255,.25),0 6px 18px rgba(255,106,0,.22)}\n.hub-badge{backdrop-filter:blur(4px)}\n.hub-grid{align-items:stretch}\n.hub-card p{margin-bottom:8px}\n.hub-card em{color:#9fb1c9;font-style:normal}\nol li{margin-bottom:6px}\n\n.featured-print{border:1px solid rgba(111,223,255,.35)!important;box-shadow:0 12px 30px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,106,0,.2)}\n.featured-print h2{display:flex;align-items:center;gap:.4rem}\n\n:root{--bg:#090d17;--surface:#111827;--surface2:#182235;--text:#e9edf5;--muted:#a7b3c7;--cyan:#00d2ff;--orange:#ff6a00;--violet:#7c66ff}\nbody{background:radial-gradient(1200px 600px at 10% -10%,#1b2644 0%,#090d17 55%) fixed!important;color:var(--text)!important}\n.neo-hero{position:relative;overflow:hidden;padding:48px 30px;border-radius:24px;background:linear-gradient(145deg,#10182a,#18233a 55%,#221c3d);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.35);margin:6px 0 20px}\n.neo-glow{position:absolute;inset:-30% auto auto -10%;width:420px;height:420px;background:radial-gradient(circle,rgba(0,210,255,.26),transparent 62%);pointer-events:none}\n.neo-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:.82rem;color:#dce7f8;margin:0 0 12px}\n.neo-hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.06;margin:0 0 12px;color:#fff!important}\n.neo-hero h1 span{background:linear-gradient(90deg,var(--cyan),#66d6ff 35%,var(--violet) 70%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}\n.neo-sub{max-width:820px;color:#d2dceb;margin-bottom:18px}\n.neo-actions{display:flex;flex-wrap:wrap;gap:10px}\n.neo-btn{display:inline-block;padding:11px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s transform,.2s box-shadow}\n.neo-btn:hover{transform:translateY(-2px)}\n.neo-btn-primary{color:#0b1020!important;background:linear-gradient(90deg,var(--cyan),#68ceff 45%,var(--orange));box-shadow:0 10px 24px rgba(0,210,255,.2),0 7px 18px rgba(255,106,0,.2)}\n.neo-btn-secondary{color:#dce8f8!important;background:#1f2c44;border:1px solid rgba(255,255,255,.16)}\n.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0}\n.neo-card,.neo-panel,.neo-highlight{background:linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.24)}\n.neo-card h3{margin-top:0}\n.neo-card p,.neo-panel li,.neo-highlight p{color:#c9d4e6}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}\n.neo-panel h2,.neo-highlight h2{margin-top:0;color:#f3f6fc!important}\n.neo-highlight{margin-top:14px;border-color:rgba(111,223,255,.34)}\n@media (max-width:860px){.neo-split{grid-template-columns:1fr}.neo-hero{padding:30px 20px}}\n\n\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-body{padding:12px}\n.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}\n.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}\n.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800;letter-spacing:.5px}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.neo-btn-primary{background:linear-gradient(90deg,#00d2ff,#66d6ff 45%,#ff6a00)!important;color:#0b1020!important;box-shadow:0 12px 26px rgba(0,210,255,.25),0 8px 20px rgba(255,106,0,.22)!important}\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}\n.calc-grid input{width:100%;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n@media (max-width:700px){.calc-grid{grid-template-columns:1fr}.home-teaser-card img{height:150px}}\n\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content{position:relative;z-index:1}.hero-kicker{font-size:.85rem;opacity:.9}.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.cta-main,.cta-alt{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer}\n.cta-main{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover{transform:translateY(-1px);filter:brightness(1.05)}\n.cta-alt{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover{background:#273754}\n.hero-carousel{position:relative;z-index:1;display:grid;gap:8px}.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{min-height:46px;font-size:16px}\n@media(max-width:820px){.hero-pro{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 15:38:29','2026-03-05 14:38:29','',29,'http://87.106.117.190/?p=118',0,'revision','',0), +(119,0,'2026-03-05 15:41:48','2026-03-05 14:41:48',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 15:41:48','2026-03-05 14:41:48','',29,'http://87.106.117.190/?p=119',0,'revision','',0), +(120,0,'2026-03-05 15:44:34','2026-03-05 14:44:34','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1274 Likes und 11813 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 799 Likes und 3495 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1086 Likes und 2436 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1600 Likes und 2409 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1176 Likes und 1787 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Ikea
Sitemap Pick

Ikea Kallax For Doll House Scale 1 12

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Skadis

Skadis Mount For Ikea Rodret Remote

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Keychain

Keychain Darth Vader Cute Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Chicago

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 15:44:34','2026-03-05 14:44:34','',10,'http://87.106.117.190/?p=120',0,'revision','',0), +(121,0,'2026-03-05 15:44:35','2026-03-05 14:44:35',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 15:44:35','2026-03-05 14:44:35','',29,'http://87.106.117.190/?p=121',0,'revision','',0), +(122,0,'2026-03-05 15:47:09','2026-03-05 14:47:09','
\n

Guides

\n

Hier findest du echte Praxisinhalte statt nur Kategorien: konkrete Startwerte, schnelle Diagnosen und bewährte Workflows.

\n\n

1) Beste PLA-Einstellungen (Startwerte)

\n
    \n
  • Nozzle: 200–215°C
  • \n
  • Bett: 55–60°C
  • \n
  • Layerhöhe: 0,20 mm (fein: 0,12 / schnell: 0,28)
  • \n
  • Geschwindigkeit: 45–70 mm/s
  • \n
  • Bauteillüfter: 100% ab Layer 3
  • \n
\n\n

2) Quick-Fix: Stringing in 5 Minuten

\n
    \n
  1. Temperatur in 5°C-Schritten senken.
  2. \n
  3. Retraction leicht erhöhen (z. B. +0,2 mm).
  4. \n
  5. Travel-Speed anheben.
  6. \n
  7. Filament trocknen (PLA/PETG zieht Feuchtigkeit).
  8. \n
\n\n

3) Warping vermeiden

\n
    \n
  • Bett reinigen (Isopropanol), First-Layer etwas breiter/langsamer.
  • \n
  • Brim aktivieren (5–8 Linien) bei großen Teilen.
  • \n
  • Zugluft vermeiden, ggf. Einhausung nutzen (ASA/ABS).
  • \n
\n\n

4) Materialwahl nach Zweck

\n
    \n
  • PLA: einfach, präzise, ideal für Prototypen/Modelle.
  • \n
  • PETG: robuster, alltagstauglich, etwas stringing-anfälliger.
  • \n
  • ASA/ABS: hitzefester, benötigt stabilere Umgebungsbedingungen.
  • \n
  • TPU: flexibel, besser langsam drucken.
  • \n
\n\n

5) Qualitäts-Checkliste vor jedem Druck

\n
    \n
  • Düse sauber, Filament trocken, Bett gelevelt.
  • \n
  • Richtige Nozzle/Bett-Temperatur.
  • \n
  • Infill und Wandstärken zum Einsatzzweck passend.
  • \n
  • Support nur dort, wo nötig (leichter entfernen).
  • \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-05 15:47:09','2026-03-05 14:47:09','',12,'http://87.106.117.190/?p=122',0,'revision','',0), +(123,0,'2026-03-05 15:47:09','2026-03-05 14:47:09','
\n

Ressourcen & Tools

\n

Eine kuratierte Sammlung, die im Alltag wirklich hilft.

\n\n

Slicer (empfohlen)

\n
    \n
  • OrcaSlicer – starke Profile, gute Tuning-Optionen
  • \n
  • PrusaSlicer – stabil, sehr gute Druckqualität
  • \n
  • Cura – große Community, viele Profile
  • \n
\n\n

Tuning-Tools

\n
    \n
  • Temperature Tower (optimale Drucktemperatur finden)
  • \n
  • Retraction Tower (Stringing reduzieren)
  • \n
  • Flow-/Extrusionstest (Maßhaltigkeit verbessern)
  • \n
\n\n

Nützliche Quellen

\n\n\n

Werkstatt-Vorlagen (Ideen)

\n
    \n
  • Akkuhalter / Werkzeughalter
  • \n
  • Kabelmanagement & Clips
  • \n
  • Schubladen-Organizer (Gridfinity)
  • \n
\n
','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 15:47:09','2026-03-05 14:47:09','',11,'http://87.106.117.190/?p=123',0,'revision','',0), +(124,0,'2026-03-05 15:47:10','2026-03-05 14:47:10','
\n

News

\n

Hier erscheinen regelmäßig kurze, relevante Updates aus der 3D-Druck-Welt.

\n\n

Aktuelle Trend-Themen

\n
    \n
  • High-Speed-Profile mit Fokus auf Qualität statt nur Tempo
  • \n
  • Neue Materialblends (PETG-CF, TPU-Varianten)
  • \n
  • Verbesserte Support-Strategien in modernen Slicern
  • \n
\n\n

Worauf du bei News achten solltest

\n
    \n
  • Bringt es echten Mehrwert im Alltag?
  • \n
  • Ist es mit deinem Drucker/Setup kompatibel?
  • \n
  • Gibt es belastbare Erfahrungsberichte?
  • \n
\n\n

Ich ergänze diese Seite laufend mit kompakten, praxisnahen Zusammenfassungen.

\n
','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 15:47:10','2026-03-05 14:47:10','',9,'http://87.106.117.190/?p=124',0,'revision','',0), +(125,0,'2026-03-05 15:47:10','2026-03-05 14:47:10','
\n

FAQ

\n

Welches Filament für den Anfang?

\n

PLA – einfach, zuverlässig, gute Druckqualität.

\n\n

Warum haftet mein Druck nicht am Bett?

\n

Bett reinigen, First Layer langsamer drucken, Z-Offset prüfen, ggf. Bett-Temperatur leicht erhöhen.

\n\n

Welche Schichthöhe soll ich nehmen?

\n

0,20 mm als Standard. Für Details 0,12 mm, für schnellere Prototypen 0,28 mm.

\n\n

Wie vermeide ich Stringing?

\n

Temperatur senken, Retraction optimieren, Filament trocknen.

\n\n

Wie rechne ich Druckkosten?

\n

Mit dem Filament-Rechner: Gewicht + Preis/kg (+ optional Stromkosten).

\n
','FAQ','','inherit','closed','closed','','51-revision-v1','','','2026-03-05 15:47:10','2026-03-05 14:47:10','',51,'http://87.106.117.190/?p=125',0,'revision','',0), +(126,0,'2026-03-05 15:47:11','2026-03-05 14:47:11','
\n

Community-Regeln

\n
    \n
  • Respektvoller Umgang, keine Beleidigungen.
  • \n
  • Bei Problemen immer Drucker, Material, Slicer und Settings angeben.
  • \n
  • Keine Werbung/Spam ohne Bezug.
  • \n
  • Quellen bei Modellen/Assets sauber nennen.
  • \n
  • Datenschutz beachten (keine fremden persönlichen Daten posten).
  • \n
\n

Ziel: schneller, hilfreicher Austausch für alle Erfahrungslevel.

\n
','Community-Regeln','','inherit','closed','closed','','50-revision-v1','','','2026-03-05 15:47:11','2026-03-05 14:47:11','',50,'http://87.106.117.190/?p=126',0,'revision','',0), +(127,0,'2026-03-05 15:47:11','2026-03-05 14:47:11','
\n

Showcase

\n

Hier sammelst du echte Community-Inspirationen mit Nachbau-Potenzial.

\n\n

So postest du ein gutes Showcase

\n
    \n
  • Projektname + 1–3 Fotos
  • \n
  • Drucker + Material
  • \n
  • Layerhöhe, Temperatur, Geschwindigkeit
  • \n
  • Was hat gut funktioniert? Was würdest du ändern?
  • \n
\n\n

Druck der Woche

\n

Jede Woche ein Highlight-Projekt mit Fokus auf Nutzen, Qualität und Nachbaubarkeit.

\n
','Showcase','','inherit','closed','closed','','58-revision-v1','','','2026-03-05 15:47:11','2026-03-05 14:47:11','',58,'http://87.106.117.190/?p=127',0,'revision','',0), +(128,0,'2026-03-05 15:52:26','2026-03-05 14:52:26','\\n
\\n

PLA perfekt einstellen

\\n

So findest du saubere Oberfl\\u00e4chen und stabile Layer mit PLA.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: PLA perfekt einstellen (2026-03-05)','','trash','closed','closed','','guide-1-pla-perfekt-einstellen-2026-03-05','','','2026-03-05 15:52:26','2026-03-05 14:52:26','',0,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-05/',0,'post','',0), +(129,0,'2026-03-05 15:52:29','2026-03-05 14:52:29','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 05.03.2026 14:52

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 15:52:29','2026-03-05 14:52:29','',9,'http://87.106.117.190/?p=129',0,'revision','',0), +(130,0,'2026-03-05 15:52:30','2026-03-05 14:52:30','\\n
\\n

Ressourcen & Tools

\\n

Alle wichtigen Slicer-Downloads

\\n\\n

10 beliebte deutschsprachige/DE-relevante YouTube-Kan\\u00e4le (kuratierte Liste)

\\n\\n

Hinweis: Die Liste wird redaktionell gepflegt und regelm\\u00e4\\u00dfig angepasst.

\\n
\\n','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 15:52:30','2026-03-05 14:52:30','',11,'http://87.106.117.190/?p=130',0,'revision','',0), +(131,0,'2026-03-05 15:55:57','2026-03-05 14:55:57','

Heute neu

Frische Inhalte aus der Guide-Serie:

Alle Guides anzeigen

\n
\n
\n
\n

3D-Druck Hub • Inspiration

\n

Neue Ideen für dein nächstes 3D-Druck-Projekt

\n

Entdecke aktuelle Top-Modelle, neue Trends und praktische Guides zum Stöbern und Nachbauen.

\n \n
\n
\n
Top-Modell #1
\n
Top-Modell #2
\n
Top-Modell #3
\n
\n
\n
\n

3D-Druck Hub • Inspiration & Wissen

\n

Neue Ideen für dein nächstes 3D‑Druck‑Projekt

\n

Stöbere durch beliebte Modelle, entdecke aktuelle Trends und finde hilfreiche Guides für bessere Druckergebnisse.

\n \n
\n

Beliebte Modelle zum Start

\n
\"Flexi

Flexi Baby Snake - Print in place - No Supports

Ansehen
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Ansehen
\n\n
\n

Was dich hier erwartet

  • Projektideen für Werkstatt, Haushalt und Hobby
  • Neueste Infos rund um Drucker, Filamente und Slicer
  • Guides zu PLA-Einstellungen, Fehleranalyse und Qualität

Druck der Woche

Wöchentliches Highlight aus der Community als Inspiration.

Zur WhatsApp-Community

Dort erwartet dich schnelle Hilfe bei Druckfehlern und Austausch zu Projekten.
','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-05 15:55:57','2026-03-05 14:55:57','',8,'http://87.106.117.190/?p=131',0,'revision','',0), +(132,0,'2026-03-05 15:55:58','2026-03-05 14:55:58',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 15:55:58','2026-03-05 14:55:58','',29,'http://87.106.117.190/?p=132',0,'revision','',0), +(133,0,'2026-03-05 16:01:37','2026-03-05 15:01:37','\\n
\\n

Stringing reduzieren

\\n

Retraction, Temperatur und Travel-Strategien im Praxischeck.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Stringing reduzieren (2026-03-05)','','trash','closed','closed','','guide-2-stringing-reduzieren-2026-03-05','','','2026-03-05 16:01:37','2026-03-05 15:01:37','',0,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-05/',0,'post','',0), +(134,0,'2026-03-05 16:01:39','2026-03-05 15:01:39','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 05.03.2026 15:01

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 16:01:39','2026-03-05 15:01:39','',9,'http://87.106.117.190/?p=134',0,'revision','',0), +(135,0,'2026-03-05 16:01:40','2026-03-05 15:01:40','\\n
\\n

Ressourcen & Tools

\\n

Alle wichtigen Slicer-Downloads

\\n\\n

Top 10 YouTube-Kan\\u00e4le zum Thema 3D-Druck nach Follower-Gr\\u00f6\\u00dfe (ca.-Werte)

\\n\\n

Hinweis: Die Liste wird redaktionell gepflegt und regelm\\u00e4\\u00dfig angepasst.

\\n
\\n','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-05 16:01:40','2026-03-05 15:01:40','',11,'http://87.106.117.190/?p=135',0,'revision','',0), +(136,0,'2026-03-05 18:15:04','2026-03-05 17:15:04','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 05.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-05 18:15:04','2026-03-05 17:15:04','',9,'http://87.106.117.190/?p=136',0,'revision','',0), +(137,0,'2026-03-05 19:10:05','2026-03-05 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1294 Likes und 12027 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 809 Likes und 3607 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1093 Likes und 2448 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1609 Likes und 2431 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1183 Likes und 1810 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Ikea
Sitemap Pick

Ikea Kallax For Doll House Scale 1 12

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Skadis

Skadis Mount For Ikea Rodret Remote

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Keychain

Keychain Darth Vader Cute Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Chicago

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-05 19:10:05','2026-03-05 18:10:05','',10,'http://87.106.117.190/?p=137',0,'revision','',0), +(138,0,'2026-03-05 19:10:06','2026-03-05 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-05 19:10:06','2026-03-05 18:10:06','',29,'http://87.106.117.190/?p=138',0,'revision','',0), +(139,0,'2026-03-06 07:10:05','2026-03-06 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1349 Likes und 12582 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 856 Likes und 3874 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1121 Likes und 2486 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1633 Likes und 2468 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1214 Likes und 1855 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Chicago
Sitemap Pick

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Trojan

Trojan Head Ornament

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rituals

Rituals Car Perfume Holder

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-06 07:10:05','2026-03-06 06:10:05','',10,'http://87.106.117.190/?p=139',0,'revision','',0), +(140,0,'2026-03-06 07:10:06','2026-03-06 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-06 07:10:06','2026-03-06 06:10:06','',29,'http://87.106.117.190/?p=140',0,'revision','',0), +(141,0,'2026-03-06 10:15:03','2026-03-06 09:15:03','\\n
\\n

Warping vermeiden

\\n

First Layer, Bett-Haftung, Brim und Geh\\u00e4use sinnvoll einsetzen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Warping vermeiden (2026-03-06)','','trash','closed','closed','','guide-1-warping-vermeiden-2026-03-06','','','2026-03-06 10:15:03','2026-03-06 09:15:03','',0,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-06/',0,'post','',0), +(142,0,'2026-03-06 10:15:05','2026-03-06 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 06.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-06 10:15:05','2026-03-06 09:15:05','',9,'http://87.106.117.190/?p=142',0,'revision','',0), +(143,0,'2026-03-06 13:10:05','2026-03-06 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1364 Likes und 12774 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 875 Likes und 4023 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1126 Likes und 2496 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1645 Likes und 2500 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1228 Likes und 1883 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Chicago
Sitemap Pick

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Trojan

Trojan Head Ornament

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rituals

Rituals Car Perfume Holder

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-06 13:10:05','2026-03-06 12:10:05','',10,'http://87.106.117.190/?p=143',0,'revision','',0), +(144,0,'2026-03-06 13:10:06','2026-03-06 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-06 13:10:06','2026-03-06 12:10:06','',29,'http://87.106.117.190/?p=144',0,'revision','',0), +(145,0,'2026-03-06 18:15:03','2026-03-06 17:15:03','\\n
\\n

PETG ohne Frust

\\n

Startwerte, typische Fehler und schnelle Korrekturen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: PETG ohne Frust (2026-03-06)','','trash','closed','closed','','guide-2-petg-ohne-frust-2026-03-06','','','2026-03-06 18:15:03','2026-03-06 17:15:03','',0,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-06/',0,'post','',0), +(146,0,'2026-03-06 18:15:06','2026-03-06 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 06.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-06 18:15:06','2026-03-06 17:15:06','',9,'http://87.106.117.190/?p=146',0,'revision','',0), +(147,0,'2026-03-06 19:10:06','2026-03-06 18:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Flexi
Most Downloaded

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1390 Likes und 13126 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 906 Likes und 4239 Downloads.

Zum Modell
\n
\"Filament

Filament Storage 2026

Beliebtes Community-Modell mit 1136 Likes und 2530 Downloads.

Zum Modell
\n
\"LEGO
Community Favorite

LEGO technic parts

Beliebtes Community-Modell mit 1664 Likes und 2534 Downloads.

Zum Modell
\n
\"DESTORNILLADOR

DESTORNILLADOR TRIQUETE REVERSIBLE (SIN TORNILLOS)

Beliebtes Community-Modell mit 1246 Likes und 1923 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Chicago
Sitemap Pick

Chicago Blackhawks Logo Table Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Badge

Badge For P1S

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Trojan

Trojan Head Ornament

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rituals

Rituals Car Perfume Holder

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-06 19:10:06','2026-03-06 18:10:06','',10,'http://87.106.117.190/?p=147',0,'revision','',0), +(148,0,'2026-03-06 19:10:07','2026-03-06 18:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-06 19:10:07','2026-03-06 18:10:07','',29,'http://87.106.117.190/?p=148',0,'revision','',0), +(149,0,'2026-03-07 07:10:05','2026-03-07 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 975 Likes und 4518 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1442 Likes und 13738 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 348 Likes und 367 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 499 Likes und 954 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 782 Likes und 1329 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Trojan
Sitemap Pick

Trojan Head Ornament

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rituals

Rituals Car Perfume Holder

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"B40

B40 And B69 Combo Pack

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Pill

Pill Box 4 Compartments

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-07 07:10:05','2026-03-07 06:10:05','',10,'http://87.106.117.190/?p=149',0,'revision','',0), +(150,0,'2026-03-07 07:10:06','2026-03-07 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-07 07:10:06','2026-03-07 06:10:06','',29,'http://87.106.117.190/?p=150',0,'revision','',0), +(151,0,'2026-03-07 10:15:03','2026-03-07 09:15:03','\\n
\\n

TPU drucken

\\n

Flexible Filamente stabil und reproduzierbar drucken.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: TPU drucken (2026-03-07)','','trash','closed','closed','','guide-1-tpu-drucken-2026-03-07','','','2026-03-07 10:15:03','2026-03-07 09:15:03','',0,'http://87.106.117.190/guide-1-tpu-drucken-2026-03-07/',0,'post','',0), +(152,0,'2026-03-07 10:15:05','2026-03-07 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 07.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-07 10:15:05','2026-03-07 09:15:05','',9,'http://87.106.117.190/?p=152',0,'revision','',0), +(153,0,'2026-03-07 13:10:05','2026-03-07 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 993 Likes und 4639 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1457 Likes und 13918 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 374 Likes und 401 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 533 Likes und 1016 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 799 Likes und 1366 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Trojan
Sitemap Pick

Trojan Head Ornament

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rituals

Rituals Car Perfume Holder

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"B40

B40 And B69 Combo Pack

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Pill

Pill Box 4 Compartments

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-07 13:10:05','2026-03-07 12:10:05','',10,'http://87.106.117.190/?p=153',0,'revision','',0), +(154,0,'2026-03-07 13:10:06','2026-03-07 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-07 13:10:06','2026-03-07 12:10:06','',29,'http://87.106.117.190/?p=154',0,'revision','',0), +(155,0,'2026-03-07 18:15:03','2026-03-07 17:15:03','\\n
\\n

ASA/ABS Grundlagen

\\n

Wann Einhausung n\\u00f6tig ist und welche Settings helfen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: ASA/ABS Grundlagen (2026-03-07)','','trash','closed','closed','','guide-2-asa-abs-grundlagen-2026-03-07','','','2026-03-07 18:15:03','2026-03-07 17:15:03','',0,'http://87.106.117.190/guide-2-asa-abs-grundlagen-2026-03-07/',0,'post','',0), +(156,0,'2026-03-07 18:15:05','2026-03-07 17:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 07.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-07 18:15:05','2026-03-07 17:15:05','',9,'http://87.106.117.190/?p=156',0,'revision','',0), +(157,0,'2026-03-07 19:10:04','2026-03-07 18:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1026 Likes und 4868 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1483 Likes und 14302 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 412 Likes und 446 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 570 Likes und 1110 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 824 Likes und 1413 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Trojan
Sitemap Pick

Trojan Head Ornament

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rituals

Rituals Car Perfume Holder

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"B40

B40 And B69 Combo Pack

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Pill

Pill Box 4 Compartments

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-07 19:10:04','2026-03-07 18:10:04','',10,'http://87.106.117.190/?p=157',0,'revision','',0), +(158,0,'2026-03-07 19:10:05','2026-03-07 18:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-07 19:10:05','2026-03-07 18:10:05','',29,'http://87.106.117.190/?p=158',0,'revision','',0), +(159,0,'2026-03-08 07:10:04','2026-03-08 06:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1069 Likes und 5208 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1546 Likes und 14861 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 479 Likes und 520 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 653 Likes und 1236 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 874 Likes und 1487 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Bookmark
Sitemap Pick

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"B40

B40 And B69 Combo Pack

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Pill

Pill Box 4 Compartments

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dragon

Dragon Year Prosperity Word Window Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Classic

Classic Twisted Vase Design

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-08 07:10:04','2026-03-08 06:10:04','',10,'http://87.106.117.190/?p=159',0,'revision','',0), +(160,0,'2026-03-08 07:10:05','2026-03-08 06:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-08 07:10:05','2026-03-08 06:10:05','',29,'http://87.106.117.190/?p=160',0,'revision','',0), +(161,0,'2026-03-08 10:15:03','2026-03-08 09:15:03','\\n
\\n

Support richtig setzen

\\n

Bauteilorientierung, Support-Dichte und leichte Entfernungsstrategien.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Support richtig setzen (2026-03-08)','','trash','closed','closed','','guide-1-support-richtig-setzen-2026-03-08','','','2026-03-08 10:15:03','2026-03-08 09:15:03','',0,'http://87.106.117.190/guide-1-support-richtig-setzen-2026-03-08/',0,'post','',0), +(162,0,'2026-03-08 10:15:05','2026-03-08 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 08.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-08 10:15:05','2026-03-08 09:15:05','',9,'http://87.106.117.190/?p=162',0,'revision','',0), +(163,0,'2026-03-08 13:10:04','2026-03-08 12:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1089 Likes und 5332 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1564 Likes und 15084 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 515 Likes und 551 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 683 Likes und 1309 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 894 Likes und 1521 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Bookmark
Sitemap Pick

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"B40

B40 And B69 Combo Pack

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Pill

Pill Box 4 Compartments

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dragon

Dragon Year Prosperity Word Window Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Classic

Classic Twisted Vase Design

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-08 13:10:04','2026-03-08 12:10:04','',10,'http://87.106.117.190/?p=163',0,'revision','',0), +(164,0,'2026-03-08 13:10:05','2026-03-08 12:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-08 13:10:05','2026-03-08 12:10:05','',29,'http://87.106.117.190/?p=164',0,'revision','',0), +(165,0,'2026-03-08 18:15:03','2026-03-08 17:15:03','\\n
\\n

Slicer-Profil optimieren

\\n

Von Standardprofil zu sauberem Qualit\\u00e4tsprofil in wenigen Schritten.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Slicer-Profil optimieren (2026-03-08)','','trash','closed','closed','','guide-2-slicer-profil-optimieren-2026-03-08','','','2026-03-08 18:15:03','2026-03-08 17:15:03','',0,'http://87.106.117.190/guide-2-slicer-profil-optimieren-2026-03-08/',0,'post','',0), +(166,0,'2026-03-08 18:15:06','2026-03-08 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 08.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-08 18:15:06','2026-03-08 17:15:06','',9,'http://87.106.117.190/?p=166',0,'revision','',0), +(167,0,'2026-03-08 19:10:04','2026-03-08 18:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1125 Likes und 5552 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1590 Likes und 15461 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 549 Likes und 604 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 716 Likes und 1408 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 915 Likes und 1574 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Bookmark
Sitemap Pick

Bookmark Cute Little Bird

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"B40

B40 And B69 Combo Pack

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Pill

Pill Box 4 Compartments

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dragon

Dragon Year Prosperity Word Window Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Classic

Classic Twisted Vase Design

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-08 19:10:04','2026-03-08 18:10:04','',10,'http://87.106.117.190/?p=167',0,'revision','',0), +(168,0,'2026-03-08 19:10:05','2026-03-08 18:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-08 19:10:05','2026-03-08 18:10:05','',29,'http://87.106.117.190/?p=168',0,'revision','',0), +(169,0,'2026-03-09 07:10:05','2026-03-09 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 614 Likes und 685 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 785 Likes und 1552 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1174 Likes und 5819 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1628 Likes und 15973 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 963 Likes und 1646 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Low
Sitemap Pick

Low Poly Fruit Bowl

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Compartimented

Compartimented Box First Aid Kit

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Hue

Hue Play Monitor Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Barcelona

Barcelona Skyline

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-09 07:10:05','2026-03-09 06:10:05','',10,'http://87.106.117.190/?p=169',0,'revision','',0), +(170,0,'2026-03-09 07:10:06','2026-03-09 06:10:06','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-W11

  • Printables: Wall Hook - Invisible Mounting
  • Printables: Folding Wall Hook
  • Printables: Parcel Opener – Safe, Durable & Blade-Free

2026-W10

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-09 07:10:06','2026-03-09 06:10:06','',72,'http://87.106.117.190/?p=170',0,'revision','',0), +(171,0,'2026-03-09 07:10:06','2026-03-09 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-09 07:10:06','2026-03-09 06:10:06','',29,'http://87.106.117.190/?p=171',0,'revision','',0), +(172,0,'2026-03-09 10:15:03','2026-03-09 09:15:03','\\n
\\n

Ma\\u00dfhaltigkeit verbessern

\\n

Flow, horizontale Kompensation und Kalibrierw\\u00fcrfel sinnvoll nutzen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Ma\\u00dfhaltigkeit verbessern (2026-03-09)','','trash','closed','closed','','guide-1-mau00dfhaltigkeit-verbessern-2026-03-09','','','2026-03-09 10:15:03','2026-03-09 09:15:03','',0,'http://87.106.117.190/guide-1-mau00dfhaltigkeit-verbessern-2026-03-09/',0,'post','',0), +(173,0,'2026-03-09 10:15:06','2026-03-09 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 09.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-09 10:15:06','2026-03-09 09:15:06','',9,'http://87.106.117.190/?p=173',0,'revision','',0), +(174,0,'2026-03-09 13:10:05','2026-03-09 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 632 Likes und 725 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 815 Likes und 1622 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1191 Likes und 5910 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1636 Likes und 16097 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 983 Likes und 1680 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Low
Sitemap Pick

Low Poly Fruit Bowl

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Compartimented

Compartimented Box First Aid Kit

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Hue

Hue Play Monitor Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Barcelona

Barcelona Skyline

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-09 13:10:05','2026-03-09 12:10:05','',10,'http://87.106.117.190/?p=174',0,'revision','',0), +(175,0,'2026-03-09 13:10:06','2026-03-09 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-09 13:10:06','2026-03-09 12:10:06','',29,'http://87.106.117.190/?p=175',0,'revision','',0), +(176,0,'2026-03-09 18:15:03','2026-03-09 17:15:03','\\n
\\n

Druckzeit vs. Qualit\\u00e4t

\\n

Wie du Speed erh\\u00f6hst ohne Qualit\\u00e4t zu zerst\\u00f6ren.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Druckzeit vs. Qualit\\u00e4t (2026-03-09)','','trash','closed','closed','','guide-2-druckzeit-vs-qualitu00e4t-2026-03-09','','','2026-03-09 18:15:03','2026-03-09 17:15:03','',0,'http://87.106.117.190/guide-2-druckzeit-vs-qualitu00e4t-2026-03-09/',0,'post','',0), +(177,0,'2026-03-09 18:15:05','2026-03-09 17:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 09.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-09 18:15:05','2026-03-09 17:15:05','',9,'http://87.106.117.190/?p=177',0,'revision','',0), +(178,0,'2026-03-09 19:10:05','2026-03-09 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 679 Likes und 781 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 859 Likes und 1737 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1216 Likes und 6065 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1662 Likes und 16335 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1013 Likes und 1714 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Low
Sitemap Pick

Low Poly Fruit Bowl

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Compartimented

Compartimented Box First Aid Kit

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Hue

Hue Play Monitor Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Barcelona

Barcelona Skyline

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-09 19:10:05','2026-03-09 18:10:05','',10,'http://87.106.117.190/?p=178',0,'revision','',0), +(179,0,'2026-03-09 19:10:06','2026-03-09 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-09 19:10:06','2026-03-09 18:10:06','',29,'http://87.106.117.190/?p=179',0,'revision','',0), +(180,0,'2026-03-10 07:10:04','2026-03-10 06:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 747 Likes und 846 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 947 Likes und 1892 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1259 Likes und 6291 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1703 Likes und 16776 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1057 Likes und 1779 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Small
Sitemap Pick

Small Hook

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Compartimented

Compartimented Box First Aid Kit

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Hue

Hue Play Monitor Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Barcelona

Barcelona Skyline

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"P1S

P1S Door Hinge Cover May Fit X1C

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-10 07:10:04','2026-03-10 06:10:04','',10,'http://87.106.117.190/?p=180',0,'revision','',0), +(181,0,'2026-03-10 07:10:05','2026-03-10 06:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-10 07:10:05','2026-03-10 06:10:05','',29,'http://87.106.117.190/?p=181',0,'revision','',0), +(182,0,'2026-03-10 10:15:03','2026-03-10 09:15:03','\\n
\\n

PLA perfekt einstellen

\\n

So findest du saubere Oberfl\\u00e4chen und stabile Layer mit PLA.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: PLA perfekt einstellen (2026-03-10)','','trash','closed','closed','','guide-1-pla-perfekt-einstellen-2026-03-10','','','2026-03-10 10:15:03','2026-03-10 09:15:03','',0,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-10/',0,'post','',0), +(183,0,'2026-03-10 10:15:05','2026-03-10 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 10.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-10 10:15:05','2026-03-10 09:15:05','',9,'http://87.106.117.190/?p=183',0,'revision','',0), +(184,0,'2026-03-10 13:10:04','2026-03-10 12:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 766 Likes und 888 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 971 Likes und 1963 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1268 Likes und 6373 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1715 Likes und 16913 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1070 Likes und 1802 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Small
Sitemap Pick

Small Hook

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Compartimented

Compartimented Box First Aid Kit

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Hue

Hue Play Monitor Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Barcelona

Barcelona Skyline

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"P1S

P1S Door Hinge Cover May Fit X1C

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-10 13:10:04','2026-03-10 12:10:04','',10,'http://87.106.117.190/?p=184',0,'revision','',0), +(185,0,'2026-03-10 13:10:05','2026-03-10 12:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-10 13:10:05','2026-03-10 12:10:05','',29,'http://87.106.117.190/?p=185',0,'revision','',0), +(186,0,'2026-03-10 18:15:03','2026-03-10 17:15:03','\\n
\\n

Stringing reduzieren

\\n

Retraction, Temperatur und Travel-Strategien im Praxischeck.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Stringing reduzieren (2026-03-10)','','trash','closed','closed','','guide-2-stringing-reduzieren-2026-03-10','','','2026-03-10 18:15:03','2026-03-10 17:15:03','',0,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-10/',0,'post','',0), +(187,0,'2026-03-10 18:15:05','2026-03-10 17:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 10.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-10 18:15:05','2026-03-10 17:15:05','',9,'http://87.106.117.190/?p=187',0,'revision','',0), +(188,0,'2026-03-10 19:10:04','2026-03-10 18:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 804 Likes und 941 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1008 Likes und 2071 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1279 Likes und 6503 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1733 Likes und 17130 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1086 Likes und 1843 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Small
Sitemap Pick

Small Hook

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Compartimented

Compartimented Box First Aid Kit

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Hue

Hue Play Monitor Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Barcelona

Barcelona Skyline

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"P1S

P1S Door Hinge Cover May Fit X1C

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-10 19:10:04','2026-03-10 18:10:04','',10,'http://87.106.117.190/?p=188',0,'revision','',0); +INSERT INTO `wp_posts` VALUES +(189,0,'2026-03-10 19:10:05','2026-03-10 18:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-10 19:10:05','2026-03-10 18:10:05','',29,'http://87.106.117.190/?p=189',0,'revision','',0), +(190,0,'2026-03-11 07:10:06','2026-03-11 06:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 848 Likes und 998 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1070 Likes und 2203 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1318 Likes und 6677 Downloads.

Zum Modell
\n
\"Flexi
Most Downloaded Community Favorite

Flexi Baby Snake - Print in place - No Supports

Beliebtes Community-Modell mit 1762 Likes und 17524 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1120 Likes und 1901 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"P1S
Sitemap Pick

P1S Door Hinge Cover May Fit X1C

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Cake

Cake Orniments Happy New Year 2024

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-11 07:10:06','2026-03-11 06:10:06','',10,'http://87.106.117.190/?p=190',0,'revision','',0), +(191,0,'2026-03-11 07:10:07','2026-03-11 06:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-11 07:10:07','2026-03-11 06:10:07','',29,'http://87.106.117.190/?p=191',0,'revision','',0), +(192,0,'2026-03-11 10:15:03','2026-03-11 09:15:03','\\n
\\n

Warping vermeiden

\\n

First Layer, Bett-Haftung, Brim und Geh\\u00e4use sinnvoll einsetzen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Warping vermeiden (2026-03-11)','','trash','closed','closed','','guide-1-warping-vermeiden-2026-03-11','','','2026-03-11 10:15:03','2026-03-11 09:15:03','',0,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-11/',0,'post','',0), +(193,0,'2026-03-11 10:15:05','2026-03-11 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 11.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-11 10:15:05','2026-03-11 09:15:05','',9,'http://87.106.117.190/?p=193',0,'revision','',0), +(194,0,'2026-03-11 13:10:05','2026-03-11 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 862 Likes und 1032 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1090 Likes und 2274 Downloads.

Zum Modell
\n
\"Parcel
Most Downloaded Community Favorite

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1326 Likes und 6772 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1130 Likes und 1917 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 345 Likes und 745 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"P1S
Sitemap Pick

P1S Door Hinge Cover May Fit X1C

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Cake

Cake Orniments Happy New Year 2024

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-11 13:10:05','2026-03-11 12:10:05','',10,'http://87.106.117.190/?p=194',0,'revision','',0), +(195,0,'2026-03-11 13:10:06','2026-03-11 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-11 13:10:06','2026-03-11 12:10:06','',29,'http://87.106.117.190/?p=195',0,'revision','',0), +(196,0,'2026-03-11 18:15:03','2026-03-11 17:15:03','\\n
\\n

PETG ohne Frust

\\n

Startwerte, typische Fehler und schnelle Korrekturen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: PETG ohne Frust (2026-03-11)','','trash','closed','closed','','guide-2-petg-ohne-frust-2026-03-11','','','2026-03-11 18:15:03','2026-03-11 17:15:03','',0,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-11/',0,'post','',0), +(197,0,'2026-03-11 18:15:05','2026-03-11 17:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 11.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-11 18:15:05','2026-03-11 17:15:05','',9,'http://87.106.117.190/?p=197',0,'revision','',0), +(198,0,'2026-03-11 19:10:05','2026-03-11 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 892 Likes und 1083 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1136 Likes und 2381 Downloads.

Zum Modell
\n
\"Parcel
Most Downloaded Community Favorite

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1344 Likes und 6917 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1146 Likes und 1977 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 364 Likes und 776 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"P1S
Sitemap Pick

P1S Door Hinge Cover May Fit X1C

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Cake

Cake Orniments Happy New Year 2024

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-11 19:10:05','2026-03-11 18:10:05','',10,'http://87.106.117.190/?p=198',0,'revision','',0), +(199,0,'2026-03-11 19:10:06','2026-03-11 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-11 19:10:06','2026-03-11 18:10:06','',29,'http://87.106.117.190/?p=199',0,'revision','',0), +(200,0,'2026-03-12 07:10:05','2026-03-12 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 942 Likes und 1169 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1194 Likes und 2527 Downloads.

Zum Modell
\n
\"Parcel
Most Downloaded Community Favorite

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1387 Likes und 7106 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1182 Likes und 2033 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 393 Likes und 813 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Cake
Sitemap Pick

Cake Orniments Happy New Year 2024

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"2

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-12 07:10:05','2026-03-12 06:10:05','',10,'http://87.106.117.190/?p=200',0,'revision','',0), +(201,0,'2026-03-12 07:10:06','2026-03-12 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-12 07:10:06','2026-03-12 06:10:06','',29,'http://87.106.117.190/?p=201',0,'revision','',0), +(202,0,'2026-03-12 10:15:03','2026-03-12 09:15:03','\\n
\\n

TPU drucken

\\n

Flexible Filamente stabil und reproduzierbar drucken.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: TPU drucken (2026-03-12)','','trash','closed','closed','','guide-1-tpu-drucken-2026-03-12','','','2026-03-12 10:15:03','2026-03-12 09:15:03','',0,'http://87.106.117.190/guide-1-tpu-drucken-2026-03-12/',0,'post','',0), +(203,0,'2026-03-12 10:15:06','2026-03-12 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 12.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-12 10:15:06','2026-03-12 09:15:06','',9,'http://87.106.117.190/?p=203',0,'revision','',0), +(204,0,'2026-03-12 13:10:05','2026-03-12 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 966 Likes und 1203 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1216 Likes und 2601 Downloads.

Zum Modell
\n
\"Parcel
Most Downloaded Community Favorite

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1404 Likes und 7208 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1191 Likes und 2059 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 399 Likes und 823 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Cake
Sitemap Pick

Cake Orniments Happy New Year 2024

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"2

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-12 13:10:05','2026-03-12 12:10:05','',10,'http://87.106.117.190/?p=204',0,'revision','',0), +(205,0,'2026-03-12 13:10:06','2026-03-12 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-12 13:10:06','2026-03-12 12:10:06','',29,'http://87.106.117.190/?p=205',0,'revision','',0), +(206,0,'2026-03-12 18:15:03','2026-03-12 17:15:03','\\n
\\n

ASA/ABS Grundlagen

\\n

Wann Einhausung n\\u00f6tig ist und welche Settings helfen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: ASA/ABS Grundlagen (2026-03-12)','','trash','closed','closed','','guide-2-asa-abs-grundlagen-2026-03-12','','','2026-03-12 18:15:03','2026-03-12 17:15:03','',0,'http://87.106.117.190/guide-2-asa-abs-grundlagen-2026-03-12/',0,'post','',0), +(207,0,'2026-03-12 18:15:06','2026-03-12 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 12.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-12 18:15:06','2026-03-12 17:15:06','',9,'http://87.106.117.190/?p=207',0,'revision','',0), +(208,0,'2026-03-12 19:10:05','2026-03-12 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1003 Likes und 1247 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1254 Likes und 2696 Downloads.

Zum Modell
\n
\"Parcel
Most Downloaded Community Favorite

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1425 Likes und 7361 Downloads.

Zum Modell
\n
\"Silicone

Silicone Caulking Tool

Beliebtes Community-Modell mit 1214 Likes und 2106 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 407 Likes und 838 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Cake
Sitemap Pick

Cake Orniments Happy New Year 2024

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"2

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-12 19:10:05','2026-03-12 18:10:05','',10,'http://87.106.117.190/?p=208',0,'revision','',0), +(209,0,'2026-03-12 19:10:06','2026-03-12 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-12 19:10:06','2026-03-12 18:10:06','',29,'http://87.106.117.190/?p=209',0,'revision','',0), +(210,0,'2026-03-13 07:10:05','2026-03-13 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"CARBON

CARBON 13 Printable Jointed Figure - Type M - Beta files

Beliebtes Community-Modell mit 471 Likes und 476 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1033 Likes und 1318 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1300 Likes und 2829 Downloads.

Zum Modell
\n
\"CARBON

CARBON 13 Printable Jointed Figure - Type F - Beta files

Beliebtes Community-Modell mit 319 Likes und 305 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 425 Likes und 859 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Long
Sitemap Pick

Long Hook

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"2

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dog

Dog Sign Funny Decor Wall Art

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-13 07:10:05','2026-03-13 06:10:05','',10,'http://87.106.117.190/?p=210',0,'revision','',0), +(211,0,'2026-03-13 07:10:06','2026-03-13 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-13 07:10:06','2026-03-13 06:10:06','',29,'http://87.106.117.190/?p=211',0,'revision','',0), +(212,0,'2026-03-13 10:15:03','2026-03-13 09:15:03','\\n
\\n

Support richtig setzen

\\n

Bauteilorientierung, Support-Dichte und leichte Entfernungsstrategien.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Support richtig setzen (2026-03-13)','','trash','closed','closed','','guide-1-support-richtig-setzen-2026-03-13','','','2026-03-13 10:15:03','2026-03-13 09:15:03','',0,'http://87.106.117.190/guide-1-support-richtig-setzen-2026-03-13/',0,'post','',0), +(213,0,'2026-03-13 10:15:06','2026-03-13 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 13.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-13 10:15:06','2026-03-13 09:15:06','',9,'http://87.106.117.190/?p=213',0,'revision','',0), +(214,0,'2026-03-13 13:10:06','2026-03-13 12:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"CARBON

CARBON 13 Printable Jointed Figure - Type M - Beta files

Beliebtes Community-Modell mit 520 Likes und 656 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1051 Likes und 1347 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1317 Likes und 2894 Downloads.

Zum Modell
\n
\"CARBON

CARBON 13 Printable Jointed Figure - Type F - Beta files

Beliebtes Community-Modell mit 351 Likes und 443 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 440 Likes und 867 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Long
Sitemap Pick

Long Hook

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"2

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dog

Dog Sign Funny Decor Wall Art

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-13 13:10:06','2026-03-13 12:10:06','',10,'http://87.106.117.190/?p=214',0,'revision','',0), +(215,0,'2026-03-13 13:10:07','2026-03-13 12:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-13 13:10:07','2026-03-13 12:10:07','',29,'http://87.106.117.190/?p=215',0,'revision','',0), +(216,0,'2026-03-13 18:15:03','2026-03-13 17:15:03','\\n
\\n

Slicer-Profil optimieren

\\n

Von Standardprofil zu sauberem Qualit\\u00e4tsprofil in wenigen Schritten.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Slicer-Profil optimieren (2026-03-13)','','trash','closed','closed','','guide-2-slicer-profil-optimieren-2026-03-13','','','2026-03-13 18:15:03','2026-03-13 17:15:03','',0,'http://87.106.117.190/guide-2-slicer-profil-optimieren-2026-03-13/',0,'post','',0), +(217,0,'2026-03-13 18:15:05','2026-03-13 17:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 13.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-13 18:15:05','2026-03-13 17:15:05','',9,'http://87.106.117.190/?p=217',0,'revision','',0), +(218,0,'2026-03-13 19:10:07','2026-03-13 18:10:07','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"CARBON

CARBON 13 Printable Jointed Figure - Type M - Beta files

Beliebtes Community-Modell mit 747 Likes und 1557 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1076 Likes und 1400 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1349 Likes und 3017 Downloads.

Zum Modell
\n
\"CARBON

CARBON 13 Printable Jointed Figure - Type F - Beta files

Beliebtes Community-Modell mit 510 Likes und 1013 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 448 Likes und 877 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Long
Sitemap Pick

Long Hook

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"A1

A1 Mini Ams Mount For Monitor Stand

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"2

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dog

Dog Sign Funny Decor Wall Art

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-13 19:10:07','2026-03-13 18:10:07','',10,'http://87.106.117.190/?p=218',0,'revision','',0), +(219,0,'2026-03-13 19:10:08','2026-03-13 18:10:08',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-13 19:10:08','2026-03-13 18:10:08','',29,'http://87.106.117.190/?p=219',0,'revision','',0), +(220,0,'2026-03-14 07:10:05','2026-03-14 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"CARBON

CARBON 13 Printable Jointed Figure - Type M - Beta files

Beliebtes Community-Modell mit 983 Likes und 2703 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1112 Likes und 1458 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1401 Likes und 3140 Downloads.

Zum Modell
\n
\"CARBON

CARBON 13 Printable Jointed Figure - Type F - Beta files

Beliebtes Community-Modell mit 668 Likes und 1727 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 458 Likes und 898 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"2
Sitemap Pick

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dog

Dog Sign Funny Decor Wall Art

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Ikea

Ikea Door Hole Plugs

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Playstation

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-14 07:10:05','2026-03-14 06:10:05','',10,'http://87.106.117.190/?p=220',0,'revision','',0), +(221,0,'2026-03-14 07:10:06','2026-03-14 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-14 07:10:06','2026-03-14 06:10:06','',29,'http://87.106.117.190/?p=221',0,'revision','',0), +(222,0,'2026-03-14 10:15:03','2026-03-14 09:15:03','\\n
\\n

Ma\\u00dfhaltigkeit verbessern

\\n

Flow, horizontale Kompensation und Kalibrierw\\u00fcrfel sinnvoll nutzen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Ma\\u00dfhaltigkeit verbessern (2026-03-14)','','trash','closed','closed','','guide-1-mau00dfhaltigkeit-verbessern-2026-03-14','','','2026-03-14 10:15:03','2026-03-14 09:15:03','',0,'http://87.106.117.190/guide-1-mau00dfhaltigkeit-verbessern-2026-03-14/',0,'post','',0), +(223,0,'2026-03-14 10:15:06','2026-03-14 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 14.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-14 10:15:06','2026-03-14 09:15:06','',9,'http://87.106.117.190/?p=223',0,'revision','',0), +(224,0,'2026-03-14 13:10:06','2026-03-14 12:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"CARBON

CARBON 13 Printable Jointed Figure - Type M - Beta files

Beliebtes Community-Modell mit 1040 Likes und 2963 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1140 Likes und 1494 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1425 Likes und 3198 Downloads.

Zum Modell
\n
\"CARBON

CARBON 13 Printable Jointed Figure - Type F - Beta files

Beliebtes Community-Modell mit 709 Likes und 1906 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 465 Likes und 911 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"2
Sitemap Pick

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dog

Dog Sign Funny Decor Wall Art

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Ikea

Ikea Door Hole Plugs

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Playstation

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-14 13:10:06','2026-03-14 12:10:06','',10,'http://87.106.117.190/?p=224',0,'revision','',0), +(225,0,'2026-03-14 13:10:07','2026-03-14 12:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-14 13:10:07','2026-03-14 12:10:07','',29,'http://87.106.117.190/?p=225',0,'revision','',0), +(226,0,'2026-03-14 18:15:03','2026-03-14 17:15:03','\\n
\\n

Druckzeit vs. Qualit\\u00e4t

\\n

Wie du Speed erh\\u00f6hst ohne Qualit\\u00e4t zu zerst\\u00f6ren.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Druckzeit vs. Qualit\\u00e4t (2026-03-14)','','trash','closed','closed','','guide-2-druckzeit-vs-qualitu00e4t-2026-03-14','','','2026-03-14 18:15:03','2026-03-14 17:15:03','',0,'http://87.106.117.190/guide-2-druckzeit-vs-qualitu00e4t-2026-03-14/',0,'post','',0), +(227,0,'2026-03-14 18:15:06','2026-03-14 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 14.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-14 18:15:06','2026-03-14 17:15:06','',9,'http://87.106.117.190/?p=227',0,'revision','',0), +(228,0,'2026-03-14 19:10:05','2026-03-14 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"CARBON
Most Downloaded

CARBON 13 Printable Jointed Figure - Type M - Beta files

Beliebtes Community-Modell mit 1121 Likes und 3391 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1164 Likes und 1550 Downloads.

Zum Modell
\n
\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1457 Likes und 3312 Downloads.

Zum Modell
\n
\"CARBON

CARBON 13 Printable Jointed Figure - Type F - Beta files

Beliebtes Community-Modell mit 764 Likes und 2127 Downloads.

Zum Modell
\n
\"Parametric

Parametric Magnetic Cable Management System

Beliebtes Community-Modell mit 473 Likes und 918 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"2
Sitemap Pick

2 Mistletoe Stencils For Christmas Decoration

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dog

Dog Sign Funny Decor Wall Art

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Ikea

Ikea Door Hole Plugs

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Playstation

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-14 19:10:05','2026-03-14 18:10:05','',10,'http://87.106.117.190/?p=228',0,'revision','',0), +(229,0,'2026-03-14 19:10:06','2026-03-14 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-14 19:10:06','2026-03-14 18:10:06','',29,'http://87.106.117.190/?p=229',0,'revision','',0), +(230,0,'2026-03-15 07:10:06','2026-03-15 06:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1212 Likes und 1641 Downloads.

Zum Modell
\n
\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1511 Likes und 3432 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 917 Likes und 9982 Downloads.

Zum Modell
\n
\"CARBON

CARBON 13 Printable Jointed Figure - Type M - Beta files

Beliebtes Community-Modell mit 1251 Likes und 3974 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 812 Likes und 2348 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Middle
Sitemap Pick

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Batt

Batt Vac Storage Box

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rammstein

Rammstein Led Lamp

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-15 07:10:06','2026-03-15 06:10:06','',10,'http://87.106.117.190/?p=230',0,'revision','',0), +(231,0,'2026-03-15 07:10:07','2026-03-15 06:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-15 07:10:07','2026-03-15 06:10:07','',29,'http://87.106.117.190/?p=231',0,'revision','',0), +(232,0,'2026-03-15 10:15:04','2026-03-15 09:15:04','\\n
\\n

PLA perfekt einstellen

\\n

So findest du saubere Oberfl\\u00e4chen und stabile Layer mit PLA.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: PLA perfekt einstellen (2026-03-15)','','trash','closed','closed','','guide-1-pla-perfekt-einstellen-2026-03-15','','','2026-03-15 10:15:04','2026-03-15 09:15:04','',0,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-15/',0,'post','',0), +(233,0,'2026-03-15 10:15:06','2026-03-15 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 15.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-15 10:15:06','2026-03-15 09:15:06','',9,'http://87.106.117.190/?p=233',0,'revision','',0), +(234,0,'2026-03-15 13:10:07','2026-03-15 12:10:07','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1232 Likes und 1698 Downloads.

Zum Modell
\n
\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1543 Likes und 3512 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 939 Likes und 10202 Downloads.

Zum Modell
\n
\"CARBON

CARBON 13 Printable Jointed Figure - Type M - Beta files

Beliebtes Community-Modell mit 1283 Likes und 4130 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 824 Likes und 2406 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Middle
Sitemap Pick

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Batt

Batt Vac Storage Box

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rammstein

Rammstein Led Lamp

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-15 13:10:07','2026-03-15 12:10:07','',10,'http://87.106.117.190/?p=234',0,'revision','',0), +(235,0,'2026-03-15 13:10:08','2026-03-15 12:10:08',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-15 13:10:08','2026-03-15 12:10:08','',29,'http://87.106.117.190/?p=235',0,'revision','',0), +(236,0,'2026-03-15 18:15:03','2026-03-15 17:15:03','\\n
\\n

Stringing reduzieren

\\n

Retraction, Temperatur und Travel-Strategien im Praxischeck.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Stringing reduzieren (2026-03-15)','','trash','closed','closed','','guide-2-stringing-reduzieren-2026-03-15','','','2026-03-15 18:15:03','2026-03-15 17:15:03','',0,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-15/',0,'post','',0), +(237,0,'2026-03-15 18:15:06','2026-03-15 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 15.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-15 18:15:06','2026-03-15 17:15:06','',9,'http://87.106.117.190/?p=237',0,'revision','',0), +(238,0,'2026-03-15 19:10:05','2026-03-15 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1270 Likes und 1775 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1585 Likes und 3631 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 978 Likes und 10620 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 856 Likes und 2521 Downloads.

Zum Modell
\n
\"Parcel
Community Favorite

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1616 Likes und 8672 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Middle
Sitemap Pick

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Batt

Batt Vac Storage Box

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rammstein

Rammstein Led Lamp

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-15 19:10:05','2026-03-15 18:10:05','',10,'http://87.106.117.190/?p=238',0,'revision','',0), +(239,0,'2026-03-15 19:10:06','2026-03-15 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-15 19:10:06','2026-03-15 18:10:06','',29,'http://87.106.117.190/?p=239',0,'revision','',0), +(240,0,'2026-03-16 07:10:05','2026-03-16 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1319 Likes und 1873 Downloads.

Zum Modell
\n
\"Folding

Folding Wall Hook

Beliebtes Community-Modell mit 1648 Likes und 3772 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1026 Likes und 11304 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 890 Likes und 2670 Downloads.

Zum Modell
\n
\"Parcel
Community Favorite

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1652 Likes und 8868 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-16 07:10:05','2026-03-16 06:10:05','',10,'http://87.106.117.190/?p=240',0,'revision','',0), +(241,0,'2026-03-16 07:10:05','2026-03-16 06:10:05','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-W12

  • Printables: Wall Hook - Invisible Mounting
  • Printables: Folding Wall Hook
  • Printables: Dragon Egg Twist Fidget

2026-W11

  • Printables: Wall Hook - Invisible Mounting
  • Printables: Folding Wall Hook
  • Printables: Parcel Opener – Safe, Durable & Blade-Free

2026-W10

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-16 07:10:05','2026-03-16 06:10:05','',72,'http://87.106.117.190/?p=241',0,'revision','',0), +(242,0,'2026-03-16 07:10:06','2026-03-16 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-16 07:10:06','2026-03-16 06:10:06','',29,'http://87.106.117.190/?p=242',0,'revision','',0), +(243,0,'2026-03-16 10:15:03','2026-03-16 09:15:03','\\n
\\n

Warping vermeiden

\\n

First Layer, Bett-Haftung, Brim und Geh\\u00e4use sinnvoll einsetzen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Warping vermeiden (2026-03-16)','','trash','closed','closed','','guide-1-warping-vermeiden-2026-03-16','','','2026-03-16 10:15:03','2026-03-16 09:15:03','',0,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-16/',0,'post','',0), +(244,0,'2026-03-16 10:15:06','2026-03-16 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 16.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-16 10:15:06','2026-03-16 09:15:06','',9,'http://87.106.117.190/?p=244',0,'revision','',0), +(245,0,'2026-03-16 12:23:27','2026-03-16 11:23:27','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.g4{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.ci{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:20px;display:block}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px}.cd p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.lb{color:#58a6ff}.dt{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.acc{border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;margin-bottom:8px;background:rgba(255,255,255,.02)}.acc summary{padding:20px 24px;font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#fff}.acc summary:hover{background:rgba(255,255,255,.04)}.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:\"+\";font-size:20px;color:rgba(255,255,255,.3);flex-shrink:0}.acc[open] summary::after{content:\"-\"}.acc-b{padding:4px 24px 20px;font-size:14px;color:rgba(255,255,255,.45);line-height:1.7}.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color .3s,transform .25s}.tc:hover{border-color:rgba(88,166,255,.25);transform:translateY(-3px)}.ti{font-size:2.5rem;line-height:1}.tc h3{font-size:18px;font-weight:700;margin:0}.tc p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;flex-grow:1;margin:0}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}.cta h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.04em;margin-bottom:20px}.cta p{font-size:16px;color:rgba(255,255,255,.4);max-width:400px;margin:0 auto 40px;line-height:1.6}.cw{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:48px;max-width:600px;margin:0 auto}.cg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.cg label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.06em;text-transform:uppercase}.cg input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s;-webkit-appearance:none}.cg input:focus{border-color:#f97316}.cr{background:rgba(249,115,22,.06);border:1px solid rgba(249,115,22,.18);border-radius:12px;padding:24px;display:none}@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}.cg{grid-template-columns:1fr}.cw{padding:28px 20px}}
Neuigkeiten

News & Trends

Was die 3D-Druck-Welt bewegt — Drucker-News, Software-Releases und Community-Updates.

Aktuell

Neueste Beiträge

März 2026
Drucker

Bambu Lab A1 Combo: Multimaterial im Praxistest

Das AMS Lite System ermöglicht bis zu 4 Farben ohne teure Upgrades.

Weiterlesen →
März 2026
Software

PrusaSlicer 2.10: Alle neuen Features

Variable Schichthoehe, verbesserte Organic Supports und überarbeitetes UI.

Weiterlesen →
März 2026
Technologie

LIDAR-Kalibrierung kommt in günstige Drucker

Was bisher nur im Bambu P1S war, hält Einzug in preisgünstigere Modelle.

Weiterlesen →
Februar 2026
Material

High-Speed PLA: Lohnt sich der Aufpreis?

Bis zu 500 mm/s versprechen die neuen HS-Filamente.

Weiterlesen →
Februar 2026
Community

Printables knackt 10 Millionen Modelle

Der von Prusa betriebene Dienst wächst rasant.

Weiterlesen →
Januar 2026
Software

OrcaSlicer 2.3: Neue Kalibrierungstools

Vereinfachte Workflows für alle die neu einsteigen.

Weiterlesen →
Releases

Software-Updates

Slicer

OrcaSlicer

Schnellster Slicer für Bambu, Prusa und Ender.

GitHub →
Slicer

PrusaSlicer

Stabil, feature-reich, für alle Drucker.

GitHub →
Firmware

Klipper

Die leistungsfähigste Open-Source Firmware.

GitHub →
Slicer

Bambu Studio

Offiziell für A1, P1 und X1 Series.

GitHub →

Kein Update mehr verpassen

Tritt unserer Community bei.

WhatsApp beitreten
','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-16 12:23:27','2026-03-16 11:23:27','',9,'http://87.106.117.190/?p=245',0,'revision','',0), +(246,0,'2026-03-16 12:23:27','2026-03-16 11:23:27','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.g4{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.ci{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:20px;display:block}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px}.cd p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.lb{color:#58a6ff}.dt{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.acc{border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;margin-bottom:8px;background:rgba(255,255,255,.02)}.acc summary{padding:20px 24px;font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#fff}.acc summary:hover{background:rgba(255,255,255,.04)}.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:\"+\";font-size:20px;color:rgba(255,255,255,.3);flex-shrink:0}.acc[open] summary::after{content:\"-\"}.acc-b{padding:4px 24px 20px;font-size:14px;color:rgba(255,255,255,.45);line-height:1.7}.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color .3s,transform .25s}.tc:hover{border-color:rgba(88,166,255,.25);transform:translateY(-3px)}.ti{font-size:2.5rem;line-height:1}.tc h3{font-size:18px;font-weight:700;margin:0}.tc p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;flex-grow:1;margin:0}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}.cta h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.04em;margin-bottom:20px}.cta p{font-size:16px;color:rgba(255,255,255,.4);max-width:400px;margin:0 auto 40px;line-height:1.6}.cw{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:48px;max-width:600px;margin:0 auto}.cg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.cg label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.06em;text-transform:uppercase}.cg input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s;-webkit-appearance:none}.cg input:focus{border-color:#f97316}.cr{background:rgba(249,115,22,.06);border:1px solid rgba(249,115,22,.18);border-radius:12px;padding:24px;display:none}@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}.cg{grid-template-columns:1fr}.cw{padding:28px 20px}}
Modelle

Inspiration & Modelle

Die besten Modelle von Printables und MakerWorld — kuratiert von der Community.

Aktuell beliebt

Top Modelle

\"\"Print-in-Place · PLA

Flexi Baby Snake

Voll beweglich, keine Supports. Perfektes erstes PLA-Projekt.

Printables →
\"\"Alltagshelfer · PLA/PETG

Parcel Opener

Pakete sicher öffnen ohne Klinge. Sofort nützlich.

Printables →
\"\"Organisation · PETG

Filament Storage 2026

Filament trocken und ordentlich lagern.

Printables →
🏰
Deko · PLA

Mini Castle Ruins

Detaillierte Burgruinen als Tischdeko.

Printables →
🦖
Print-in-Place · PLA

Flexi Dino Articulated

Vollgelenkter Dino in einem Stück.

Printables →
🔧
Werkzeug · PETG

Parametric Cable Clip

Kabelmanagement in jeder Größe.

Printables →
function fm(c,b){document.querySelectorAll(\"#mg .cd\").forEach(x=>x.style.display=(c===\"all\"||x.dataset.c===c)?\"\":\"none\");document.querySelectorAll(\"#fb button\").forEach(x=>{x.style.background=\"rgba(255,255,255,.06)\";x.style.color=\"rgba(255,255,255,.5)\";x.style.border=\"1px solid rgba(255,255,255,.1)\"});b.style.background=\"#f97316\";b.style.color=\"#fff\";b.style.border=\"none\"}

Eigenes Modell teilen?

Zeig der Community was du gedruckt hast.

','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-16 12:23:27','2026-03-16 11:23:27','',10,'http://87.106.117.190/?p=246',0,'revision','',0), +(247,0,'2026-03-16 12:23:27','2026-03-16 11:23:27','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.g4{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.ci{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:20px;display:block}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px}.cd p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.lb{color:#58a6ff}.dt{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.acc{border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;margin-bottom:8px;background:rgba(255,255,255,.02)}.acc summary{padding:20px 24px;font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#fff}.acc summary:hover{background:rgba(255,255,255,.04)}.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:\"+\";font-size:20px;color:rgba(255,255,255,.3);flex-shrink:0}.acc[open] summary::after{content:\"-\"}.acc-b{padding:4px 24px 20px;font-size:14px;color:rgba(255,255,255,.45);line-height:1.7}.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color .3s,transform .25s}.tc:hover{border-color:rgba(88,166,255,.25);transform:translateY(-3px)}.ti{font-size:2.5rem;line-height:1}.tc h3{font-size:18px;font-weight:700;margin:0}.tc p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;flex-grow:1;margin:0}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}.cta h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.04em;margin-bottom:20px}.cta p{font-size:16px;color:rgba(255,255,255,.4);max-width:400px;margin:0 auto 40px;line-height:1.6}.cw{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:48px;max-width:600px;margin:0 auto}.cg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.cg label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.06em;text-transform:uppercase}.cg input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s;-webkit-appearance:none}.cg input:focus{border-color:#f97316}.cr{background:rgba(249,115,22,.06);border:1px solid rgba(249,115,22,.18);border-radius:12px;padding:24px;display:none}@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}.cg{grid-template-columns:1fr}.cw{padding:28px 20px}}
Werkzeuge

Ressourcen & Tools

Alles was du für erfolgreiche 3D-Drucke brauchst.

Slicer Software

Die wichtigsten Slicer

🦎
Empfohlen

OrcaSlicer

Schnellster Slicer für Bambu, Prusa und Ender. Kostenlos.

Download →
🦘

PrusaSlicer

Klassiker. Stabil, für alle Drucker. Kostenlos.

Download →
🌿

Bambu Studio

Offiziell von Bambu Lab für A1, P1 und X1.

Download →
⚗️

Ultimaker Cura

Meistgenutzt weltweit. Ideal für Creality.

Download →
Modell-Plattformen

Wo du Modelle findest

🖨️
Empfohlen

Printables

Prusa's Plattform mit exzellenter Qualitätskontrolle.

Zur Plattform →
🌎

MakerWorld

Bambu Labs Plattform. Sehr gute Qualität.

Zur Plattform →
📦

Thingiverse

Die älteste Plattform mit riesiger Auswahl.

Zur Plattform →
💎

Cults3D

Premium-Modelle. Mix aus kostenlos und bezahlt.

Zur Plattform →
Community & Rechner

Nützliche Helfer

Rechner

Filament-Rechner

Kosten berechnen — direkt am Drucker nutzbar.

Zum Rechner →
Community

m0lzi_3D WhatsApp

Schnelle Hilfe und wöchentliche Highlights.

Community beitreten →
Wissen

Unsere Guides

Von PLA-Grundlagen bis zu fortgeschrittenen Materialien.

Zu den Guides →
','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-16 12:23:27','2026-03-16 11:23:27','',11,'http://87.106.117.190/?p=247',0,'revision','',0), +(248,0,'2026-03-16 12:23:27','2026-03-16 11:23:27','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.g4{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.ci{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:20px;display:block}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px}.cd p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.lb{color:#58a6ff}.dt{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.acc{border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;margin-bottom:8px;background:rgba(255,255,255,.02)}.acc summary{padding:20px 24px;font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#fff}.acc summary:hover{background:rgba(255,255,255,.04)}.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:\"+\";font-size:20px;color:rgba(255,255,255,.3);flex-shrink:0}.acc[open] summary::after{content:\"-\"}.acc-b{padding:4px 24px 20px;font-size:14px;color:rgba(255,255,255,.45);line-height:1.7}.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color .3s,transform .25s}.tc:hover{border-color:rgba(88,166,255,.25);transform:translateY(-3px)}.ti{font-size:2.5rem;line-height:1}.tc h3{font-size:18px;font-weight:700;margin:0}.tc p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;flex-grow:1;margin:0}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}.cta h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.04em;margin-bottom:20px}.cta p{font-size:16px;color:rgba(255,255,255,.4);max-width:400px;margin:0 auto 40px;line-height:1.6}.cw{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:48px;max-width:600px;margin:0 auto}.cg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.cg label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.06em;text-transform:uppercase}.cg input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s;-webkit-appearance:none}.cg input:focus{border-color:#f97316}.cr{background:rgba(249,115,22,.06);border:1px solid rgba(249,115,22,.18);border-radius:12px;padding:24px;display:none}@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}.cg{grid-template-columns:1fr}.cw{padding:28px 20px}}
Wissen

Guides & Tutorials

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

Alle Guides

Wähle dein Thema

Einsteiger

PLA perfekt einstellen

Temperatur, Kühlung, Geschwindigkeit — die komplette Paramerübersicht.

Guide lesen →
Slicer

Stringing reduzieren

Retraction, Temperatur und Travel-Speed richtig einstellen.

Guide lesen →
Fehleranalyse

Warping vermeiden

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

Guide lesen →
Material

PETG ohne Frust

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

Guide lesen →
Material

TPU erfolgreich drucken

Direktantrieb vs Bowden — alles für flexibles Filament.

Guide lesen →
Material

ASA/ABS Grundlagen

Hitzebeständig und UV-stabil — ohne Warping drucken.

Guide lesen →
Slicer

Support richtig setzen

Tree, Normal, Organic — wann welche Methode passt.

Guide lesen →
Slicer

Slicer-Profil optimieren

OrcaSlicer, PrusaSlicer, Bambu Studio — das perfekte Profil.

Guide lesen →
Einsteiger

Maßhaltigkeit verbessern

Elefantenfuß, Schrumpfung, Kalibrierung erklärt.

Guide lesen →
Slicer

Druckzeit vs. Qualität

Den richtigen Kompromiss bei Schichthoehe und Infill finden.

Guide lesen →
Fehleranalyse

Layer Separation beheben

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

Guide lesen →
Einsteiger

Erstes Modell drucken

Von der STL-Datei zum fertigen Druck — der komplette Workflow.

Guide lesen →
function fg(l,b){document.querySelectorAll(\"#gg .cd\").forEach(x=>x.style.display=(l===\"all\"||x.dataset.l===l)?\"\":\"none\");document.querySelectorAll(\"#gfb button\").forEach(x=>{x.style.background=\"rgba(255,255,255,.06)\";x.style.color=\"rgba(255,255,255,.5)\";x.style.border=\"1px solid rgba(255,255,255,.1)\"});b.style.background=\"#f97316\";b.style.color=\"#fff\";b.style.border=\"none\"}

Noch Fragen?

Schau in die FAQ oder frag in der Community.

','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-16 12:23:27','2026-03-16 11:23:27','',12,'http://87.106.117.190/?p=248',0,'revision','',0), +(249,0,'2026-03-16 12:23:27','2026-03-16 11:23:27','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.g4{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.ci{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:20px;display:block}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px}.cd p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.lb{color:#58a6ff}.dt{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.acc{border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;margin-bottom:8px;background:rgba(255,255,255,.02)}.acc summary{padding:20px 24px;font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#fff}.acc summary:hover{background:rgba(255,255,255,.04)}.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:\"+\";font-size:20px;color:rgba(255,255,255,.3);flex-shrink:0}.acc[open] summary::after{content:\"-\"}.acc-b{padding:4px 24px 20px;font-size:14px;color:rgba(255,255,255,.45);line-height:1.7}.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color .3s,transform .25s}.tc:hover{border-color:rgba(88,166,255,.25);transform:translateY(-3px)}.ti{font-size:2.5rem;line-height:1}.tc h3{font-size:18px;font-weight:700;margin:0}.tc p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;flex-grow:1;margin:0}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}.cta h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.04em;margin-bottom:20px}.cta p{font-size:16px;color:rgba(255,255,255,.4);max-width:400px;margin:0 auto 40px;line-height:1.6}.cw{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:48px;max-width:600px;margin:0 auto}.cg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.cg label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.06em;text-transform:uppercase}.cg input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s;-webkit-appearance:none}.cg input:focus{border-color:#f97316}.cr{background:rgba(249,115,22,.06);border:1px solid rgba(249,115,22,.18);border-radius:12px;padding:24px;display:none}@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}.cg{grid-template-columns:1fr}.cw{padding:28px 20px}}
Hilfe

Häufige Fragen

Die am häufigsten gestellten Fragen — praxisnah beantwortet.

Grundlagen

Einsteiger-Fragen

Welches Filament empfehlt ihr für den Anfang?
PLA — einfach zu drucken, kaum Warping, haftet gut. Temp 200–215°C, Bett 55–60°C. Erst nach PLA zu PETG wechseln.
Warum haftet mein Druck nicht am Bett?
1. Bett reinigen (Isopropanol). 2. Z-Offset prüfen. 3. Betttemperatur erhöhen (PLA: 60°C). 4. First Layer langsamer (max 20–30 mm/s).
Welche Schichthoehe soll ich verwenden?
0,20 mm als Standard. Für Details 0,12 mm, für schnelle Prototypen 0,28 mm.
Was ist Stringing und wie behebe ich es?
Fäden zwischen Druckteilen. Lösung: Temperatur senken, Retraction erhöhen (Direct: 1–2mm, Bowden: 4–6mm), Travel-Speed erhöhen.
PLA oder PETG — was nehmen?
PLA für Deko und Prototypen. PETG für funktionale Teile mit Hitze- oder Feuchtigkeitsbelastung. PETG ist schwieriger — erst PLA meistern.
Hardware

Drucker-Fragen

Welchen Drucker empfehlt ihr 2026?
Bambu Lab A1 Mini (~280€) — automatisch, schnell, zuverlässig. Budget: Ender 3 V3 SE. Profi: Bambu P1S oder Prusa MK4S.
Bambu Lab oder Prusa — was ist besser?
Bambu: Schneller, automatischer, für Produktive. Prusa: Open-Source, reparierbar. Bambu wenn du drucken willst, Prusa wenn du alles verstehen willst.
Wie oft muss ich das Bett leveln?
Mit Auto-Leveling (Bambu, neuere Ender): praktisch nie. Ohne: wöchentlich oder vor jedem Druck.
Was ist Retraction?
Filament wird beim Wechsel zurückgezogen — verhindert Stringing. Direct Drive: 1–3mm, Bowden: 4–7mm.
Ecken heben sich ab — was tun?
Warping. Lösung: Betttemp erhöhen, Bett reinigen, Brim (5–10mm) hinzufügen, Enclosure gegen Zugluft.

Frage nicht dabei?

Stell sie in unserer Community — Antwort meist in Minuten.

Community fragen
','FAQ','','inherit','closed','closed','','51-revision-v1','','','2026-03-16 12:23:27','2026-03-16 11:23:27','',51,'http://87.106.117.190/?p=249',0,'revision','',0), +(250,0,'2026-03-16 12:23:27','2026-03-16 11:23:27','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.g4{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.ci{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:20px;display:block}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px}.cd p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.lb{color:#58a6ff}.dt{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.acc{border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;margin-bottom:8px;background:rgba(255,255,255,.02)}.acc summary{padding:20px 24px;font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#fff}.acc summary:hover{background:rgba(255,255,255,.04)}.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:\"+\";font-size:20px;color:rgba(255,255,255,.3);flex-shrink:0}.acc[open] summary::after{content:\"-\"}.acc-b{padding:4px 24px 20px;font-size:14px;color:rgba(255,255,255,.45);line-height:1.7}.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color .3s,transform .25s}.tc:hover{border-color:rgba(88,166,255,.25);transform:translateY(-3px)}.ti{font-size:2.5rem;line-height:1}.tc h3{font-size:18px;font-weight:700;margin:0}.tc p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;flex-grow:1;margin:0}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}.cta h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.04em;margin-bottom:20px}.cta p{font-size:16px;color:rgba(255,255,255,.4);max-width:400px;margin:0 auto 40px;line-height:1.6}.cw{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:48px;max-width:600px;margin:0 auto}.cg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.cg label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.06em;text-transform:uppercase}.cg input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s;-webkit-appearance:none}.cg input:focus{border-color:#f97316}.cr{background:rgba(249,115,22,.06);border:1px solid rgba(249,115,22,.18);border-radius:12px;padding:24px;display:none}@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}.cg{grid-template-columns:1fr}.cw{padding:28px 20px}}
Tool

Filament-Rechner

Druckkosten sekundenschnell kalkulieren — optimiert für den Einsatz direkt am Drucker.

Kalkulation

Filament Richtwerte

PLA

~15–25 €/kg

Einfachstes Material. Bambu, Prusament, eSUN.

PETG

~18–28 €/kg

Robuster und wasserfest.

TPU

~22–35 €/kg

Flexibel und langlebig.

ASA/ABS

~20–30 €/kg

UV-stabil, für Outdoor-Anwendungen.

function clc(){var w=parseFloat(document.getElementById(\"cw\").value)||0,p=parseFloat(document.getElementById(\"cp\").value)||0,h=parseFloat(document.getElementById(\"ch\").value)||0,k=parseFloat(document.getElementById(\"ck\").value)||0,r=document.getElementById(\"cr\");r.style.display=\"block\";if(!w||!p){r.innerHTML=\"Bitte Gewicht und Preis eingeben.\";return;}var fc=(w/1000)*p,ec=h&&k?(h*0.2*k):0,t=fc+ec;r.innerHTML=\"
Filamentkosten
\"+fc.toFixed(2)+\" €
\"+(ec?\"
Stromkosten
\"+ec.toFixed(2)+\" €
\":\"
\")+\"
Gesamtkosten
\"+t.toFixed(2)+\" €
\";}
','Filament-Rechner','','inherit','closed','closed','','13-revision-v1','','','2026-03-16 12:23:27','2026-03-16 11:23:27','',13,'http://87.106.117.190/?p=250',0,'revision','',0), +(251,0,'2026-03-16 13:10:05','2026-03-16 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1338 Likes und 1910 Downloads.

Zum Modell
\n
\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1666 Likes und 3849 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1040 Likes und 11446 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 900 Likes und 2722 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1657 Likes und 8938 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-16 13:10:05','2026-03-16 12:10:05','',10,'http://87.106.117.190/?p=251',0,'revision','',0), +(252,0,'2026-03-16 13:10:06','2026-03-16 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-16 13:10:06','2026-03-16 12:10:06','',29,'http://87.106.117.190/?p=252',0,'revision','',0), +(253,0,'2026-03-16 18:15:03','2026-03-16 17:15:03','\\n
\\n

PETG ohne Frust

\\n

Startwerte, typische Fehler und schnelle Korrekturen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: PETG ohne Frust (2026-03-16)','','trash','closed','closed','','guide-2-petg-ohne-frust-2026-03-16','','','2026-03-16 18:15:03','2026-03-16 17:15:03','',0,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-16/',0,'post','',0), +(254,0,'2026-03-16 18:15:06','2026-03-16 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 16.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-16 18:15:06','2026-03-16 17:15:06','',9,'http://87.106.117.190/?p=254',0,'revision','',0), +(255,0,'2026-03-16 18:15:07','2026-03-16 17:15:07','\\n
\\n

Ressourcen & Tools

\\n

Alle wichtigen Slicer-Downloads

\\n\\n

Top 10 YouTube-Kan\\u00e4le zum Thema 3D-Druck nach Follower-Gr\\u00f6\\u00dfe (ca.-Werte)

\\n\\n

Hinweis: Die Liste wird redaktionell gepflegt und regelm\\u00e4\\u00dfig angepasst.

\\n
\\n','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-16 18:15:07','2026-03-16 17:15:07','',11,'http://87.106.117.190/?p=255',0,'revision','',0), +(256,0,'2026-03-16 19:10:05','2026-03-16 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1353 Likes und 1962 Downloads.

Zum Modell
\n
\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1692 Likes und 3947 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1069 Likes und 11770 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 934 Likes und 2795 Downloads.

Zum Modell
\n
\"Parcel

Parcel Opener – Safe, Durable & Blade-Free

Beliebtes Community-Modell mit 1677 Likes und 9087 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-16 19:10:05','2026-03-16 18:10:05','',10,'http://87.106.117.190/?p=256',0,'revision','',0); +INSERT INTO `wp_posts` VALUES +(257,0,'2026-03-16 19:10:06','2026-03-16 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-16 19:10:06','2026-03-16 18:10:06','',29,'http://87.106.117.190/?p=257',0,'revision','',0), +(258,0,'2026-03-17 07:10:05','2026-03-17 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1741 Likes und 4070 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1397 Likes und 2032 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1110 Likes und 12444 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 973 Likes und 2921 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 675 Likes und 1110 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-17 07:10:05','2026-03-17 06:10:05','',10,'http://87.106.117.190/?p=258',0,'revision','',0), +(259,0,'2026-03-17 07:10:06','2026-03-17 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-17 07:10:06','2026-03-17 06:10:06','',29,'http://87.106.117.190/?p=259',0,'revision','',0), +(260,0,'2026-03-17 10:15:03','2026-03-17 09:15:03','\\n
\\n

TPU drucken

\\n

Flexible Filamente stabil und reproduzierbar drucken.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: TPU drucken (2026-03-17)','','trash','closed','closed','','guide-1-tpu-drucken-2026-03-17','','','2026-03-17 10:15:03','2026-03-17 09:15:03','',0,'http://87.106.117.190/guide-1-tpu-drucken-2026-03-17/',0,'post','',0), +(261,0,'2026-03-17 10:15:06','2026-03-17 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 17.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-17 10:15:06','2026-03-17 09:15:06','',9,'http://87.106.117.190/?p=261',0,'revision','',0), +(262,0,'2026-03-17 13:10:06','2026-03-17 12:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1757 Likes und 4140 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1400 Likes und 2062 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1125 Likes und 12610 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 982 Likes und 2978 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 694 Likes und 1144 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-17 13:10:06','2026-03-17 12:10:06','',10,'http://87.106.117.190/?p=262',0,'revision','',0), +(263,0,'2026-03-17 13:10:07','2026-03-17 12:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-17 13:10:07','2026-03-17 12:10:07','',29,'http://87.106.117.190/?p=263',0,'revision','',0), +(264,0,'2026-03-17 18:15:03','2026-03-17 17:15:03','\\n
\\n

ASA/ABS Grundlagen

\\n

Wann Einhausung n\\u00f6tig ist und welche Settings helfen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: ASA/ABS Grundlagen (2026-03-17)','','trash','closed','closed','','guide-2-asa-abs-grundlagen-2026-03-17','','','2026-03-17 18:15:03','2026-03-17 17:15:03','',0,'http://87.106.117.190/guide-2-asa-abs-grundlagen-2026-03-17/',0,'post','',0), +(265,0,'2026-03-17 18:15:05','2026-03-17 17:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 17.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-17 18:15:05','2026-03-17 17:15:05','',9,'http://87.106.117.190/?p=265',0,'revision','',0), +(266,0,'2026-03-17 19:10:05','2026-03-17 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1790 Likes und 4224 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1424 Likes und 2096 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1152 Likes und 12936 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 1007 Likes und 3052 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 729 Likes und 1191 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-17 19:10:05','2026-03-17 18:10:05','',10,'http://87.106.117.190/?p=266',0,'revision','',0), +(267,0,'2026-03-17 19:10:06','2026-03-17 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-17 19:10:06','2026-03-17 18:10:06','',29,'http://87.106.117.190/?p=267',0,'revision','',0), +(268,0,'2026-03-18 07:10:05','2026-03-18 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1833 Likes und 4354 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1462 Likes und 2154 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1189 Likes und 13484 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 1048 Likes und 3158 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 782 Likes und 1263 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-18 07:10:05','2026-03-18 06:10:05','',10,'http://87.106.117.190/?p=268',0,'revision','',0), +(269,0,'2026-03-18 07:10:06','2026-03-18 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-18 07:10:06','2026-03-18 06:10:06','',29,'http://87.106.117.190/?p=269',0,'revision','',0), +(270,0,'2026-03-18 10:15:03','2026-03-18 09:15:03','\\n
\\n

Support richtig setzen

\\n

Bauteilorientierung, Support-Dichte und leichte Entfernungsstrategien.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Support richtig setzen (2026-03-18)','','trash','closed','closed','','guide-1-support-richtig-setzen-2026-03-18','','','2026-03-18 10:15:03','2026-03-18 09:15:03','',0,'http://87.106.117.190/guide-1-support-richtig-setzen-2026-03-18/',0,'post','',0), +(271,0,'2026-03-18 10:15:05','2026-03-18 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 18.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-18 10:15:05','2026-03-18 09:15:05','',9,'http://87.106.117.190/?p=271',0,'revision','',0), +(272,0,'2026-03-18 13:10:05','2026-03-18 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1854 Likes und 4424 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1477 Likes und 2187 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1202 Likes und 13637 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 1056 Likes und 3196 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 795 Likes und 1290 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-18 13:10:05','2026-03-18 12:10:05','',10,'http://87.106.117.190/?p=272',0,'revision','',0), +(273,0,'2026-03-18 13:10:06','2026-03-18 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-18 13:10:06','2026-03-18 12:10:06','',29,'http://87.106.117.190/?p=273',0,'revision','',0), +(274,0,'2026-03-18 18:15:03','2026-03-18 17:15:03','\\n
\\n

Slicer-Profil optimieren

\\n

Von Standardprofil zu sauberem Qualit\\u00e4tsprofil in wenigen Schritten.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Slicer-Profil optimieren (2026-03-18)','','trash','closed','closed','','guide-2-slicer-profil-optimieren-2026-03-18','','','2026-03-18 18:15:03','2026-03-18 17:15:03','',0,'http://87.106.117.190/guide-2-slicer-profil-optimieren-2026-03-18/',0,'post','',0), +(275,0,'2026-03-18 18:15:05','2026-03-18 17:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 18.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-18 18:15:05','2026-03-18 17:15:05','',9,'http://87.106.117.190/?p=275',0,'revision','',0), +(276,0,'2026-03-18 19:10:05','2026-03-18 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1885 Likes und 4533 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1492 Likes und 2234 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1224 Likes und 13941 Downloads.

Zum Modell
\n
\"BUILD

BUILD TRAY

Beliebtes Community-Modell mit 1073 Likes und 3265 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 823 Likes und 1331 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-18 19:10:05','2026-03-18 18:10:05','',10,'http://87.106.117.190/?p=276',0,'revision','',0), +(277,0,'2026-03-18 19:10:06','2026-03-18 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-18 19:10:06','2026-03-18 18:10:06','',29,'http://87.106.117.190/?p=277',0,'revision','',0), +(278,0,'2026-03-19 07:10:05','2026-03-19 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1932 Likes und 4664 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1518 Likes und 2284 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 880 Likes und 1418 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1262 Likes und 14523 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 612 Likes und 1624 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-19 07:10:05','2026-03-19 06:10:05','',10,'http://87.106.117.190/?p=278',0,'revision','',0), +(279,0,'2026-03-19 07:10:06','2026-03-19 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-19 07:10:06','2026-03-19 06:10:06','',29,'http://87.106.117.190/?p=279',0,'revision','',0), +(280,0,'2026-03-19 10:15:03','2026-03-19 09:15:03','\\n
\\n

Ma\\u00dfhaltigkeit verbessern

\\n

Flow, horizontale Kompensation und Kalibrierw\\u00fcrfel sinnvoll nutzen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #1: Ma\\u00dfhaltigkeit verbessern (2026-03-19)','','trash','closed','closed','','guide-1-mau00dfhaltigkeit-verbessern-2026-03-19','','','2026-03-19 10:15:03','2026-03-19 09:15:03','',0,'http://87.106.117.190/guide-1-mau00dfhaltigkeit-verbessern-2026-03-19/',0,'post','',0), +(281,0,'2026-03-19 10:15:06','2026-03-19 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 19.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-19 10:15:06','2026-03-19 09:15:06','',9,'http://87.106.117.190/?p=281',0,'revision','',0), +(282,0,'2026-03-19 13:10:05','2026-03-19 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1960 Likes und 4739 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1536 Likes und 2306 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 909 Likes und 1455 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1273 Likes und 14668 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 626 Likes und 1668 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-19 13:10:05','2026-03-19 12:10:05','',10,'http://87.106.117.190/?p=282',0,'revision','',0), +(283,0,'2026-03-19 13:10:06','2026-03-19 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-19 13:10:06','2026-03-19 12:10:06','',29,'http://87.106.117.190/?p=283',0,'revision','',0), +(284,0,'2026-03-19 18:15:03','2026-03-19 17:15:03','\\n
\\n

Druckzeit vs. Qualit\\u00e4t

\\n

Wie du Speed erh\\u00f6hst ohne Qualit\\u00e4t zu zerst\\u00f6ren.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n','Guide #2: Druckzeit vs. Qualit\\u00e4t (2026-03-19)','','trash','closed','closed','','guide-2-druckzeit-vs-qualitu00e4t-2026-03-19','','','2026-03-19 18:15:03','2026-03-19 17:15:03','',0,'http://87.106.117.190/guide-2-druckzeit-vs-qualitu00e4t-2026-03-19/',0,'post','',0), +(285,0,'2026-03-19 18:15:06','2026-03-19 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 19.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-19 18:15:06','2026-03-19 17:15:06','',9,'http://87.106.117.190/?p=285',0,'revision','',0), +(286,0,'2026-03-19 19:10:04','2026-03-19 18:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 1992 Likes und 4836 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1556 Likes und 2343 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 945 Likes und 1503 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1291 Likes und 14991 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 649 Likes und 1734 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Playstation
Sitemap Pick

Playstation 5 Controller Trophy

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Arbre

Arbre De Vie Life Tree

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Middle

Middle Finger Keychain

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambu

Bambu Lid Replacement

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"12

12 Dewalt Garage Sign Logo

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-19 19:10:04','2026-03-19 18:10:04','',10,'http://87.106.117.190/?p=286',0,'revision','',0), +(287,0,'2026-03-19 19:10:05','2026-03-19 18:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-19 19:10:05','2026-03-19 18:10:05','',29,'http://87.106.117.190/?p=287',0,'revision','',0), +(288,0,'2026-03-20 07:10:06','2026-03-20 06:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2043 Likes und 4960 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1589 Likes und 2397 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 992 Likes und 1571 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1328 Likes und 15549 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 676 Likes und 1821 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"M5
Sitemap Pick

M5 T Nut For 3030 Profile

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"100Mm

100Mm 3 Axes Test

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rack

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-20 07:10:06','2026-03-20 06:10:06','',10,'http://87.106.117.190/?p=288',0,'revision','',0), +(289,0,'2026-03-20 07:10:07','2026-03-20 06:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-20 07:10:07','2026-03-20 06:10:07','',29,'http://87.106.117.190/?p=289',0,'revision','',0), +(290,0,'2026-03-20 10:15:03','2026-03-20 09:15:03','\n
\n\n\n\n
Einsteiger

PLA perfekt einstellen — der komplette Parameter-Guide

Saubere Oberflächen, stabile Layer, kein Stringing — mit den richtigen Werten von Anfang an.

\n

Warum ist PLA der beste Einstieg?

PLA (Polylactic Acid) ist das am leichtesten druckbare Filament. Es haftet gut, schrumpft kaum, riecht wenig und vergibt Fehler. Für 95% aller Dekorationsteile und nicht-hitzebelasteten Alltagsobjekte ist PLA die erste Wahl.

\n

Die optimalen Starteinstellungen

ParameterStartwertBereich
Düsentemperatur210°C195–225°C
Betttemperatur60°C55–65°C
Schichthöhe0,20mm0,12–0,30mm
Druckgeschwindigkeit60 mm/s30–120 mm/s
Fan-Speed100%80–100%
Retraction (DD)1,0mm0,5–2,0mm
Retraction (Bowden)5,0mm3,0–7,0mm
\n
Faustregel: Jedes Filament verhält sich anders. Starte immer mit den Herstellerangaben auf der Spule und optimiere von dort aus.
\n

Temperatur kalibrieren

Die richtige Drucktemperatur ist der wichtigste Parameter. Zu kalt = Layer Separation und schlechte Haftung. Zu heiß = Stringing, Oozing und schlechte Überhangs.

  • Zu kalte Düse: Rauhe Oberfläche, Layer trennen sich bei Biegung, Unterextrusion
  • Zu heiße Düse: Fadenziehen zwischen Teilen, hängende Overhangs, unscharfe Details
  • Richtig: Glatte Oberfläche, kein Stringing, Overhangs bis 45° ohne Probleme
\n

Druckgeschwindigkeit verstehen

Geschwindigkeit ist druckerspezifisch. Ein Bambu A1 druckt sauber bei 200mm/s, ein Ender 3 knickt bei 100mm/s ein. Wichtig: verschiedene Zonen brauchen verschiedene Speeds:

  • Outer Wall: 40–80 mm/s — sichtbare Außenfläche, langsam für Qualität
  • Inner Wall: 80–150 mm/s — unkritisch
  • Infill: 100–250 mm/s — maximaler Speed hier
  • First Layer: 20–30 mm/s — immer langsam!
  • Top/Bottom: 40–60 mm/s — sichtbar, langsam
\n

Kühlung richtig einsetzen

PLA braucht viel Kühlung für scharfe Details und gute Überhangs. Fan ab Layer 3 auf 80–100%. Ausnahme: erste 2–3 Layer ohne Fan für bessere Bett-Haftung.

\n

Typische PLA-Probleme

  • Stringing: Temperatur um 5°C senken, Retraction erhöhen
  • Layer Separation: Temperatur erhöhen, Speed reduzieren
  • Warping: Bett reinigen, Betttemp auf 65°C, Brim hinzufügen
  • Blobbing/Oozing: Pressure Advance kalibrieren, Retraction erhöhen
  • Rauhe Top-Oberfläche: Ironing aktivieren, mehr Top-Layers
\n
Nächster Schritt: Nach erfolgreichem PLA-Druck empfehlen wir den Stringing-Guide für das Feintuning.
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','PLA perfekt einstellen','','publish','closed','closed','','pla-perfekt-einstellen','','','2026-03-26 20:41:34','2026-03-25 21:22:41','',0,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-20/',0,'post','',0), +(291,0,'2026-03-20 10:15:05','2026-03-20 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 20.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-20 10:15:05','2026-03-20 09:15:05','',9,'http://87.106.117.190/?p=291',0,'revision','',0), +(292,0,'2026-03-20 13:10:05','2026-03-20 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2060 Likes und 5025 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1598 Likes und 2423 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1009 Likes und 1612 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1337 Likes und 15699 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 689 Likes und 1861 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"M5
Sitemap Pick

M5 T Nut For 3030 Profile

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"100Mm

100Mm 3 Axes Test

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rack

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-20 13:10:05','2026-03-20 12:10:05','',10,'http://87.106.117.190/?p=292',0,'revision','',0), +(293,0,'2026-03-20 13:10:06','2026-03-20 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-20 13:10:06','2026-03-20 12:10:06','',29,'http://87.106.117.190/?p=293',0,'revision','',0), +(294,0,'2026-03-20 18:15:03','2026-03-20 17:15:03','\n
\n\n\n\n
Slicer

Stringing dauerhaft eliminieren — Retraction, Temperatur, Travel

Fadenziehen zwischen Druckteilen — systematisch diagnostizieren und dauerhaft beheben.

\n

Was ist Stringing?

Stringing (Fadenziehen) entsteht wenn die Düse zwischen zwei getrennten Bereichen verfahrt und dabei Kunststoff-Fäden hinterlässt. Ursache: Schmelze tritt unkontrolliert aus der Düse aus während sie sich bewegt.

\n

Die drei Hauptursachen

UrsacheSymptomLösung
Zu hohe TemperaturDünne, viele Fäden überallTemperatur um 5–10°C senken
Retraction zu geringDicke Fäden zwischen TürmenRetraction erhöhen
Travel-Speed zu langsamFäden hängen durchTravel-Speed auf 180+ mm/s
\n

Schritt 1: Temperatur

Hohe Temperatur macht das Filament flüssiger und es läuft leichter aus der Düse. Erste Maßnahme: Temperatur in 5°C-Schritten senken bis Stringing nachlässt. Grenze: Schichthaftung darf nicht schlechter werden.

  • PLA: 195–210°C wenn Stringing auftritt
  • PETG: 230–235°C (PETG neigt stark zu Stringing)
  • TPU: 220–228°C
\n

Schritt 2: Retraction einstellen

Retraction zieht das Filament beim Travel-Move zurück damit keine Schmelze aus der Düse tropft.

Extruder-TypStartMaximum
Direct Drive (Bambu, Prusa, Ender S1)0,8mm2,5mm
Bowden kurz (<400mm)3,5mm6mm
Bowden lang (>400mm)5mm8mm
TPU / Flexibel0,5mm1,5mm
\n
Achtung: Zu viel Retraction verursacht Unter-Extrusion und Gaps. Nie blind erhöhen — immer testen.
\n

Schritt 3: Travel-Speed und Strategien

  • Travel-Speed: 180–250 mm/s — je schneller die Düse bewegt sich, desto weniger Zeit zum Faden ziehen
  • Combing aktivieren: Düse bleibt innerhalb des Druckteils während Travel-Moves (verhindert Fäden auf Außenflächen)
  • Avoid crossing perimeters: Fährt um die Außenwand herum statt drüber
  • Wipe on retract: Düse wischt sich vor dem Travel-Move ab
\n

Slicer-spezifische Einstellungen

  • OrcaSlicer: Seam → Scarf Joint aktivieren für fast unsichtbare Naht-Position
  • PrusaSlicer: Print Settings → Speed → Travel erhöhen, Retraction → Wipe aktivieren
  • Bambu Studio: Meist schon optimiert; bei Bedarf Retraction manuell anpassen
\n

Stringing-Test

Drucke den klassischen \"Stringing Test\" — zwei Türme 20mm auseinander mit 10 Travel-Moves dazwischen. Damit siehst du sofort den Effekt jeder Änderung ohne ein komplexes Teil zu verschwenden.

\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','Stringing reduzieren','','publish','closed','closed','','stringing-reduzieren','','','2026-03-26 20:41:34','2026-03-25 21:22:41','',0,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-20/',0,'post','',0), +(295,0,'2026-03-20 18:15:06','2026-03-20 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 20.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-20 18:15:06','2026-03-20 17:15:06','',9,'http://87.106.117.190/?p=295',0,'revision','',0), +(296,0,'2026-03-20 19:10:04','2026-03-20 18:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2089 Likes und 5117 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1618 Likes und 2461 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1036 Likes und 1657 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1364 Likes und 16012 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 715 Likes und 1932 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"M5
Sitemap Pick

M5 T Nut For 3030 Profile

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"100Mm

100Mm 3 Axes Test

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rack

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-20 19:10:04','2026-03-20 18:10:04','',10,'http://87.106.117.190/?p=296',0,'revision','',0), +(297,0,'2026-03-20 19:10:05','2026-03-20 18:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-20 19:10:05','2026-03-20 18:10:05','',29,'http://87.106.117.190/?p=297',0,'revision','',0), +(298,0,'2026-03-21 07:10:05','2026-03-21 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2135 Likes und 5254 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1089 Likes und 1751 Downloads.

Zum Modell
\n
\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 212 Likes und 451 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1654 Likes und 2508 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1411 Likes und 16619 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"100Mm
Sitemap Pick

100Mm 3 Axes Test

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rack

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-21 07:10:05','2026-03-21 06:10:05','',10,'http://87.106.117.190/?p=298',0,'revision','',0); +INSERT INTO `wp_posts` VALUES +(299,0,'2026-03-21 07:10:06','2026-03-21 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-21 07:10:06','2026-03-21 06:10:06','',29,'http://87.106.117.190/?p=299',0,'revision','',0), +(300,0,'2026-03-21 10:15:03','2026-03-21 09:15:03','\n
\n\n\n\n
Fehleranalyse

Warping dauerhaft vermeiden

Warum sich Ecken abheben und wie du es ein für alle Mal löst.

\n

Ursache

Warping entsteht durch thermische Spannung: Das Filament kühlt ungleichmäßig ab. Die untere Schicht kühlt schneller als die obere, Ecken heben sich ab.

Warping-Risiko nach Material

MaterialRisikoHauptmaßnahme
PLAGeringBett reinigen
PETGMittel80°C Bett + Brim
ABSSehr hochEnclosure + Brim + 110°C
ASAHochEnclosure + Brim + 105°C

Schritt 1: Bett reinigen

  1. Druckplatte unter warmem Wasser mit Spülmittel waschen
  2. Mit Isopropanol (90%+) nachwischen
  3. Nie mehr mit bloßen Fingern auf die Druckfläche
  4. Alle 20–30 Drucke tiefenreinigen

Schritt 2: Betttemperatur

  • PLA: 60°C Standard, 65°C bei Problemen
  • PETG: 80–85°C
  • ABS: 100–110°C
  • ASA: 100–105°C

Schritt 3: Brim

  • PLA kleine Teile: 3–5mm
  • PETG, große Teile: 5–8mm
  • ABS/ASA: 8–15mm (je größer das Teil, desto mehr)

Schritt 4: Kühlung reduzieren

Zu viel Kühlung verstärkt Warping. ABS/ASA: Fan 0%. PETG: max. 40% Fan.

Schritt 5: Enclosure für ABS/ASA

Ohne Enclosure ist Warping bei ABS/ASA nahezu unvermeidbar. DIY aus Ikea Lack-Tisch oder Karton reicht für den Anfang.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','Warping vermeiden','','publish','closed','closed','','warping-vermeiden','','','2026-03-26 20:41:34','2026-03-25 21:22:41','',0,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-21/',0,'post','',0), +(301,0,'2026-03-21 10:15:06','2026-03-21 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 21.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-21 10:15:06','2026-03-21 09:15:06','',9,'http://87.106.117.190/?p=301',0,'revision','',0), +(302,0,'2026-03-21 13:10:05','2026-03-21 12:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2169 Likes und 5345 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1118 Likes und 1794 Downloads.

Zum Modell
\n
\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 232 Likes und 471 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1672 Likes und 2533 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1423 Likes und 16818 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"100Mm
Sitemap Pick

100Mm 3 Axes Test

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rack

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-21 13:10:05','2026-03-21 12:10:05','',10,'http://87.106.117.190/?p=302',0,'revision','',0), +(303,0,'2026-03-21 13:10:06','2026-03-21 12:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-21 13:10:06','2026-03-21 12:10:06','',29,'http://87.106.117.190/?p=303',0,'revision','',0), +(304,0,'2026-03-21 18:15:03','2026-03-21 17:15:03','\n
\n\n\n\n
Material

PETG ohne Frust — das komplette Setup

Zäh, wasserfest, hitzestabil — einfacher als sein Ruf wenn richtig eingestellt.

\n

Wann PETG statt PLA?

EigenschaftPLAPETG
Wärmeformbeständigkeit~55–60°C~75–85°C
SchlagzähigkeitSprödeSehr zäh
FeuchtigkeitsresistenzGeringGut
StringingGeringHoch

Optimale Einstellungen

  • Düse: 230–245°C (Start: 240°C)
  • Bett: 70–85°C
  • Fan: 30–50%
  • Speed: 40–80 mm/s
  • Retraction DD: 0,5–1,5mm
  • Erste Schicht: max. 30 mm/s, etwas höherer Z-Offset als PLA

Stringing bekämpfen

  1. Temperatur auf 235°C senken
  2. Retraction auf bis zu 2mm erhöhen
  3. Travel-Speed auf 180–250 mm/s erhöhen
  4. \"Wipe on Retract\" aktivieren
  5. \"Avoid crossing perimeters\" aktivieren

Bett-Haftung

PETG haftet sehr gut an PEI — manchmal zu gut. Erst vollständig abkühlen lassen (unter 30°C), dann biegen zum Ablösen. Nie Gewalt anwenden, Druckplatte kann sich beschädigen.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','PETG ohne Frust drucken','','publish','closed','closed','','petg-ohne-frust','','','2026-03-26 20:41:34','2026-03-25 21:22:42','',0,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-21/',0,'post','',0), +(305,0,'2026-03-21 18:15:05','2026-03-21 17:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 21.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-21 18:15:05','2026-03-21 17:15:05','',9,'http://87.106.117.190/?p=305',0,'revision','',0), +(306,0,'2026-03-21 19:10:05','2026-03-21 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2204 Likes und 5448 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1160 Likes und 1856 Downloads.

Zum Modell
\n
\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 251 Likes und 509 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1692 Likes und 2577 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1443 Likes und 17187 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"100Mm
Sitemap Pick

100Mm 3 Axes Test

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Rack

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-21 19:10:05','2026-03-21 18:10:05','',10,'http://87.106.117.190/?p=306',0,'revision','',0), +(307,0,'2026-03-21 19:10:06','2026-03-21 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-21 19:10:06','2026-03-21 18:10:06','',29,'http://87.106.117.190/?p=307',0,'revision','',0), +(308,0,'2026-03-22 07:10:05','2026-03-22 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2262 Likes und 5594 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1218 Likes und 1938 Downloads.

Zum Modell
\n
\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 287 Likes und 569 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1723 Likes und 2629 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1487 Likes und 17776 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Rack
Sitemap Pick

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Snap

Snap On Split Wall Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-22 07:10:05','2026-03-22 06:10:05','',10,'http://87.106.117.190/?p=308',0,'revision','',0), +(309,0,'2026-03-22 07:10:06','2026-03-22 06:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-22 07:10:06','2026-03-22 06:10:06','',29,'http://87.106.117.190/?p=309',0,'revision','',0), +(310,0,'2026-03-22 10:15:03','2026-03-22 09:15:03','\n
\n\n\n\n
Material

TPU erfolgreich drucken — flexibles Filament meistern

Direct Drive vs. Bowden, Retraction, Geschwindigkeit — alles was du wissen musst.

\n

Wann TPU?

TPU ist gummiartig, sehr zäh und resistent gegen Öle. Perfekt für Dichtungen, Schutzhüllen, Dämpfer, Griffe und alles was Flexibilität braucht.

Shore-Härtegrade

Shore AFlexibilitätDruckbarkeit
85A–87ASehr weichSchwierig
90A–92AWeichMittel
95AMittel — Empfehlung für EinsteigerGut
98A+Eher hartSehr gut

Direct Drive ist Pflicht

Weiches TPU (unter 95A) knickt im Bowden-Schlauch. Direct Drive ist notwendig. Bambu alle Modelle, Prusa MK4, Ender 3 S1/Neo.

Druckeinstellungen

  • Düse: 220–240°C
  • Bett: 30–60°C
  • Speed: 20–35 mm/s (Schlüssel ist Langsamkeit)
  • Retraction DD: 0,5–1,5mm (wenig!)
  • Fan: 30–60%

Häufige Probleme

  • Stringing: Retraction erhöhen, Temperatur um 5°C senken
  • Knickt im Extruder: Speed reduzieren, Direct Drive verwenden
  • Haftet nicht: Bett wärmer, erste Schicht auf 15 mm/s

Lagerung

TPU zieht Feuchtigkeit an. Nasses TPU = Bläschen und schlechte Qualität. Trocknen: 55°C, 6–8h. Danach luftdicht mit Silica-Gel lagern.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','TPU drucken','','publish','closed','closed','','tpu-drucken','','','2026-03-26 20:41:34','2026-03-25 21:22:42','',0,'http://87.106.117.190/guide-1-tpu-drucken-2026-03-22/',0,'post','',0), +(311,0,'2026-03-22 10:15:05','2026-03-22 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 22.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-22 10:15:05','2026-03-22 09:15:05','',9,'http://87.106.117.190/?p=311',0,'revision','',0), +(312,0,'2026-03-22 13:10:04','2026-03-22 12:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2289 Likes und 5676 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1234 Likes und 1987 Downloads.

Zum Modell
\n
\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 301 Likes und 596 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1742 Likes und 2658 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1507 Likes und 17975 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Rack
Sitemap Pick

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Snap

Snap On Split Wall Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-22 13:10:04','2026-03-22 12:10:04','',10,'http://87.106.117.190/?p=312',0,'revision','',0), +(313,0,'2026-03-22 13:10:05','2026-03-22 12:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-22 13:10:05','2026-03-22 12:10:05','',29,'http://87.106.117.190/?p=313',0,'revision','',0), +(314,0,'2026-03-22 18:15:03','2026-03-22 17:15:03','\n
\n\n\n\n
Material

ASA und ABS erfolgreich drucken

Hitzestabil, UV-beständig, schwierig — aber mit der richtigen Technik beherrschbar.

\n

Wann brauche ich ASA oder ABS?

  • Dauerhaft über 60°C (Motorraum, Heizung, Sonneneinstrahlung im Auto)
  • Outdoor-Einsatz mit UV-Belastung (ASA deutlich UV-stabiler als ABS)
  • Mechanische Belastung bei Hitze
  • Chemische Resistenz gegen Lösungsmittel

ASA vs. ABS

EigenschaftABSASA
UV-StabilitätSchlecht (vergilbt)Sehr gut
Hitzebeständigkeit~100°C~100°C
WarpingStarkEtwas weniger
EmpfehlungLegacy-MaterialBevorzugen

Enclosure ist Pflicht

  • Ohne Enclosure: Warping praktisch unvermeidbar
  • Bambu P1S/X1C: Eingebaut — ideal
  • Ender/Prusa: DIY aus Ikea Lack-Tisch oder Karton
  • Mindesttemperatur im Druckraum: 40–50°C

Optimale Druckeinstellungen

  • Düse: ABS 230–250°C, ASA 240–260°C
  • Bett: 100–110°C (PEI oder Garolite)
  • Fan: 0–20% (mehr = mehr Warping)
  • Speed: max. 60 mm/s

Warping-Checkliste

  1. Bett mit Isopropanol reinigen
  2. Enclosure auf Temperatur bringen (~10 min)
  3. Brim: 8–10mm für ABS, 5–8mm für ASA
  4. Fan in ersten 5 Layern auf 0%
  5. Nach Druck: Enclosure-Tür erst nach 30min öffnen

Gesundheitshinweis

ABS und ASA setzen Styroldämpfe frei. Immer in gut belüfteten Räumen oder mit HEPA + Aktivkohle-Filter drucken.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','ASA/ABS Grundlagen','','publish','closed','closed','','asa-abs-grundlagen','','','2026-03-26 20:41:34','2026-03-25 21:22:42','',0,'http://87.106.117.190/guide-2-asa-abs-grundlagen-2026-03-22/',0,'post','',0), +(315,0,'2026-03-22 18:15:06','2026-03-22 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 22.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-22 18:15:06','2026-03-22 17:15:06','',9,'http://87.106.117.190/?p=315',0,'revision','',0), +(316,0,'2026-03-22 19:10:05','2026-03-22 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Folding
Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2335 Likes und 5803 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1281 Likes und 2060 Downloads.

Zum Modell
\n
\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 315 Likes und 636 Downloads.

Zum Modell
\n
\"Wall

Wall Hook - Invisible Mounting

Beliebtes Community-Modell mit 1763 Likes und 2696 Downloads.

Zum Modell
\n
\"Dragon
Most Downloaded

Dragon Egg Twist Fidget

Beliebtes Community-Modell mit 1529 Likes und 18383 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Rack
Sitemap Pick

Rack Cover 19

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Snap

Snap On Split Wall Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-22 19:10:05','2026-03-22 18:10:05','',10,'http://87.106.117.190/?p=316',0,'revision','',0), +(317,0,'2026-03-22 19:10:06','2026-03-22 18:10:06',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-22 19:10:06','2026-03-22 18:10:06','',29,'http://87.106.117.190/?p=317',0,'revision','',0), +(318,0,'2026-03-23 07:10:04','2026-03-23 06:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 353 Likes und 697 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2390 Likes und 5931 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1332 Likes und 2152 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 912 Likes und 2475 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 761 Likes und 1002 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Besetzt
Sitemap Pick

Besetzt Frei

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Snap

Snap On Split Wall Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Horse

Horse Yin Yang Coaster

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-23 07:10:04','2026-03-23 06:10:04','',10,'http://87.106.117.190/?p=318',0,'revision','',0), +(319,0,'2026-03-23 07:10:05','2026-03-23 06:10:05','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-W13

  • Printables: Stargate with a working Iris
  • Printables: Folding Wall Hook
  • Printables: Full Desk Organizer & Monitor Stand + Stackable Drawers

2026-W12

  • Printables: Wall Hook - Invisible Mounting
  • Printables: Folding Wall Hook
  • Printables: Dragon Egg Twist Fidget

2026-W11

  • Printables: Wall Hook - Invisible Mounting
  • Printables: Folding Wall Hook
  • Printables: Parcel Opener – Safe, Durable & Blade-Free

2026-W10

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-23 07:10:05','2026-03-23 06:10:05','',72,'http://87.106.117.190/?p=319',0,'revision','',0), +(320,0,'2026-03-23 07:10:05','2026-03-23 06:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-23 07:10:05','2026-03-23 06:10:05','',29,'http://87.106.117.190/?p=320',0,'revision','',0), +(321,0,'2026-03-23 10:15:02','2026-03-23 09:15:02','\n
\n\n\n\n
Slicer

Support richtig setzen — Tree, Normal, Organic im Vergleich

Wann welche Support-Methode, wie du Material sparst und Kontaktflächen sauber bekommst.

\n

Wann brauche ich Support?

Support ist nötig wenn Überhänge über 45–50° (je nach Drucker und Material) gedruckt werden müssen. Ohne Support sagen die Schichten durch. Ziel: so wenig Support wie nötig für saubere Ergebnisse.

\n

Support-Typen im Vergleich

TypBeschreibungIdeal fürNachteil
Normal (Grid)Gerades GitternetzEinfache, flache ÜberhangsSchwer zu entfernen
Tree / OrganicBaumstruktige StrukturenOrganische Formen, FigurenLängere Slicezeit
LightningMinimale StützpunkteEinfache Bridges, wenig KontaktNicht stabil
SnugEng anliegendPräzise KontaktflächenSchwerer zu entfernen
\n

Bauteilorientierung optimieren

Die wichtigste Support-Entscheidung ist vor dem Slicer: die Ausrichtung des Bauteils. Viele Supports lassen sich durch kluge Positionierung vermeiden:

  • Löcher horizontal drucken statt vertikal — keine Supports nötig
  • Teil um 45° kippen wenn dadurch Überhangs wegfallen
  • Flache Seiten als Druckfläche verwenden (bessere Stabilität)
  • Brücken (Bridges) bis 60mm kommen ohne Support aus
\n

Support-Einstellungen optimieren

  • Support Z-Distance: 0,2mm für leichtes Ablösen, 0,1mm für sauberere Oberflächen
  • Support Interface: 2–3 dichte Interface-Layer verbessern die Qualität der Unterseite drastisch
  • Support Density: 10–20% reicht meist aus (mehr erhöht Material ohne Qualitätsvorteil)
  • Support Speed: Kann schnell sein (100+ mm/s), da Qualität egal
\n
Tipp: Paint-on Supports — In PrusaSlicer und OrcaSlicer kannst du Supports manuell einzeichnen. Nur dort Support wo nötig, nicht automatisch überall.
\n

Support entfernen ohne Schäden

  1. Teil vollständig abkühlen lassen (mindestens 10min)
  2. Schneidzange für erste grobe Entfernung
  3. Spitze Zange oder Messer für Reste direkt an der Oberfläche
  4. Bei Schäden an der Kontaktfläche: höheren Z-Distance einstellen
  5. Support Interface aktivieren für sauberere Ablösung
\n

Slicer-Empfehlungen 2026

  • OrcaSlicer: Organic/Tree Support sehr gut, Scarf-Seam für saubere Nähte
  • PrusaSlicer: Organic Support und Paint-on sind Stärken
  • Bambu Studio: Automatische Support-Optimierung für Bambu-Drucker
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','Support richtig setzen','','publish','closed','closed','','support-richtig-setzen','','','2026-03-26 20:41:34','2026-03-25 21:22:42','',0,'http://87.106.117.190/guide-1-support-richtig-setzen-2026-03-23/',0,'post','',0), +(322,0,'2026-03-23 10:15:05','2026-03-23 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 23.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-23 10:15:05','2026-03-23 09:15:05','',9,'http://87.106.117.190/?p=322',0,'revision','',0), +(323,0,'2026-03-23 13:10:06','2026-03-23 12:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 364 Likes und 720 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2405 Likes und 5988 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1355 Likes und 2171 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 924 Likes und 2515 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 784 Likes und 1022 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Besetzt
Sitemap Pick

Besetzt Frei

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Snap

Snap On Split Wall Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Horse

Horse Yin Yang Coaster

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-23 13:10:06','2026-03-23 12:10:06','',10,'http://87.106.117.190/?p=323',0,'revision','',0), +(324,0,'2026-03-23 13:10:07','2026-03-23 12:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-23 13:10:07','2026-03-23 12:10:07','',29,'http://87.106.117.190/?p=324',0,'revision','',0), +(325,0,'2026-03-23 18:15:03','2026-03-23 17:15:03','\n
\n\n\n\n
Slicer

Slicer-Profil optimieren — von Standard zu perfekt

Systematisch das ideale Profil für dein Filament und deinen Drucker aufbauen.

\n

Warum Standard-Profile nicht reichen

Slicer-Profile sind universelle Ausgangspunkte — sie passen für jeden Drucker, aber für keinen perfekt. Jede Spule Filament, jede Raumtemperatur, jede Düse verhält sich anders. Ein optimiertes Profil kann Qualität und Druckzeit erheblich verbessern.

\n

Der systematische Ansatz

Goldene Regel: Immer nur 1 Parameter gleichzeitig ändern. Sonst weißt du nicht welche Änderung was bewirkt hat.
\n

Phase 1: Kalibrierung (einmalig)

  1. Extruder kalibrieren (E-Steps): 100mm Filament markieren und extrudieren. Abweichung korrigieren.
  2. Flow Rate kalibrieren: 20x20mm Würfel drucken, Wandstärke messen. Soll = 0,4mm, Ist z.B. 0,42mm → Flow auf 95,2%.
  3. Pressure Advance / Linear Advance: Reduziert Blobs an Ecken und Oozing. OrcaSlicer hat integrierten PA-Test.
  4. Resonanz-Kalibrierung: Bei Ghosting/Ringing → Input Shaper (Bambu, Klipper) oder Jerk/Acceleration senken.
\n

Phase 2: Material-spezifisches Profil

SchrittToolWas optimiert wird
Temperatur-TowerOrcaSlicer / CuraOptimale Drucktemperatur
Retraction-TestStringing-TurmRetraction Distance & Speed
Overhang-TestOverhang-FächerFan-Speed, maximaler Überhangwinkel
Bridge-TestBridge-TestmodellBridge Speed & Fan-Einstellungen
\n

Phase 3: Geschwindigkeit optimieren

Sobald Qualität stimmt, Geschwindigkeit schrittweise erhöhen:

  • Outer Wall auf 80 mm/s erhöhen — drucken — Qualität prüfen
  • Infill auf 200 mm/s — drucken — auf Geräusche/Resonanz prüfen
  • Acceleration erhöhen wenn kein Ringing auftritt
  • Jede Erhöhung in 20–30% Schritten
\n

Profil-Verwaltung

  • Profil speichern: Immer neue Profile als Kopie anlegen, nie das Original überschreiben
  • Benennung: \"PLA_Bambu_20°C_Standard\" statt \"Mein Profil 3\"
  • Backup: Profile regelmäßig exportieren (OrcaSlicer: File → Export → Config Bundle)
  • Community-Profile: GitHub, OrcaSlicer Wiki und Prusa Forum haben optimierte Community-Profile
\n
Tipp: OrcaSlicer\'s integrierte Kalibrierungs-Suite (Calibration-Menü) macht alle wichtigen Tests mit einem Klick. Perfekter Einstieg für systematisches Profil-Tuning.
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','Slicer-Profil optimieren','','publish','closed','closed','','slicer-profil-optimieren','','','2026-03-26 20:41:34','2026-03-25 21:22:42','',0,'http://87.106.117.190/guide-2-slicer-profil-optimieren-2026-03-23/',0,'post','',0), +(326,0,'2026-03-23 18:15:06','2026-03-23 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 23.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-23 18:15:06','2026-03-23 17:15:06','',9,'http://87.106.117.190/?p=326',0,'revision','',0), +(327,0,'2026-03-23 19:10:04','2026-03-23 18:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 388 Likes und 753 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2435 Likes und 6095 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1386 Likes und 2218 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 956 Likes und 2588 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 810 Likes und 1068 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Besetzt
Sitemap Pick

Besetzt Frei

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bookmark

Bookmark Cute Swan

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Lautsprecherstativ

Lautsprecherstativ Aufnahme Speaker Stand Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Snap

Snap On Split Wall Mount

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Horse

Horse Yin Yang Coaster

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-23 19:10:04','2026-03-23 18:10:04','',10,'http://87.106.117.190/?p=327',0,'revision','',0), +(328,0,'2026-03-23 19:10:05','2026-03-23 18:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-23 19:10:05','2026-03-23 18:10:05','',29,'http://87.106.117.190/?p=328',0,'revision','',0), +(329,0,'2026-03-24 07:10:04','2026-03-24 06:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 424 Likes und 810 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2502 Likes und 6240 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1435 Likes und 2321 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 1013 Likes und 2727 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 856 Likes und 1133 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Keychain
Sitemap Pick

Keychain R2 Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dual

Dual Oral B Toothbrush Holder 4 Spare Parts

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambulab

Bambulab A1 Mini Headshot Poopshoot

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Honey

Honey Comb Wall Cover For Connectors

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Govee

Govee Led Strip Power Supply Bracket Holder For Wa

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-24 07:10:04','2026-03-24 06:10:04','',10,'http://87.106.117.190/?p=329',0,'revision','',0), +(330,0,'2026-03-24 07:10:05','2026-03-24 06:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-24 07:10:05','2026-03-24 06:10:05','',29,'http://87.106.117.190/?p=330',0,'revision','',0), +(331,0,'2026-03-24 10:15:03','2026-03-24 09:15:03','\n
\n\n\n\n
Einsteiger

Maßhaltigkeit verbessern — Elefantenfuß, Schrumpfung, Kalibrierung

Warum deine Teile nicht passen und wie du es dauerhaft behebst.

\n

Warum stimmen die Maße nicht?

Selbst gut druckende Drucker erzeugen Teile die um 0,1–0,5mm von der STL abweichen. Die häufigsten Ursachen: Elefantenfuß, thermische Schrumpfung und falsch kalibrierter Flow.

Elefantenfuß beheben

Elefantenfuß entsteht wenn der erste Layer zu stark gequetscht wird. Das Material quillt seitlich aus und macht den unteren Bereich breiter als geplant.

  • Z-Offset um 0,05mm erhöhen (Düse etwas weiter weg vom Bett)
  • Im Slicer \"Elephant Foot Compensation\" auf 0,1–0,2mm setzen
  • First Layer Flow auf 95% reduzieren

Thermische Schrumpfung

MaterialSchrumpfungSkalierungs-Faktor
PLA0,2–0,4%1,002–1,004
PETG0,3–0,5%1,003–1,005
ABS/ASA0,5–0,8%1,005–1,008
TPU0,5–1,5%1,005–1,015

Flow-Rate kalibrieren

  1. Kalibrierungs-Würfel drucken (20x20x20mm)
  2. Mit Messschieber messen
  3. Wenn 20,3mm statt 20mm: Flow um 1,5% reduzieren
  4. Neue Flow = (20 / gemessener Wert) × aktueller Flow-Wert
  5. Iterativ bis alle 3 Achsen stimmen

Toleranzen für Passungen

  • Stramme Passungen (Press-Fit): 0,1–0,15mm Spiel pro Seite
  • Gleitpassungen: 0,2–0,3mm Spiel pro Seite
  • Lose Passungen (Rotation): 0,3–0,5mm Spiel pro Seite
  • Schrauben in gedruckte Löcher: Loch 0,2–0,4mm größer als Nenndurchmesser
\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','Maßhaltigkeit verbessern','','publish','closed','closed','','masshaltigkeit-verbessern','','','2026-03-26 20:41:34','2026-03-25 21:22:42','',0,'http://87.106.117.190/guide-1-mau00dfhaltigkeit-verbessern-2026-03-24/',0,'post','',0), +(332,0,'2026-03-24 10:15:06','2026-03-24 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 24.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-24 10:15:06','2026-03-24 09:15:06','',9,'http://87.106.117.190/?p=332',0,'revision','',0), +(333,0,'2026-03-24 13:10:06','2026-03-24 12:10:06','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 441 Likes und 833 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2522 Likes und 6327 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1457 Likes und 2357 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 1037 Likes und 2789 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 879 Likes und 1166 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Keychain
Sitemap Pick

Keychain R2 Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dual

Dual Oral B Toothbrush Holder 4 Spare Parts

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambulab

Bambulab A1 Mini Headshot Poopshoot

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Honey

Honey Comb Wall Cover For Connectors

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Govee

Govee Led Strip Power Supply Bracket Holder For Wa

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-24 13:10:06','2026-03-24 12:10:06','',10,'http://87.106.117.190/?p=333',0,'revision','',0); +INSERT INTO `wp_posts` VALUES +(334,0,'2026-03-24 13:10:07','2026-03-24 12:10:07',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-24 13:10:07','2026-03-24 12:10:07','',29,'http://87.106.117.190/?p=334',0,'revision','',0), +(335,0,'2026-03-24 18:15:03','2026-03-24 17:15:03','\n
\n\n\n\n
Slicer

Druckzeit vs. Qualität — der richtige Kompromiss

Speed erhöhen ohne Qualität zu opfern — konkrete Parameterwerte.

\n

Das Grundprinzip

Druckzeit und Qualität stehen in einem direkten Spannungsverhältnis. Wer schneller druckt, riskiert Qualitätsverluste — aber nicht immer. Mit den richtigen Parametern lässt sich viel Speed herausholen ohne sichtbare Einbußen.

Die entscheidenden Parameter

ParameterQualitätsdruckSchnelldruckAuswirkung
Schichthöhe0,12–0,16mm0,24–0,30mmGrößter Zeitfaktor
Druckgeschwindigkeit40–60 mm/s150–300 mm/sStark druckerspezifisch
Infill-Dichte20–40%10–15%Bei Sichtteilen kaum sichtbar
Infill-MusterGyroidLightning/LinesLightning: minimal Material
Perimeter3–42Außenwand-Qualität

Schichthöhe: größter Hebel

Die Schichthöhe hat den größten Einfluss auf die Druckzeit. Von 0,2mm auf 0,28mm wechseln reduziert die Zeit um ~25–30% mit kaum sichtbarem Qualitätsverlust bei funktionalen Teilen.

  • Dekorative Teile, sichtbare Oberflächen → 0,12–0,16mm
  • Standard-Alltagsteile → 0,20mm (optimale Balance)
  • Schnelle Prototypen, versteckte Teile → 0,24–0,30mm
  • Grobe Prototypen → bis 0,32mm (0,4mm Düse)

Geschwindigkeit nach Bereich

  • Outer Wall: 40–80 mm/s — bestimmt Oberflächen-Qualität, nie höher
  • Inner Wall: 100–200 mm/s — unkritisch, hoher Speed OK
  • Infill: 150–350 mm/s — maximaler Speed hier
  • Top Surface: 40–80 mm/s — sichtbar, langsam drucken
  • First Layer: immer max. 30–40 mm/s

Infill-Muster wählen

  • Lightning: Minimal Material, sehr schnell — nur für nicht-tragende Teile
  • Lines/Grid: Standard, gut für die meisten Teile
  • Gyroid: Beste Stärke/Gewichts-Ratio, etwas langsamer
  • Honeycomb: Gut für Teile mit Druckbelastung

Praxis-Workflow

  1. Baseline mit aktuellem Profil drucken und Zeit notieren
  2. Schichthöhe um 0,04mm erhöhen — vergleichen
  3. Infill auf 15% setzen wenn Teil nicht-tragend ist
  4. Inner Wall Speed auf 150 mm/s, Outer Wall auf 60 mm/s lassen
  5. Immer nur 1–2 Parameter gleichzeitig ändern
\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n\n
','Druckzeit vs. Qualität','','publish','closed','closed','','druckzeit-vs-qualitaet','','','2026-03-26 20:41:34','2026-03-25 21:22:42','',0,'http://87.106.117.190/guide-2-druckzeit-vs-qualitu00e4t-2026-03-24/',0,'post','',0), +(336,0,'2026-03-24 18:15:06','2026-03-24 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 24.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-24 18:15:06','2026-03-24 17:15:06','',9,'http://87.106.117.190/?p=336',0,'revision','',0), +(337,0,'2026-03-24 19:10:04','2026-03-24 18:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 467 Likes und 881 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2558 Likes und 6439 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1490 Likes und 2402 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 1069 Likes und 2879 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 894 Likes und 1203 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Keychain
Sitemap Pick

Keychain R2 Star Wars Theme

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Dual

Dual Oral B Toothbrush Holder 4 Spare Parts

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Bambulab

Bambulab A1 Mini Headshot Poopshoot

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Honey

Honey Comb Wall Cover For Connectors

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Govee

Govee Led Strip Power Supply Bracket Holder For Wa

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-24 19:10:04','2026-03-24 18:10:04','',10,'http://87.106.117.190/?p=337',0,'revision','',0), +(338,0,'2026-03-24 19:10:05','2026-03-24 18:10:05',':root{--bg:#0c111b;--panel:#131a28;--panel2:#182136;--text:#e8ecf3;--cyan:#00d2ff;--orange:#ff6a00}\nbody{background:radial-gradient(circle at 20% -10%,#1a2440 0,#0c111b 45%) fixed!important;color:var(--text)!important}\nh1,h2,h3,h4,h5,h6{color:var(--text)!important} p,li{color:#c7d0dd}\na{color:#6fdfff}\n.main-header-bar{background:rgba(9,13,22,.75)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}\n\n/* Hero */\n.hero-pro{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#111827,#1b2940);border:1px solid rgba(255,255,255,.1);overflow:hidden}\n.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,210,255,.2),transparent 35%),radial-gradient(circle at 20% 90%,rgba(255,106,0,.18),transparent 35%);pointer-events:none}\n.hero-content,.hero-carousel{position:relative;z-index:1}\n.hero-kicker{font-size:.85rem;opacity:.9}\n.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}\n.slide{border:1px dashed rgba(255,255,255,.3);border-radius:12px;padding:22px;text-align:center;color:#cfe2ff;background:rgba(255,255,255,.04)}\n\n/* Buttons */\n.cta-main,.cta-alt,.neo-btn{display:inline-block;padding:11px 16px;border-radius:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:.2s}\n.cta-main,.neo-btn-primary{background:linear-gradient(90deg,var(--cyan),#66d6ff 45%,var(--orange));color:#0b1020!important;box-shadow:0 10px 24px rgba(0,210,255,.25),0 8px 18px rgba(255,106,0,.2)}\n.cta-main:hover,.neo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}\n.cta-alt,.neo-btn-secondary{background:#1f2c44;color:#dce8f8!important;border:1px solid rgba(255,255,255,.18)}\n.cta-alt:hover,.neo-btn-secondary:hover{background:#273754}\n\n/* Cards and sections */\n.hub-card,.neo-card,.neo-panel,.neo-highlight,.hub-section{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.22)}\n.hub-grid,.neo-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.neo-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}\n\n/* Teaser cards */\n.home-teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}\n.home-teaser-card{background:#121a2a;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.home-teaser-card img{width:100%;height:165px;object-fit:cover;display:block}\n.home-teaser-card .t-body{padding:10px}\n\n/* Models page */\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}\n.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}\n.mf-btn.active{background:linear-gradient(90deg,var(--cyan),var(--orange));color:#0b1020;border:none}\n.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}\n.model-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden}\n.model-card img{width:100%;height:170px;object-fit:cover;display:block}\n.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}\n.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px}\n.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}\n.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}\n.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}\n.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}\n.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n/* Calculator mobile */\n.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}\n.calc-grid input{width:100%;min-height:46px;font-size:16px;padding:10px;border-radius:10px;border:1px solid #32415f;background:#111827;color:#eaf2ff}\n.vote-btn{background:#1f2c44;color:#dce8f8;border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:10px;font-weight:700}\n\n@media(max-width:820px){.hero-pro,.neo-split{grid-template-columns:1fr}.calc-grid{grid-template-columns:1fr}}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.today-new ul{margin:0;padding-left:18px}\n.today-new li{margin:8px 0}\n.today-new small{color:#9fb0c9}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-24 19:10:05','2026-03-24 18:10:05','',29,'http://87.106.117.190/?p=338',0,'revision','',0), +(339,0,'2026-03-24 19:13:24','2026-03-24 18:13:24','
\n\n\n
Fehleranalyse

Layer Separation beheben

Schichten lösen sich ab — Ursachen diagnostizieren und dauerhaft beheben.

Was ist Layer Separation?

Layer Separation (Schichttrennung) bedeutet, dass sich einzelne Druckschichten voneinander ablösen. Das Ergebnis ist ein mechanisch schwaches Teil, das unter Belastung auseinanderbricht. Im Gegensatz zu Delamination (sichtbare Risse) können sich Schichten auch unsichtbar schlecht verbunden haben.

Hauptursachen & Lösungen

UrsacheSymptomLösung
Temperatur zu niedrigSchichten trennen sich bei Biegung+5–10°C erhöhen
Druckgeschwindigkeit zu hochRisse zwischen LayernSpeed um 20% reduzieren
Schichthöhe zu großSichtbare Lücken zwischen LayernMax 75% des Düsendurchmessers
Zu viel KühlungSchichten verbinden sich nichtFan Speed reduzieren
Feuchtes FilamentBlasen + schlechte HaftungFilament trocknen (65°C, 6h)

Temperatur korrekt einstellen

Die Drucktemperatur ist der häufigste Grund für Layer Separation. Als Faustregel gilt: Die Schichten müssen heiß genug aufgetragen werden, damit das Material mit der darunterliegenden Schicht verschmilzt.

  • PLA: 200–220°C — bei Separation auf 215°C erhöhen
  • PETG: 230–245°C — unterschätzt oft; 240°C ist ein guter Startpunkt
  • ABS/ASA: 240–260°C — Enclosure notwendig, sonst kühlt Material zu schnell ab
  • TPU: 220–235°C — langsam drucken, Kühlung reduzieren
Tipp: Einen Temperatur-Tower drucken (Temperature Tower) um die optimale Temperatur zu finden. OrcaSlicer hat diesen Test integriert.

Schichthöhe & Düsendurchmesser

Die Schichthöhe darf maximal 75–80% des Düsendurchmessers betragen. Bei 0,4mm Düse also maximal 0,3mm Schichthöhe. Wird diese Grenze überschritten, kann das Material die darunterliegende Schicht nicht mehr vollständig benetzen.

  • 0,4mm Düse → max. 0,3mm Schichthöhe (empfohlen: 0,2mm)
  • 0,6mm Düse → max. 0,45mm Schichthöhe
  • 0,8mm Düse → max. 0,6mm Schichthöhe

Kühlung richtig balancieren

Zu viel Kühlung verhindert, dass Schichten miteinander verschmelzen. Besonders bei ABS und ASA sollte die Kühlung stark reduziert oder komplett deaktiviert werden. Bei PETG reichen 30–50% Fan-Speed.

  • PLA: 80–100% Fan — keine Layer Separation durch Kühlung
  • PETG: 30–50% Fan — mehr kühlt schlechtere Haftung
  • ABS/ASA: 0–20% Fan — Enclosure verwenden
  • TPU: 30–60% Fan — je nach Härtegrad

Feuchtes Filament erkennen & trocknen

Feuchtes Filament zischt und knistert beim Drucken (durch verdampfendes Wasser). Neben Layer Separation entstehen Blasen, raue Oberflächen und Stringing. Lösung: Filament vor dem Druck trocknen.

  • PLA: 45°C, 4–6h im Trockner oder Backofen
  • PETG: 65°C, 4–6h
  • ABS/ASA: 80°C, 4–6h
  • TPU: 55°C, 6–8h
Langzeitlösung: Filament in luftdichten Boxen mit Silica-Gel lagern. Trockenboxen (z.B. von Sunlu) halten das Filament beim Drucken trocken.

Weitere Guides

Alle Fehleranalyse- und Material-Guides in der Übersicht.

\n
','Layer Separation beheben','','publish','closed','closed','','layer-separation-beheben','','','2026-03-26 20:41:34','2026-03-25 21:22:43','',0,'http://87.106.117.190/guide-layer-separation-beheben/',0,'post','',0), +(340,0,'2026-03-24 19:14:03','2026-03-24 18:14:03','
\n\n\n
Einsteiger

Erstes Modell drucken

Von der STL-Datei bis zum fertigen Druck — der vollständige Workflow für Einsteiger.

Was du brauchst

Checkliste: Drucker mit kalibriertem Bett · PLA-Filament (1,75mm) · Slicer-Software (OrcaSlicer empfohlen) · STL-Datei deines Modells

Schritt-für-Schritt

  1. STL-Datei finden — Printables.com oder MakerWorld. Für den ersten Druck: einen einfachen Würfel oder einen Benchy (Kalibrierdruck) wählen.
  2. Slicer installieren — OrcaSlicer herunterladen und installieren. Dein Druckerprofil auswählen (die meisten gängigen Drucker sind vorinstalliert).
  3. Modell importieren — STL-Datei in den Slicer ziehen. Das Modell wird automatisch auf der Druckplatte platziert.
  4. Profil wählen — Für den ersten Druck: Standard-Qualitätsprofil (0,2mm Schichthöhe, 15% Infill). Filamenttyp auf PLA setzen.
  5. Slicen — Auf \"Slice\" klicken. Der Slicer zeigt Druckzeit, Materialverbrauch und eine Vorschau der Layerpfade.
  6. Auf Drucker übertragen — Per USB-Stick, SD-Karte oder direkt via WLAN (Bambu/Prusa Connect). Datei als .gcode oder .3mf speichern.
  7. Druck starten — Drucker vorheizen lassen, Bett leveln (bei neuen Druckern: Auto-Leveling abwarten), dann Druck starten.
  8. Ersten Layer beobachten — Die erste Schicht ist entscheidend. Sie soll glatt, gleichmäßig und gut haftend sein. Wenn nicht: Z-Offset anpassen.

Optimale Einstellungen für PLA (Erster Druck)

  • Düsentemperatur: 210°C (Startwert, nach Hersteller anpassen)
  • Betttemperatur: 60°C
  • Schichthöhe: 0,2mm
  • Infill: 15–20% (für Deko-Teile), 40%+ für Funktionsteile
  • Druckgeschwindigkeit: 50mm/s (Einsteiger), 100mm/s (mit Erfahrung)
  • Kühlung: 80–100% Fan ab Layer 3
Tipp: Benchy drucken\\\\! Der 3DBenchy ist das Standard-Kalibriermodell der Community. An ihm sieht man sofort, ob Stringing, Warping, Überhänge oder Brücken Probleme machen. Kostenlos auf Printables.com.

Häufige Probleme beim ersten Druck

  • Druck haftet nicht → Bett reinigen (Isopropanol), Z-Offset erhöhen, Betttemp auf 65°C
  • Stringing → Temperatur um 5°C senken, Retraction aktivieren
  • Schichten lösen sich ab → Temperatur erhöhen, Druckspeed reduzieren
  • Warping an Ecken → Brim hinzufügen (5–10mm), Zugluft vermeiden
  • Unter-Extrusion (Lücken) → Extruder-Kalibrierung, Flow-Rate prüfen
Nächste Schritte: Nach dem ersten erfolgreichen Druck empfehlen wir den PLA-Einstellungs-Guide und den Stringing-Guide.

Bereit für mehr?

Entdecke alle Guides für Einsteiger und Fortgeschrittene.

\n
','Erstes Modell drucken','','publish','closed','closed','','erstes-modell-drucken','','','2026-03-26 20:41:34','2026-03-25 21:22:43','',0,'http://87.106.117.190/guide-erstes-modell-drucken/',0,'post','',0), +(341,0,'2026-03-24 19:14:28','2026-03-24 18:14:28','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.g4{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.ci{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:20px;display:block}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px}.cd p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.lb{color:#58a6ff}.dt{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.acc{border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;margin-bottom:8px;background:rgba(255,255,255,.02)}.acc summary{padding:20px 24px;font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#fff}.acc summary:hover{background:rgba(255,255,255,.04)}.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:\"+\";font-size:20px;color:rgba(255,255,255,.3);flex-shrink:0}.acc[open] summary::after{content:\"-\"}.acc-b{padding:4px 24px 20px;font-size:14px;color:rgba(255,255,255,.45);line-height:1.7}.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color .3s,transform .25s}.tc:hover{border-color:rgba(88,166,255,.25);transform:translateY(-3px)}.ti{font-size:2.5rem;line-height:1}.tc h3{font-size:18px;font-weight:700;margin:0}.tc p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;flex-grow:1;margin:0}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}.cta h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.04em;margin-bottom:20px}.cta p{font-size:16px;color:rgba(255,255,255,.4);max-width:400px;margin:0 auto 40px;line-height:1.6}.cw{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:48px;max-width:600px;margin:0 auto}.cg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.cg label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.06em;text-transform:uppercase}.cg input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s;-webkit-appearance:none}.cg input:focus{border-color:#f97316}.cr{background:rgba(249,115,22,.06);border:1px solid rgba(249,115,22,.18);border-radius:12px;padding:24px;display:none}@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}.cg{grid-template-columns:1fr}.cw{padding:28px 20px}}
Wissen

Guides & Tutorials

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

Alle Guides

Wähle dein Thema

Einsteiger

PLA perfekt einstellen

Temperatur, Kühlung, Geschwindigkeit — die komplette Paramerübersicht.

Guide lesen →
Slicer

Stringing reduzieren

Retraction, Temperatur und Travel-Speed richtig einstellen.

Guide lesen →
Fehleranalyse

Warping vermeiden

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

Guide lesen →
Material

PETG ohne Frust

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

Guide lesen →
Material

TPU erfolgreich drucken

Direktantrieb vs Bowden — alles für flexibles Filament.

Guide lesen →
Material

ASA/ABS Grundlagen

Hitzebeständig und UV-stabil — ohne Warping drucken.

Guide lesen →
Slicer

Support richtig setzen

Tree, Normal, Organic — wann welche Methode passt.

Guide lesen →
Slicer

Slicer-Profil optimieren

OrcaSlicer, PrusaSlicer, Bambu Studio — das perfekte Profil.

Guide lesen →
Einsteiger

Maßhaltigkeit verbessern

Elefantenfuß, Schrumpfung, Kalibrierung erklärt.

Guide lesen →
Slicer

Druckzeit vs. Qualität

Den richtigen Kompromiss bei Schichthoehe und Infill finden.

Guide lesen →
Fehleranalyse

Layer Separation beheben

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

Guide lesen Guide lesen →
#8594;
Einsteiger

Erstes Modell drucken

Von der STL-Datei zum fertigen Druck — der komplette Workflow.

Guide lesen Guide lesen →
#8594;
function fg(l,b){document.querySelectorAll(\"#gg .cd\").forEach(x=>x.style.display=(l===\"all\"||x.dataset.l===l)?\"\":\"none\");document.querySelectorAll(\"#gfb button\").forEach(x=>{x.style.background=\"rgba(255,255,255,.06)\";x.style.color=\"rgba(255,255,255,.5)\";x.style.border=\"1px solid rgba(255,255,255,.1)\"});b.style.background=\"#f97316\";b.style.color=\"#fff\";b.style.border=\"none\"}

Noch Fragen?

Schau in die FAQ oder frag in der Community.

','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-24 19:14:28','2026-03-24 18:14:28','',12,'http://87.106.117.190/?p=341',0,'revision','',0), +(342,0,'2026-03-24 19:14:29','2026-03-24 18:14:29','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 24.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-24 19:14:29','2026-03-24 18:14:29','',9,'http://87.106.117.190/?p=342',0,'revision','',0), +(343,0,'2026-03-24 19:15:00','2026-03-24 18:15:00','\n
\n

Ressourcen & Tools

\n

Alle wichtigen Slicer-Downloads

\n\n\n

Model-Plattformen

\n
    \n
  • Printables.com — Prusa Community, qualitätsgeprüfte Modelle
  • \n
  • MakerWorld — Bambu Labs Plattform mit schnellem Wachstum
  • \n
  • Thingiverse — Älteste und größte Modell-Bibliothek
  • \n
  • MyMiniFactory — Kuratierte, druckoptimierte Modelle
  • \n
  • Cults3D — Viele kostenlose & Premium-Modelle
  • \n
\n\n

Kalibrierungs-Tools

\n\n\n

Design & Modellierung

\n
    \n
  • Tinkercad — Einsteiger-CAD, kostenlos im Browser
  • \n
  • Fusion 360 — Professionelles CAD (kostenlos für Hobbyisten)
  • \n
  • Blender — Open-Source 3D-Modellierung
  • \n
  • Meshmixer — Mesh-Reparatur & Stützstruktur-Optimierung
  • \n
  • OpenSCAD — Parametrisches CAD per Code
  • \n
\n\n

Community & Support

\n\n\n

Top 3D-Druck YouTube-Kanäle

\n\n\n

Firmware & Tools

\n\n\n

Hinweis: Die Liste wird redaktionell gepflegt und regelmäßig aktualisiert. Letzte Prüfung: 24.03.2026

\n
\n','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-24 19:15:00','2026-03-24 18:15:00','',11,'http://87.106.117.190/?p=343',0,'revision','',0), +(344,0,'2026-03-24 19:15:56','2026-03-24 18:15:56','
Community

Showcase

Echte Drucke aus der Community — mit Einstellungen, Tipps und Nachbau-Potenzial.

Druck der Woche

Community Highlight

Jeden Montag küren wir das beeindruckendste Projekt der Woche. Präzision, Kreativität oder Nützlichkeit — alles zählt. Tritt der Community bei und reiche deinen Druck ein!

Nächste Auswahl: Montag, 30.03.2026Kategorie: Alle offenEinsendeschluss: Sonntag Abend
So geht es

Ein guter Showcase-Beitrag

Diese Infos helfen anderen, dein Projekt nachzubauen und von deinen Erfahrungen zu lernen.

📸 Fotos

  • Mindestens 1 gutes Foto, besser 2–3
  • Gute Beleuchtung, neutraler Hintergrund
  • Detail-Shot zeigt Qualität besser als Ganzkörper
  • Vorher/Nachher bei Fails willkommen

⚙️ Druckeinstellungen

  • Drucker-Modell (z.B. Bambu A1 Mini)
  • Filament (Material, Marke, Farbe)
  • Schichthöhe & Drucktemperatur
  • Druckzeit & Materialverbrauch

💡 Erfahrungsbericht

  • Was hat gut funktioniert?
  • Welche Probleme gab es?
  • Was würdest du beim nächsten Mal anders machen?
  • Link zum Modell (Printables/MakerWorld)

Deinen Druck einreichen

Teile dein Projekt mit der Community! Schicke uns deine Fotos und Einstellungen — die besten Einsendungen kommen direkt auf die Startseite und ins Druck-der-Woche-Highlight.

  1. Tritt der WhatsApp-Community bei — dort läuft die aktive Diskussion und du kannst Fotos direkt teilen.
  2. Poste dein Projekt mit Fotos, Drucker, Material und deinen Einstellungen im Community-Chat.
  3. Nutze den Hashtag #showcase damit wir deinen Beitrag schnell finden und featuren können.
  4. Optional: Link zum Modell auf Printables oder MakerWorld hinzufügen, damit andere es nachdrucken können.
Zur Community
','Showcase','','inherit','closed','closed','','58-revision-v1','','','2026-03-24 19:15:56','2026-03-24 18:15:56','',58,'http://87.106.117.190/?p=344',0,'revision','',0), +(345,0,'2026-03-24 19:17:51','2026-03-24 18:17:51','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.g4{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.ci{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:20px;display:block}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px}.cd p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.lb{color:#58a6ff}.dt{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.acc{border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;margin-bottom:8px;background:rgba(255,255,255,.02)}.acc summary{padding:20px 24px;font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:#fff}.acc summary:hover{background:rgba(255,255,255,.04)}.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:\"+\";font-size:20px;color:rgba(255,255,255,.3);flex-shrink:0}.acc[open] summary::after{content:\"-\"}.acc-b{padding:4px 24px 20px;font-size:14px;color:rgba(255,255,255,.45);line-height:1.7}.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color .3s,transform .25s}.tc:hover{border-color:rgba(88,166,255,.25);transform:translateY(-3px)}.ti{font-size:2.5rem;line-height:1}.tc h3{font-size:18px;font-weight:700;margin:0}.tc p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.6;flex-grow:1;margin:0}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}.cta h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.04em;margin-bottom:20px}.cta p{font-size:16px;color:rgba(255,255,255,.4);max-width:400px;margin:0 auto 40px;line-height:1.6}.cw{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:48px;max-width:600px;margin:0 auto}.cg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.cg label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.06em;text-transform:uppercase}.cg input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border-color .2s;-webkit-appearance:none}.cg input:focus{border-color:#f97316}.cr{background:rgba(249,115,22,.06);border:1px solid rgba(249,115,22,.18);border-radius:12px;padding:24px;display:none}@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}.cg{grid-template-columns:1fr}.cw{padding:28px 20px}}
Wissen

Guides & Tutorials

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

Alle Guides

Wähle dein Thema

Einsteiger

PLA perfekt einstellen

Temperatur, Kühlung, Geschwindigkeit — die komplette Paramerübersicht.

Guide lesen →
Slicer

Stringing reduzieren

Retraction, Temperatur und Travel-Speed richtig einstellen.

Guide lesen →
Fehleranalyse

Warping vermeiden

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

Guide lesen →
Material

PETG ohne Frust

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

Guide lesen →
Material

TPU erfolgreich drucken

Direktantrieb vs Bowden — alles für flexibles Filament.

Guide lesen →
Material

ASA/ABS Grundlagen

Hitzebeständig und UV-stabil — ohne Warping drucken.

Guide lesen →
Slicer

Support richtig setzen

Tree, Normal, Organic — wann welche Methode passt.

Guide lesen →
Slicer

Slicer-Profil optimieren

OrcaSlicer, PrusaSlicer, Bambu Studio — das perfekte Profil.

Guide lesen →
Einsteiger

Maßhaltigkeit verbessern

Elefantenfuß, Schrumpfung, Kalibrierung erklärt.

Guide lesen →
Slicer

Druckzeit vs. Qualität

Den richtigen Kompromiss bei Schichthoehe und Infill finden.

Guide lesen →
Fehleranalyse

Layer Separation beheben

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

Guide lesen →
Einsteiger

Erstes Modell drucken

Von der STL-Datei zum fertigen Druck — der komplette Workflow.

Guide lesen →

Noch Fragen?

Schau in die FAQ oder frag in der Community.

','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-24 19:17:51','2026-03-24 18:17:51','',12,'http://87.106.117.190/?p=345',0,'revision','',0), +(346,0,'2026-03-24 19:25:46','2026-03-24 18:25:46','\n
\n
Tool

Filament-Rechner

Druckkosten sekundenschnell kalkulieren — Filament, Strom und Gesamtkosten auf einen Blick.

\n
\n
\n
Kalkulation
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
Filamentkosten
\n
Stromkosten
\n
Gesamtkosten
\n
\n
\n
\n
\n
\n
\n

Filament Richtwerte 2026

\n
\n
PLA

15–25 €/kg

Einfachstes Material. Bambu, Prusament, eSUN, Polymaker.

\n
PETG

18–28 €/kg

Robust, feuchtigkeitsresistent. Etwas Stringing bei falschen Settings.

\n
TPU

22–38 €/kg

Flexibel, langlebig. Direct-Drive Drucker empfohlen.

\n
ASA / ABS

20–32 €/kg

UV-stabil, hitzefest. Enclosure notwendig.

\n
PLA-CF

28–45 €/kg

Carbon-verstärkt, steif und leicht. Gehärtete Düse nötig.

\n
Nylon PA

35–60 €/kg

Sehr zäh, geringe Feuchtigkeitstoleranz.

\n
\n
\n\n
','Filament-Rechner','','inherit','closed','closed','','13-revision-v1','','','2026-03-24 19:25:46','2026-03-24 18:25:46','',13,'http://87.106.117.190/?p=346',0,'revision','',0), +(347,0,'2026-03-24 19:25:46','2026-03-24 18:25:46','\n
\n
Community

Community-Regeln

Damit der Austausch für alle funktioniert — kurz, klar und fair.

\n
\n
Grundregeln
\n

Wie wir miteinander umgehen

\n

Diese Regeln gelten für die WhatsApp-Community, den Showcase und alle Inhalte auf m0lzi_3D.

\n
\n
🤝

Respekt geht vor

Kein Angriff auf Personen, keine Beleidigungen. Kritik gerne — aber konstruktiv und sachlich.

\n
🔧

Hilfreiche Problemschilderung

Bei Druckproblemen immer angeben: Drucker, Material, Slicer, Einstellungen und ein Foto. Ohne diese Infos kann kaum jemand helfen.

\n
🚫

Kein Spam oder Werbung

Keine Affiliate-Links, keine Shop-Werbung ohne Kontext. Produktempfehlungen mit echtem Erfahrungsbericht sind willkommen.

\n
📎

Quellen korrekt angeben

Bei geteilten Modellen, Fotos und Designs immer den Urheber und die Quelle nennen (Printables, MakerWorld etc.).

\n
🔒

Datenschutz beachten

Keine persönlichen Daten anderer veröffentlichen — Name, Adresse, Fotos ohne Erlaubnis sind tabu.

\n
🌍

Sprache

Deutsch ist die Hauptsprache. Englisch ist auch okay, wenn jemand sich so besser ausdrücken kann.

\n
\n
\n
\n
\n
Übersicht
\n

Dos & Don’ts

\n

Eine schnelle Referenz für alle, die neu einsteigen.

\n
\n
✓  Das läuft gut
  • Druckfotos mit Einstellungen teilen
  • Konkrete Fragen mit Setup-Infos stellen
  • Andere ermutigen und Fortschritte feiern
  • Auf Guides und FAQ verweisen
  • Eigene Fails zeigen — daraus lernt man am meisten
\n
✕  Bitte nicht
  • Druckfehler kommentieren ohne Hilfe anzubieten
  • Links ohne Kontext posten
  • Dieselbe Frage mehrfach stellen
  • Off-Topic-Themen ohne 3D-Druck-Bezug
  • Screenshots von Chats anderer ohne Erlaubnis
\n
\n
\n

Bereit zum Mitmachen?

Tritt der WhatsApp-Community bei und tausch dich mit Gleichgesinnten aus.

Community beitreten
\n
','Community-Regeln','','inherit','closed','closed','','50-revision-v1','','','2026-03-24 19:25:46','2026-03-24 18:25:46','',50,'http://87.106.117.190/?p=347',0,'revision','',0), +(348,0,'2026-03-24 19:25:47','2026-03-24 18:25:47','\n
\n
Archiv

Model-Archiv

Historie der wöchentlichen Top-Modelle von Printables & MakerWorld — neueste Einträge zuerst.

\n
\n
2026
\n

Wöchentliche Highlights

\n

Automatisch gepflegt — jede Woche die beliebtesten Community-Modelle.

\n \n
\n
\n

Aktuelle Modelle entdecken

Die neuesten und beliebtesten Modelle der Woche live auf der Inspiration-Seite.

\n
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-24 19:25:47','2026-03-24 18:25:47','',72,'http://87.106.117.190/?p=348',0,'revision','',0), +(349,0,'2026-03-24 19:25:47','2026-03-24 18:25:47','\n
\n
Rechtliches

Impressum

Angaben gemäß § 5 TMG

\n
\n

Hinweis: Bitte ergänze hier deine vollständigen Pflichtangaben gemäß § 5 TMG: Name/Firma, vollständige Adresse, Kontaktdaten (E-Mail, ggf. Telefon) und — falls zutreffend — USt-ID und Verantwortlicher gem. § 55 Abs. 2 RStV. Bis zur Ergänzung ist das Impressum unvollständig.

\n
\n

Verantwortlich für den Inhalt

\n

[Dein Name]
[Straße Hausnummer]
[PLZ Ort]

\n

Kontakt

\n

E-Mail: [deine@email.de]

\n

Haftungsausschluss

\n

Die Inhalte dieser Website wurden mit größter Sorgfalt erstellt. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte übernehmen wir keine Gewähr. Als Diensteanbieter sind wir gemäß § 7 Abs. 1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich.

\n

Externe Links

\n

Diese Website enthält Links zu externen Webseiten Dritter, auf deren Inhalte wir keinen Einfluss haben. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter verantwortlich.

\n
\n
\n
','Impressum','','inherit','closed','closed','','14-revision-v1','','','2026-03-24 19:25:47','2026-03-24 18:25:47','',14,'http://87.106.117.190/?p=349',0,'revision','',0), +(350,0,'2026-03-24 19:25:48','2026-03-24 18:25:48','\n
\n
Rechtliches

Datenschutz

Informationen gemäß DSGVO über die Verarbeitung personenbezogener Daten.

\n
\n

Hinweis: Diese Datenschutzerklärung ist ein Rahmen und muss auf deine konkrete Situation angepasst werden. Insbesondere: Hosting-Anbieter, verwendete Plugins (Yoast SEO, WP Super Cache, Autoptimize), Google Fonts und WhatsApp-Verlinkungen. Hole im Zweifel rechtlichen Rat ein.

\n
\n

1. Verantwortlicher

\n

[Dein Name, Adresse, E-Mail] — gemäß Impressum.

\n

2. Erhobene Daten

\n

Beim Besuch dieser Website werden automatisch folgende Daten vom Server erfasst:

\n
  • IP-Adresse (anonymisiert nach kurzer Zeit)
  • Datum und Uhrzeit des Zugriffs
  • Aufgerufene Seite, Referrer-URL, Browser-Typ
\n

3. Hosting

\n

Diese Website wird auf einem eigenen VPS (Virtual Private Server) betrieben. Der Serverstandort ist [Standort des Servers angeben]. Es werden keine Daten an Drittanbieter-Hosting-Dienste übertragen.

\n

4. Google Fonts

\n

Diese Website lädt Schriftarten über Google Fonts (fonts.googleapis.com). Dabei wird deine IP-Adresse an Google übermittelt. Grundlage: berechtigtes Interesse gem. Art. 6 Abs. 1 lit. f DSGVO. Google LLC, 1600 Amphitheatre Parkway, Mountain View, CA 94043, USA.

\n

5. Externe Links

\n

Diese Seite enthält Links zu WhatsApp, Printables, MakerWorld, YouTube und GitHub. Beim Klick auf diese Links verlassen Sie unsere Website. Für die Datenschutzpraktiken dieser Dienste sind deren Betreiber verantwortlich.

\n

6. Deine Rechte

\n

Du hast das Recht auf Auskunft, Berichtigung, Löschung, Einschränkung der Verarbeitung sowie Datenübertragbarkeit (Art. 15–20 DSGVO). Kontakt: [deine@email.de]

\n

7. Beschwerderecht

\n

Du hast das Recht, dich bei einer Datenschutzbehörde zu beschweren. Zuständige Behörde in Deutschland: Bundesbeauftragte für den Datenschutz (BfDI).

\n
\n
\n
','Datenschutz','','inherit','closed','closed','','15-revision-v1','','','2026-03-24 19:25:48','2026-03-24 18:25:48','',15,'http://87.106.117.190/?p=350',0,'revision','',0), +(351,0,'2026-03-24 19:26:33','2026-03-24 18:26:33','@import url(\'https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;800;900&family=Exo+2:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap\');\n\n/* ── GLOBALE FONT-MIGRATION: Inter → Orbitron / Exo 2 ── */\n.m3d-wrap {\n font-family: \'Exo 2\', sans-serif !important;\n background: #0B0B10 !important;\n}\n.m3d-wrap h1, .m3d-wrap h2, .m3d-wrap h3,\n.m3d-ph h1, .m3d-ph h2, .sh, .cta h2 {\n font-family: \'Orbitron\', monospace !important;\n letter-spacing: -.02em !important;\n}\n.m3d-ph {\n background: linear-gradient(180deg, #0f0f18, #0B0B10) !important;\n}\n.m3d-ph::before {\n background: radial-gradient(ellipse 70% 60% at 50% 0%, rgba(249,115,22,.12), transparent 60%) !important;\n}\n.ew, .sec-lbl, .sl, .eyebrow, .m3d-tag-line, .m3d-lbl {\n font-family: \'Orbitron\', monospace !important;\n letter-spacing: .2em !important;\n}\n.cd, .card-hud {\n background: #0f0f18 !important;\n border-radius: 0 !important;\n}\n.cd {\n border: 1px solid rgba(255,255,255,.07) !important;\n}\n.cd:hover {\n background: #141420 !important;\n border-color: rgba(249,115,22,.2) !important;\n}\n.cd h3 {\n font-family: \'Exo 2\', sans-serif !important;\n font-weight: 700 !important;\n}\n.tg, .pill, .m3d-pill {\n border-radius: 0 !important;\n}\n.btn, .bo, .bgb {\n border-radius: 2px !important;\n}\n.lk {\n font-family: \'Orbitron\', monospace !important;\n font-size: 10px !important;\n letter-spacing: .12em !important;\n text-transform: uppercase !important;\n}\n#gfb button {\n font-family: \'Orbitron\', monospace !important;\n font-size: 10px !important;\n letter-spacing: .1em !important;\n text-transform: uppercase !important;\n border-radius: 0 !important;\n}\n#gfb button.active {\n background: #f97316 !important;\n color: #050505 !important;\n border-color: #f97316 !important;\n}\n\n/* ── HUB-SECTION SEITEN (News, Models, Ressourcen, Model-Archiv) ── */\n.hub-section {\n background: #0B0B10;\n color: #F8FAFC;\n min-height: 80vh;\n padding: 80px 48px;\n max-width: 1320px;\n margin: -3em -3em -3em !important;\n font-family: \'Exo 2\', sans-serif;\n}\n.hub-section h1 {\n font-family: \'Orbitron\', monospace !important;\n font-size: clamp(2rem, 5vw, 3.5rem);\n font-weight: 800;\n letter-spacing: -.02em;\n margin-bottom: 16px;\n color: #F8FAFC;\n}\n.hub-section h2 {\n font-family: \'Orbitron\', monospace !important;\n font-size: clamp(1.2rem, 2.5vw, 1.8rem);\n font-weight: 700;\n letter-spacing: -.02em;\n margin: 48px 0 16px;\n color: #F8FAFC;\n}\n.hub-section h3 {\n font-family: \'Orbitron\', monospace !important;\n font-size: clamp(1rem, 2vw, 1.3rem);\n font-weight: 600;\n margin: 32px 0 12px;\n color: #F8FAFC;\n}\n.hub-section p, .hub-section li {\n color: rgba(248,250,252,.55);\n line-height: 1.75;\n font-weight: 300;\n}\n.hub-section a {\n color: #f97316;\n text-decoration: none;\n}\n.hub-section a:hover {\n color: #fb923c;\n text-decoration: underline;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 1.5em;\n margin-bottom: 1em;\n}\n.hub-section ul li::marker, .hub-section ol li::marker {\n color: #f97316;\n}\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n}\n.hub-section th {\n font-family: \'Orbitron\', monospace !important;\n font-size: 10px;\n letter-spacing: .16em;\n text-transform: uppercase;\n color: rgba(0,212,255,.7);\n border-bottom: 1px solid rgba(0,212,255,.15);\n padding: 12px 16px;\n text-align: left;\n}\n.hub-section td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n color: rgba(248,250,252,.65);\n font-size: 14px;\n}\n.hub-section tr:hover td {\n background: rgba(249,115,22,.03);\n}\nbody { background: #0B0B10 !important; }','Custom CSS','','publish','closed','closed','','custom-css','','','2026-03-26 20:41:10','2026-03-24 18:26:33','',0,'http://87.106.117.190/custom-css/',0,'custom_css','',0), +(352,0,'2026-03-24 19:50:30','2026-03-24 18:50:30','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n Passt zur Landing Page\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* Header */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* Nav-Links */\n.main-header-menu .menu-item a,\n.main-navigation .menu-item a,\n.ast-primary-header-bar .menu-item a {\n color: rgba(255,255,255,.7) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item a:hover,\n.main-navigation .menu-item a:hover {\n color: #f97316 !important;\n}\n\n/* Site-Content-Bereich */\n.site-content, #content, .content-area,\n.ast-container, .ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n/* Seiteninhalt-Wrapper */\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n}\n\n/* Sidebar leer halten */\n.widget-area, .secondary { display: none !important; }\n\n/* Footer */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* Post-Metadaten ausblenden (keine Datum-Tags etc. in Guides) */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* Breadcrumbs */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* Scrollbar */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══════════════════════════════════════\n HUB-SECTION — Legacy Guide Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.8);\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.55);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.55);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.55);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.85); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table { width: 100%; border-collapse: collapse; margin: 24px 0; font-size: 14px; }\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.7);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n color: rgba(255,255,255,.5);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══════════════════════════════════════\n RESPONSIVE\n══════════════════════════════════════ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-24 19:50:30','2026-03-24 18:50:30','',29,'http://87.106.117.190/?p=352',0,'revision','',0), +(353,0,'2026-03-24 19:50:31','2026-03-24 18:50:31','\n
\n
Aktuell

Trends & News

Release Notes, Firmware-Updates und Neuigkeiten rund um 3D-Druck — automatisch aktualisiert.

\n
\n
Release Notes
\n

Aktuelle Software-Versionen

\n

Slicer, Firmware und Tools — immer auf dem neuesten Stand.

\n
\n
\n
OrcaSlicer23.03.2026
\n
Neueste Version
\n
v2.3.2
\n
Offizielles Release mit Verbesserungen bei Kalibrierung, Bambu-Kompatibilität und Bugfixes.
\n Release Notes \n
\n
\n
UltiMaker Cura05.03.2026
\n
Aktuell
\n
5.12.0
\n
Neue Arachne-Engine-Verbesserungen, verbesserte Unterstützungsstrukturen und Performance-Optimierungen.
\n Release Notes \n
\n
\n
Marlin Firmware24.01.2026
\n
Firmware
\n
2.1.2.7
\n
Stabiles Release mit Bugfixes für Bed Leveling, Input Shaping und TMC-Treiber-Kompatibilität.
\n Release Notes \n
\n
\n
PrusaSlicer07.11.2025
\n
Aktuell
\n
2.9.4
\n
Verbesserter Paint-on Support, neue Organic-Supports und Kalibrierungs-Assistenten.
\n Release Notes \n
\n
\n
Klipper29.08.2024
\n
Firmware
\n
v0.12.0
\n
Neues Input-Shaping via ADXL345, verbesserte Geschwindigkeitssteuerung und erweiterte MCU-Unterstützung.
\n Release Notes \n
\n
\n
Bambu Studiolaufend
\n
Aktuell
\n
Aktuell
\n
Bambu Studio wird regelmäßig aktualisiert. Immer die neueste Version direkt im Bambu-Handhub prüfen.
\n Alle Releases \n
\n
\n

Letztes Update: 24.03.2026 — Versionsangaben werden manuell gepflegt.

\n
\n
\n
\n
Weiterführende Tools
\n

Firmware & Interfaces

\n

Empfehlenswerte Open-Source Tools für fortgeschrittene Nutzer.

\n
\n
Fluidd
Modernes Web-Interface für Klipper. Responsive, schnell und einfach zu bedienen.
fluidd.xyz ↗
\n
Mainsail
Weiteres beliebtes Klipper-Frontend. Gut dokumentiert, aktive Community.
mainsail.xyz ↗
\n
OctoPrint
Klassische Drucker-Fernsteuerung. Riesiges Plugin-Ökosystem für alle Drucker.
octoprint.org ↗
\n
Moonraker
API-Layer für Klipper. Wird von Fluidd und Mainsail als Backend genutzt.
Dokumentation ↗
\n
\n
\n
','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-24 19:50:31','2026-03-24 18:50:31','',9,'http://87.106.117.190/?p=353',0,'revision','',0), +(354,0,'2026-03-24 19:50:31','2026-03-24 18:50:31','\n
\n
Ressourcen

Ressourcen & Tools

Alles was du für 3D-Druck brauchst — Slicer, Modelle, Kalibrierung, Community und mehr.

\n\n
\n
Slicer

Software-Downloads

Die wichtigsten Slicer-Programme — alle kostenlos.

\n
\n
Empfohlen
🦦

OrcaSlicer

Beste Kalibrierungs-Tools, Bambu & Prusa Kompatibilität. Aktiv entwickelt.

Download ↗
\n
Beliebt
🅿️

PrusaSlicer

Solider Allrounder. Beste Support-Algorithmen, gut dokumentiert.

Download ↗
\n
Beliebt
🏭

UltiMaker Cura

Große Nutzerbasis, viele Profile. Guter Einstieg für Anfänger.

Download ↗
\n
🎋

Bambu Studio

Optimiert für Bambu-Drucker. Schnell, automatisch, einfach.

Download ↗
\n
🔧

SuperSlicer

Fork von PrusaSlicer mit zusätzlichen Parametern für Fortgeschrittene.

Download ↗
\n
💡

ideaMaker

Von Raise3D. Einfache Bedienung, gute Slice-Qualität.

Download ↗
\n
\n
\n\n
\n
\n
Modelle

Modell-Plattformen

Wo du die besten STL-Dateien findest.

\n
\n
Top-Wahl
🖨️

Printables.com

Prusa-Community. Qualitätsgeprüfte Modelle, gute Such-Filter, aktive Nutzer.

Öffnen ↗
\n
Wachsend
🌍

MakerWorld

Bambu Labs Plattform. Schnell wachsend, viele Premium-Modelle kostenlos.

Öffnen ↗
\n
🗂️

Thingiverse

Älteste und größte Bibliothek. Riesige Auswahl, teils veraltete Modelle.

Öffnen ↗
\n

MyMiniFactory

Kuratierte, druckoptimierte Modelle. Viele künstlerische Designs.

Öffnen ↗
\n
💎

Cults3D

Kostenlose & Premium-Modelle. Viele Designer-Modelle mit Lizenzinfo.

Öffnen ↗
\n
🎮

Thangs

3D-Modell-Suche mit Geometrie-Erkennung. Sucht ähnliche Modelle.

Öffnen ↗
\n
\n
\n\n
\n
\n
Kalibrierung

Kalibrierungs-Tools & Guides

Optimal eingestellter Drucker = perfekte Ergebnisse.

\n
\n
Must-Have
🚢

3DBenchy

Standard-Kalibriermodell der globalen Community. Zeigt alle Schwachstellen sofort.

Download ↗
\n
Empfohlen
📖

Ellis Print Tuning Guide

Der umfassendste englische Kalibrierungs-Guide. Deckt alles ab.

Guide ↗
\n
🎓

Teaching Tech Calibration

Schritt-für-Schritt Kalibrierung im Browser. Sehr gut für Einsteiger.

Tool ↗
\n
📐

OrcaSlicer Built-in

OrcaSlicer hat Temperatur-Tower, Flow-Kalibrierung und Retraction-Tests direkt integriert.

Docs ↗
\n
\n
\n\n
\n
\n
Design & CAD

Modellierungs-Software

Von kostenlos bis professionell.

\n
\n
Kostenlos
🎨

Tinkercad

Einsteiger-CAD im Browser. Kein Download, sofort loslegen. Ideal für Anpassungen.

Im Browser ↗
\n
Empfohlen
⚙️

Fusion 360

Professionelles parametrisches CAD. Kostenlos für Hobbyisten. Steile Lernkurve.

Download ↗
\n
Open Source
🍊

Blender

3D-Modellierung & Sculpting. Für organische Formen und komplexe Designs.

Download ↗
\n
Open Source
📦

OpenSCAD

CAD per Code. Perfekt für parametrische Teile die sich anpassen lassen.

Download ↗
\n
🔨

Meshmixer

Mesh-Reparatur, Support-Optimierung und boolean-Operationen.

Download ↗
\n
🏗️

FreeCAD

Open-Source Parametric-CAD. Gute Alternative zu Fusion 360 ohne Abo.

Download ↗
\n
\n
\n\n
\n
\n
Community

Community & Support

Wo du Hilfe bekommst und dich austauschst.

\n
\n
Unsere Community
💬

m0lzi_3D WhatsApp

Deutsche 3D-Druck Community. Direkte Hilfe, Showcases und Diskussionen.

Beitreten ↗
\n
Reddit
🔴

r/3Dprinting

Größte englischsprachige Community (3M+ Mitglieder). Hilfe rund um die Uhr.

Besuchen ↗
\n
Reddit
🟠

r/FDMprinting

FDM-spezifische Diskussionen. Kleiner, fokussierter als r/3Dprinting.

Besuchen ↗
\n
🎮

OrcaSlicer Discord

Offizieller Support-Channel. Bugs melden, Features diskutieren.

Beitreten ↗
\n
🐻

Prusa Community

Forum & Discord. Beste Anlaufstelle für Prusa-spezifische Fragen.

Forum ↗
\n
🎋

Bambu Community

Offizielles Bambu Lab Forum für alle Bambu-Drucker.

Forum ↗
\n
\n
\n\n
\n
\n
YouTube

Top 3D-Druck Kanäle

Die besten Anlaufstellen für Video-Tutorials.

\n
\n
▶️

CNC Kitchen

Material-Tests, Engineering-Analysen. Wissenschaftlich fundiert und sehr informativ.

Kanal ↗
\n
▶️

Teaching Tech

Kalibrierung, Drucker-Reviews und Tutorials. Ideal für Einsteiger.

Kanal ↗
\n
▶️

Makers Muse

Design-Tipps, Materialvergleiche und kreative Projekte.

Kanal ↗
\n
▶️

3D Printing Nerd

Drucker-Reviews, Filament-Tests und Community-Events.

Kanal ↗
\n
▶️

Prusa3D

Offizieller Prusa-Kanal. Tutorials, Produktvideos und Community-Highlights.

Kanal ↗
\n
▶️

Bambu Lab

Offizielle Tutorials und neue Produkte von Bambu Lab.

Kanal ↗
\n
\n

Stand: 24.03.2026 — Liste wird regelmäßig aktualisiert.

\n
\n','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-24 19:50:31','2026-03-24 18:50:31','',11,'http://87.106.117.190/?p=354',0,'revision','',0), +(355,0,'2026-03-24 19:52:36','2026-03-24 18:52:36','\n
\n
Slicer

Druckzeit vs. Qualität — der richtige Kompromiss

Speed erhöhen ohne Qualität zu opfern — konkrete Parameterwerte.

\n

Das Grundprinzip

Druckzeit und Qualität stehen in einem direkten Spannungsverhältnis. Wer schneller druckt, riskiert Qualitätsverluste — aber nicht immer. Mit den richtigen Parametern lässt sich viel Speed herausholen ohne sichtbare Einbußen.

Die entscheidenden Parameter

ParameterQualitätsdruckSchnelldruckAuswirkung
Schichthöhe0,12–0,16mm0,24–0,30mmGrößter Zeitfaktor
Druckgeschwindigkeit40–60 mm/s150–300 mm/sStark druckerspezifisch
Infill-Dichte20–40%10–15%Bei Sichtteilen kaum sichtbar
Infill-MusterGyroidLightning/LinesLightning: minimal Material
Perimeter3–42Außenwand-Qualität

Schichthöhe: größter Hebel

Die Schichthöhe hat den größten Einfluss auf die Druckzeit. Von 0,2mm auf 0,28mm wechseln reduziert die Zeit um ~25–30% mit kaum sichtbarem Qualitätsverlust bei funktionalen Teilen.

  • Dekorative Teile, sichtbare Oberflächen → 0,12–0,16mm
  • Standard-Alltagsteile → 0,20mm (optimale Balance)
  • Schnelle Prototypen, versteckte Teile → 0,24–0,30mm
  • Grobe Prototypen → bis 0,32mm (0,4mm Düse)

Geschwindigkeit nach Bereich

  • Outer Wall: 40–80 mm/s — bestimmt Oberflächen-Qualität, nie höher
  • Inner Wall: 100–200 mm/s — unkritisch, hoher Speed OK
  • Infill: 150–350 mm/s — maximaler Speed hier
  • Top Surface: 40–80 mm/s — sichtbar, langsam drucken
  • First Layer: immer max. 30–40 mm/s

Infill-Muster wählen

  • Lightning: Minimal Material, sehr schnell — nur für nicht-tragende Teile
  • Lines/Grid: Standard, gut für die meisten Teile
  • Gyroid: Beste Stärke/Gewichts-Ratio, etwas langsamer
  • Honeycomb: Gut für Teile mit Druckbelastung

Praxis-Workflow

  1. Baseline mit aktuellem Profil drucken und Zeit notieren
  2. Schichthöhe um 0,04mm erhöhen — vergleichen
  3. Infill auf 15% setzen wenn Teil nicht-tragend ist
  4. Inner Wall Speed auf 150 mm/s, Outer Wall auf 60 mm/s lassen
  5. Immer nur 1–2 Parameter gleichzeitig ändern
\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #2: Druckzeit vs. Qualit\\u00e4t (2026-03-24)','','inherit','closed','closed','','335-revision-v1','','','2026-03-24 19:52:36','2026-03-24 18:52:36','',335,'http://87.106.117.190/?p=355',0,'revision','',0), +(356,0,'2026-03-24 19:52:37','2026-03-24 18:52:37','\n
\n
Einsteiger

Maßhaltigkeit verbessern — Elefantenfuß, Schrumpfung, Kalibrierung

Warum deine Teile nicht passen und wie du es dauerhaft behebst.

\n

Warum stimmen die Maße nicht?

Selbst gut druckende Drucker erzeugen Teile die um 0,1–0,5mm von der STL abweichen. Die häufigsten Ursachen: Elefantenfuß, thermische Schrumpfung und falsch kalibrierter Flow.

Elefantenfuß beheben

Elefantenfuß entsteht wenn der erste Layer zu stark gequetscht wird. Das Material quillt seitlich aus und macht den unteren Bereich breiter als geplant.

  • Z-Offset um 0,05mm erhöhen (Düse etwas weiter weg vom Bett)
  • Im Slicer \"Elephant Foot Compensation\" auf 0,1–0,2mm setzen
  • First Layer Flow auf 95% reduzieren

Thermische Schrumpfung

MaterialSchrumpfungSkalierungs-Faktor
PLA0,2–0,4%1,002–1,004
PETG0,3–0,5%1,003–1,005
ABS/ASA0,5–0,8%1,005–1,008
TPU0,5–1,5%1,005–1,015

Flow-Rate kalibrieren

  1. Kalibrierungs-Würfel drucken (20x20x20mm)
  2. Mit Messschieber messen
  3. Wenn 20,3mm statt 20mm: Flow um 1,5% reduzieren
  4. Neue Flow = (20 / gemessener Wert) × aktueller Flow-Wert
  5. Iterativ bis alle 3 Achsen stimmen

Toleranzen für Passungen

  • Stramme Passungen (Press-Fit): 0,1–0,15mm Spiel pro Seite
  • Gleitpassungen: 0,2–0,3mm Spiel pro Seite
  • Lose Passungen (Rotation): 0,3–0,5mm Spiel pro Seite
  • Schrauben in gedruckte Löcher: Loch 0,2–0,4mm größer als Nenndurchmesser
\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #1: Ma\\u00dfhaltigkeit verbessern (2026-03-24)','','inherit','closed','closed','','331-revision-v1','','','2026-03-24 19:52:37','2026-03-24 18:52:37','',331,'http://87.106.117.190/?p=356',0,'revision','',0), +(357,0,'2026-03-24 19:52:38','2026-03-24 18:52:38','\n
\n
Material

ASA und ABS erfolgreich drucken

Hitzestabil, UV-beständig, schwierig — aber mit der richtigen Technik beherrschbar.

\n

Wann brauche ich ASA oder ABS?

  • Dauerhaft über 60°C (Motorraum, Heizung, Sonneneinstrahlung im Auto)
  • Outdoor-Einsatz mit UV-Belastung (ASA deutlich UV-stabiler als ABS)
  • Mechanische Belastung bei Hitze
  • Chemische Resistenz gegen Lösungsmittel

ASA vs. ABS

EigenschaftABSASA
UV-StabilitätSchlecht (vergilbt)Sehr gut
Hitzebeständigkeit~100°C~100°C
WarpingStarkEtwas weniger
EmpfehlungLegacy-MaterialBevorzugen

Enclosure ist Pflicht

  • Ohne Enclosure: Warping praktisch unvermeidbar
  • Bambu P1S/X1C: Eingebaut — ideal
  • Ender/Prusa: DIY aus Ikea Lack-Tisch oder Karton
  • Mindesttemperatur im Druckraum: 40–50°C

Optimale Druckeinstellungen

  • Düse: ABS 230–250°C, ASA 240–260°C
  • Bett: 100–110°C (PEI oder Garolite)
  • Fan: 0–20% (mehr = mehr Warping)
  • Speed: max. 60 mm/s

Warping-Checkliste

  1. Bett mit Isopropanol reinigen
  2. Enclosure auf Temperatur bringen (~10 min)
  3. Brim: 8–10mm für ABS, 5–8mm für ASA
  4. Fan in ersten 5 Layern auf 0%
  5. Nach Druck: Enclosure-Tür erst nach 30min öffnen

Gesundheitshinweis

ABS und ASA setzen Styroldämpfe frei. Immer in gut belüfteten Räumen oder mit HEPA + Aktivkohle-Filter drucken.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #2: ASA/ABS Grundlagen (2026-03-22)','','inherit','closed','closed','','314-revision-v1','','','2026-03-24 19:52:38','2026-03-24 18:52:38','',314,'http://87.106.117.190/?p=357',0,'revision','',0), +(358,0,'2026-03-24 19:52:39','2026-03-24 18:52:39','\n
\n
Material

TPU erfolgreich drucken — flexibles Filament meistern

Direct Drive vs. Bowden, Retraction, Geschwindigkeit — alles was du wissen musst.

\n

Wann TPU?

TPU ist gummiartig, sehr zäh und resistent gegen Öle. Perfekt für Dichtungen, Schutzhüllen, Dämpfer, Griffe und alles was Flexibilität braucht.

Shore-Härtegrade

Shore AFlexibilitätDruckbarkeit
85A–87ASehr weichSchwierig
90A–92AWeichMittel
95AMittel — Empfehlung für EinsteigerGut
98A+Eher hartSehr gut

Direct Drive ist Pflicht

Weiches TPU (unter 95A) knickt im Bowden-Schlauch. Direct Drive ist notwendig. Bambu alle Modelle, Prusa MK4, Ender 3 S1/Neo.

Druckeinstellungen

  • Düse: 220–240°C
  • Bett: 30–60°C
  • Speed: 20–35 mm/s (Schlüssel ist Langsamkeit)
  • Retraction DD: 0,5–1,5mm (wenig!)
  • Fan: 30–60%

Häufige Probleme

  • Stringing: Retraction erhöhen, Temperatur um 5°C senken
  • Knickt im Extruder: Speed reduzieren, Direct Drive verwenden
  • Haftet nicht: Bett wärmer, erste Schicht auf 15 mm/s

Lagerung

TPU zieht Feuchtigkeit an. Nasses TPU = Bläschen und schlechte Qualität. Trocknen: 55°C, 6–8h. Danach luftdicht mit Silica-Gel lagern.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #1: TPU drucken (2026-03-22)','','inherit','closed','closed','','310-revision-v1','','','2026-03-24 19:52:39','2026-03-24 18:52:39','',310,'http://87.106.117.190/?p=358',0,'revision','',0), +(359,0,'2026-03-24 19:52:41','2026-03-24 18:52:41','\n
\n
Material

PETG ohne Frust — das komplette Setup

Zäh, wasserfest, hitzestabil — einfacher als sein Ruf wenn richtig eingestellt.

\n

Wann PETG statt PLA?

EigenschaftPLAPETG
Wärmeformbeständigkeit~55–60°C~75–85°C
SchlagzähigkeitSprödeSehr zäh
FeuchtigkeitsresistenzGeringGut
StringingGeringHoch

Optimale Einstellungen

  • Düse: 230–245°C (Start: 240°C)
  • Bett: 70–85°C
  • Fan: 30–50%
  • Speed: 40–80 mm/s
  • Retraction DD: 0,5–1,5mm
  • Erste Schicht: max. 30 mm/s, etwas höherer Z-Offset als PLA

Stringing bekämpfen

  1. Temperatur auf 235°C senken
  2. Retraction auf bis zu 2mm erhöhen
  3. Travel-Speed auf 180–250 mm/s erhöhen
  4. \"Wipe on Retract\" aktivieren
  5. \"Avoid crossing perimeters\" aktivieren

Bett-Haftung

PETG haftet sehr gut an PEI — manchmal zu gut. Erst vollständig abkühlen lassen (unter 30°C), dann biegen zum Ablösen. Nie Gewalt anwenden, Druckplatte kann sich beschädigen.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #2: PETG ohne Frust (2026-03-21)','','inherit','closed','closed','','304-revision-v1','','','2026-03-24 19:52:41','2026-03-24 18:52:41','',304,'http://87.106.117.190/?p=359',0,'revision','',0), +(360,0,'2026-03-24 19:52:42','2026-03-24 18:52:42','\n
\n
Fehleranalyse

Warping dauerhaft vermeiden

Warum sich Ecken abheben und wie du es ein für alle Mal löst.

\n

Ursache

Warping entsteht durch thermische Spannung: Das Filament kühlt ungleichmäßig ab. Die untere Schicht kühlt schneller als die obere, Ecken heben sich ab.

Warping-Risiko nach Material

MaterialRisikoHauptmaßnahme
PLAGeringBett reinigen
PETGMittel80°C Bett + Brim
ABSSehr hochEnclosure + Brim + 110°C
ASAHochEnclosure + Brim + 105°C

Schritt 1: Bett reinigen

  1. Druckplatte unter warmem Wasser mit Spülmittel waschen
  2. Mit Isopropanol (90%+) nachwischen
  3. Nie mehr mit bloßen Fingern auf die Druckfläche
  4. Alle 20–30 Drucke tiefenreinigen

Schritt 2: Betttemperatur

  • PLA: 60°C Standard, 65°C bei Problemen
  • PETG: 80–85°C
  • ABS: 100–110°C
  • ASA: 100–105°C

Schritt 3: Brim

  • PLA kleine Teile: 3–5mm
  • PETG, große Teile: 5–8mm
  • ABS/ASA: 8–15mm (je größer das Teil, desto mehr)

Schritt 4: Kühlung reduzieren

Zu viel Kühlung verstärkt Warping. ABS/ASA: Fan 0%. PETG: max. 40% Fan.

Schritt 5: Enclosure für ABS/ASA

Ohne Enclosure ist Warping bei ABS/ASA nahezu unvermeidbar. DIY aus Ikea Lack-Tisch oder Karton reicht für den Anfang.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #1: Warping vermeiden (2026-03-21)','','inherit','closed','closed','','300-revision-v1','','','2026-03-24 19:52:42','2026-03-24 18:52:42','',300,'http://87.106.117.190/?p=360',0,'revision','',0), +(361,0,'2026-03-24 20:00:16','2026-03-24 19:00:16','\n
\n
Einsteiger

PLA perfekt einstellen — der komplette Parameter-Guide

Saubere Oberflächen, stabile Layer, kein Stringing — mit den richtigen Werten von Anfang an.

\n

Warum ist PLA der beste Einstieg?

PLA (Polylactic Acid) ist das am leichtesten druckbare Filament. Es haftet gut, schrumpft kaum, riecht wenig und vergibt Fehler. Für 95% aller Dekorationsteile und nicht-hitzebelasteten Alltagsobjekte ist PLA die erste Wahl.

\n

Die optimalen Starteinstellungen

ParameterStartwertBereich
Düsentemperatur210°C195–225°C
Betttemperatur60°C55–65°C
Schichthöhe0,20mm0,12–0,30mm
Druckgeschwindigkeit60 mm/s30–120 mm/s
Fan-Speed100%80–100%
Retraction (DD)1,0mm0,5–2,0mm
Retraction (Bowden)5,0mm3,0–7,0mm
\n
Faustregel: Jedes Filament verhält sich anders. Starte immer mit den Herstellerangaben auf der Spule und optimiere von dort aus.
\n

Temperatur kalibrieren

Die richtige Drucktemperatur ist der wichtigste Parameter. Zu kalt = Layer Separation und schlechte Haftung. Zu heiß = Stringing, Oozing und schlechte Überhangs.

  • Zu kalte Düse: Rauhe Oberfläche, Layer trennen sich bei Biegung, Unterextrusion
  • Zu heiße Düse: Fadenziehen zwischen Teilen, hängende Overhangs, unscharfe Details
  • Richtig: Glatte Oberfläche, kein Stringing, Overhangs bis 45° ohne Probleme
\n

Druckgeschwindigkeit verstehen

Geschwindigkeit ist druckerspezifisch. Ein Bambu A1 druckt sauber bei 200mm/s, ein Ender 3 knickt bei 100mm/s ein. Wichtig: verschiedene Zonen brauchen verschiedene Speeds:

  • Outer Wall: 40–80 mm/s — sichtbare Außenfläche, langsam für Qualität
  • Inner Wall: 80–150 mm/s — unkritisch
  • Infill: 100–250 mm/s — maximaler Speed hier
  • First Layer: 20–30 mm/s — immer langsam!
  • Top/Bottom: 40–60 mm/s — sichtbar, langsam
\n

Kühlung richtig einsetzen

PLA braucht viel Kühlung für scharfe Details und gute Überhangs. Fan ab Layer 3 auf 80–100%. Ausnahme: erste 2–3 Layer ohne Fan für bessere Bett-Haftung.

\n

Typische PLA-Probleme

  • Stringing: Temperatur um 5°C senken, Retraction erhöhen
  • Layer Separation: Temperatur erhöhen, Speed reduzieren
  • Warping: Bett reinigen, Betttemp auf 65°C, Brim hinzufügen
  • Blobbing/Oozing: Pressure Advance kalibrieren, Retraction erhöhen
  • Rauhe Top-Oberfläche: Ironing aktivieren, mehr Top-Layers
\n
Nächster Schritt: Nach erfolgreichem PLA-Druck empfehlen wir den Stringing-Guide für das Feintuning.
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #1: PLA perfekt einstellen (2026-03-20)','','inherit','closed','closed','','290-revision-v1','','','2026-03-24 20:00:16','2026-03-24 19:00:16','',290,'http://87.106.117.190/?p=361',0,'revision','',0), +(362,0,'2026-03-24 20:00:17','2026-03-24 19:00:17','\n
\n
Slicer

Stringing dauerhaft eliminieren — Retraction, Temperatur, Travel

Fadenziehen zwischen Druckteilen — systematisch diagnostizieren und dauerhaft beheben.

\n

Was ist Stringing?

Stringing (Fadenziehen) entsteht wenn die Düse zwischen zwei getrennten Bereichen verfahrt und dabei Kunststoff-Fäden hinterlässt. Ursache: Schmelze tritt unkontrolliert aus der Düse aus während sie sich bewegt.

\n

Die drei Hauptursachen

UrsacheSymptomLösung
Zu hohe TemperaturDünne, viele Fäden überallTemperatur um 5–10°C senken
Retraction zu geringDicke Fäden zwischen TürmenRetraction erhöhen
Travel-Speed zu langsamFäden hängen durchTravel-Speed auf 180+ mm/s
\n

Schritt 1: Temperatur

Hohe Temperatur macht das Filament flüssiger und es läuft leichter aus der Düse. Erste Maßnahme: Temperatur in 5°C-Schritten senken bis Stringing nachlässt. Grenze: Schichthaftung darf nicht schlechter werden.

  • PLA: 195–210°C wenn Stringing auftritt
  • PETG: 230–235°C (PETG neigt stark zu Stringing)
  • TPU: 220–228°C
\n

Schritt 2: Retraction einstellen

Retraction zieht das Filament beim Travel-Move zurück damit keine Schmelze aus der Düse tropft.

Extruder-TypStartMaximum
Direct Drive (Bambu, Prusa, Ender S1)0,8mm2,5mm
Bowden kurz (<400mm)3,5mm6mm
Bowden lang (>400mm)5mm8mm
TPU / Flexibel0,5mm1,5mm
\n
Achtung: Zu viel Retraction verursacht Unter-Extrusion und Gaps. Nie blind erhöhen — immer testen.
\n

Schritt 3: Travel-Speed und Strategien

  • Travel-Speed: 180–250 mm/s — je schneller die Düse bewegt sich, desto weniger Zeit zum Faden ziehen
  • Combing aktivieren: Düse bleibt innerhalb des Druckteils während Travel-Moves (verhindert Fäden auf Außenflächen)
  • Avoid crossing perimeters: Fährt um die Außenwand herum statt drüber
  • Wipe on retract: Düse wischt sich vor dem Travel-Move ab
\n

Slicer-spezifische Einstellungen

  • OrcaSlicer: Seam → Scarf Joint aktivieren für fast unsichtbare Naht-Position
  • PrusaSlicer: Print Settings → Speed → Travel erhöhen, Retraction → Wipe aktivieren
  • Bambu Studio: Meist schon optimiert; bei Bedarf Retraction manuell anpassen
\n

Stringing-Test

Drucke den klassischen \"Stringing Test\" — zwei Türme 20mm auseinander mit 10 Travel-Moves dazwischen. Damit siehst du sofort den Effekt jeder Änderung ohne ein komplexes Teil zu verschwenden.

\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #2: Stringing reduzieren (2026-03-20)','','inherit','closed','closed','','294-revision-v1','','','2026-03-24 20:00:17','2026-03-24 19:00:17','',294,'http://87.106.117.190/?p=362',0,'revision','',0), +(363,0,'2026-03-24 20:00:24','2026-03-24 19:00:24','\n
\n
Slicer

Support richtig setzen — Tree, Normal, Organic im Vergleich

Wann welche Support-Methode, wie du Material sparst und Kontaktflächen sauber bekommst.

\n

Wann brauche ich Support?

Support ist nötig wenn Überhänge über 45–50° (je nach Drucker und Material) gedruckt werden müssen. Ohne Support sagen die Schichten durch. Ziel: so wenig Support wie nötig für saubere Ergebnisse.

\n

Support-Typen im Vergleich

TypBeschreibungIdeal fürNachteil
Normal (Grid)Gerades GitternetzEinfache, flache ÜberhangsSchwer zu entfernen
Tree / OrganicBaumstruktige StrukturenOrganische Formen, FigurenLängere Slicezeit
LightningMinimale StützpunkteEinfache Bridges, wenig KontaktNicht stabil
SnugEng anliegendPräzise KontaktflächenSchwerer zu entfernen
\n

Bauteilorientierung optimieren

Die wichtigste Support-Entscheidung ist vor dem Slicer: die Ausrichtung des Bauteils. Viele Supports lassen sich durch kluge Positionierung vermeiden:

  • Löcher horizontal drucken statt vertikal — keine Supports nötig
  • Teil um 45° kippen wenn dadurch Überhangs wegfallen
  • Flache Seiten als Druckfläche verwenden (bessere Stabilität)
  • Brücken (Bridges) bis 60mm kommen ohne Support aus
\n

Support-Einstellungen optimieren

  • Support Z-Distance: 0,2mm für leichtes Ablösen, 0,1mm für sauberere Oberflächen
  • Support Interface: 2–3 dichte Interface-Layer verbessern die Qualität der Unterseite drastisch
  • Support Density: 10–20% reicht meist aus (mehr erhöht Material ohne Qualitätsvorteil)
  • Support Speed: Kann schnell sein (100+ mm/s), da Qualität egal
\n
Tipp: Paint-on Supports — In PrusaSlicer und OrcaSlicer kannst du Supports manuell einzeichnen. Nur dort Support wo nötig, nicht automatisch überall.
\n

Support entfernen ohne Schäden

  1. Teil vollständig abkühlen lassen (mindestens 10min)
  2. Schneidzange für erste grobe Entfernung
  3. Spitze Zange oder Messer für Reste direkt an der Oberfläche
  4. Bei Schäden an der Kontaktfläche: höheren Z-Distance einstellen
  5. Support Interface aktivieren für sauberere Ablösung
\n

Slicer-Empfehlungen 2026

  • OrcaSlicer: Organic/Tree Support sehr gut, Scarf-Seam für saubere Nähte
  • PrusaSlicer: Organic Support und Paint-on sind Stärken
  • Bambu Studio: Automatische Support-Optimierung für Bambu-Drucker
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #1: Support richtig setzen (2026-03-23)','','inherit','closed','closed','','321-revision-v1','','','2026-03-24 20:00:24','2026-03-24 19:00:24','',321,'http://87.106.117.190/?p=363',0,'revision','',0), +(364,0,'2026-03-24 20:00:25','2026-03-24 19:00:25','\n
\n
Slicer

Slicer-Profil optimieren — von Standard zu perfekt

Systematisch das ideale Profil für dein Filament und deinen Drucker aufbauen.

\n

Warum Standard-Profile nicht reichen

Slicer-Profile sind universelle Ausgangspunkte — sie passen für jeden Drucker, aber für keinen perfekt. Jede Spule Filament, jede Raumtemperatur, jede Düse verhält sich anders. Ein optimiertes Profil kann Qualität und Druckzeit erheblich verbessern.

\n

Der systematische Ansatz

Goldene Regel: Immer nur 1 Parameter gleichzeitig ändern. Sonst weißt du nicht welche Änderung was bewirkt hat.
\n

Phase 1: Kalibrierung (einmalig)

  1. Extruder kalibrieren (E-Steps): 100mm Filament markieren und extrudieren. Abweichung korrigieren.
  2. Flow Rate kalibrieren: 20x20mm Würfel drucken, Wandstärke messen. Soll = 0,4mm, Ist z.B. 0,42mm → Flow auf 95,2%.
  3. Pressure Advance / Linear Advance: Reduziert Blobs an Ecken und Oozing. OrcaSlicer hat integrierten PA-Test.
  4. Resonanz-Kalibrierung: Bei Ghosting/Ringing → Input Shaper (Bambu, Klipper) oder Jerk/Acceleration senken.
\n

Phase 2: Material-spezifisches Profil

SchrittToolWas optimiert wird
Temperatur-TowerOrcaSlicer / CuraOptimale Drucktemperatur
Retraction-TestStringing-TurmRetraction Distance & Speed
Overhang-TestOverhang-FächerFan-Speed, maximaler Überhangwinkel
Bridge-TestBridge-TestmodellBridge Speed & Fan-Einstellungen
\n

Phase 3: Geschwindigkeit optimieren

Sobald Qualität stimmt, Geschwindigkeit schrittweise erhöhen:

  • Outer Wall auf 80 mm/s erhöhen — drucken — Qualität prüfen
  • Infill auf 200 mm/s — drucken — auf Geräusche/Resonanz prüfen
  • Acceleration erhöhen wenn kein Ringing auftritt
  • Jede Erhöhung in 20–30% Schritten
\n

Profil-Verwaltung

  • Profil speichern: Immer neue Profile als Kopie anlegen, nie das Original überschreiben
  • Benennung: \"PLA_Bambu_20°C_Standard\" statt \"Mein Profil 3\"
  • Backup: Profile regelmäßig exportieren (OrcaSlicer: File → Export → Config Bundle)
  • Community-Profile: GitHub, OrcaSlicer Wiki und Prusa Forum haben optimierte Community-Profile
\n
Tipp: OrcaSlicer\'s integrierte Kalibrierungs-Suite (Calibration-Menü) macht alle wichtigen Tests mit einem Klick. Perfekter Einstieg für systematisches Profil-Tuning.
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Guide #2: Slicer-Profil optimieren (2026-03-23)','','inherit','closed','closed','','325-revision-v1','','','2026-03-24 20:00:25','2026-03-24 19:00:25','',325,'http://87.106.117.190/?p=364',0,'revision','',0), +(365,0,'2026-03-24 20:00:26','2026-03-24 19:00:26','\n
\n
Inspiration

Modelle & Inspiration

Die besten 3D-Druck-Modelle der Woche — kuratiert aus Printables und MakerWorld.

\n\n
\n
Printables Top-Modelle
\n

Trending diese Woche

\n

Beliebte Modelle aus der Printables-Community — nach Likes und Downloads sortiert.

\n
\n \n \n \n \n
\n
\n
\n \"Stargate\n
467 LikesPrintables

Stargate with a working Iris

Voll funktionsfähiges Stargate-Modell mit beweglicher Iris. Eines der technisch beeindruckendsten Community-Modelle.

Zum Modell
\n
\n
\n \"Folding\n
2.5k Likes6.4k Downloads

Folding Wall Hook

Klappbarer Wandhaken — minimalistisch, robust und einfach zu drucken. Einer der beliebtesten Functional-Prints.

Zum Modell
\n
\n
\n \"Full\n
1.5k LikesPrintables

Full Desk Organizer & Monitor Stand

Modularer Schreibtisch-Organizer mit Monitor-Ständer und stapelbaren Schubladen. Sehr anpassbar.

Zum Modell
\n
\n
\n \"Any\n
894 LikesGenerator

Any Box Generator

Parametrischer Box-Generator — gib Maße ein und erhalte eine passende Box. Perfekt für Kleinteile-Aufbewahrung.

Zum Modell
\n
\n
\n \"Tiny\n
1k LikesPrintables

Tiny Table Vise

Kleiner Schraubstock für den Schreibtisch — druckbar, funktional, ideal zum Löten und Basteln.

Zum Modell
\n
\n
\n
\n\n
\n
\n
MakerWorld
\n

MakerWorld Highlights

\n

Top-Modelle von der Bambu-Community-Plattform.

\n
\n
\n \"Keychain\n
MakerWorldTrending

Keychain R2 Star Wars Theme

Mini R2-D2 als Schlüsselanhänger. Einfach zu drucken, kein Support nötig, ideal als Geschenk.

Zum Modell
\n
\n
\n \"Toothbrush\n
MakerWorldFunctional

Dual Oral-B Toothbrush Holder

Halterung für 2 Oral-B Zahnbürsten inkl. Ersatzteile-Aufbewahrung. Passt präzise, einfacher Druck.

Zum Modell
\n
\n
\n \"Honeycomb\n
MakerWorldDesign

Honeycomb Wall Cover

Dekorative Wand-Abdeckung im Wabenmuster für Kabel und Verbindungen. Sieht professionell aus.

Zum Modell
\n
\n
\n

Alle Highlights im Model-Archiv

\n
\n\n
\n
\n
Plattformen
\n

Wo du Modelle findest

\n

Die besten Quellen für druckfertige STL-Dateien.

\n
\n
🖨️

Printables.com

Prusa-Community. Qualitätsgeprüfte Modelle, aktive Nutzer, sehr gute Suche.

Öffnen ↗
\n
🌍

MakerWorld

Bambu Labs Plattform. Schnell wachsend, viele exklusive Premium-Modelle kostenlos.

Öffnen ↗
\n
🗂️

Thingiverse

Älteste Bibliothek. Riesige Auswahl, teils ältere Modelle mit weniger Dokumentation.

Öffnen ↗
\n

MyMiniFactory

Kuratiert und druckoptimiert. Viele künstlerische und figurative Designs.

Öffnen ↗
\n
🔍

Thangs

Geometrie-basierte Suche. Findet ähnliche Modelle zu einem gegebenen Design.

Öffnen ↗
\n
💎

Cults3D

Kostenlose & Premium-Modelle. Viele Designer-Arbeiten mit klarer Lizenzinfo.

Öffnen ↗
\n
\n
\n\n
','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-24 20:00:26','2026-03-24 19:00:26','',10,'http://87.106.117.190/?p=365',0,'revision','',0), +(367,0,'2026-03-24 20:02:24','2026-03-24 19:02:24',' ','','','publish','closed','closed','','367','','','2026-03-24 20:02:24','2026-03-24 19:02:24','',0,'http://87.106.117.190/367/',5,'nav_menu_item','',0), +(368,0,'2026-03-24 20:02:24','2026-03-24 19:02:24','','Ressourcen & Tools','','publish','closed','closed','','ressourcen-tools','','','2026-03-24 20:02:24','2026-03-24 19:02:24','',0,'http://87.106.117.190/ressourcen-tools/',6,'nav_menu_item','',0), +(369,0,'2026-03-24 20:02:25','2026-03-24 19:02:25',' ','','','publish','closed','closed','','369','','','2026-03-24 20:02:25','2026-03-24 19:02:25','',0,'http://87.106.117.190/369/',2,'nav_menu_item','',0), +(370,0,'2026-03-24 20:02:25','2026-03-24 19:02:25','','Trends & News','','publish','closed','closed','','trends-news','','','2026-03-24 20:02:25','2026-03-24 19:02:25','',0,'http://87.106.117.190/trends-news/',3,'nav_menu_item','',0), +(371,0,'2026-03-24 20:02:26','2026-03-24 19:02:26',' ','','','publish','closed','closed','','371','','','2026-03-24 20:02:26','2026-03-24 19:02:26','',0,'http://87.106.117.190/371/',4,'nav_menu_item','',0), +(374,0,'2026-03-24 20:02:27','2026-03-24 19:02:27',' ','','','publish','closed','closed','','374','','','2026-03-24 20:02:27','2026-03-24 19:02:27','',0,'http://87.106.117.190/374/',1,'nav_menu_item','',0), +(375,0,'2026-03-24 20:05:43','2026-03-24 19:05:43','\n\n\n\n\n
\n
\n

OrcaSlicer: Vollständiger Einsteiger-Guide

\n

OrcaSlicer ist der mächtigste kostenlose Slicer für FDM-Druck – mit eingebauten Kalibrier-Tools, multi-color Support und Bambu-Kompatibilität. Dieser Guide führt dich von der Installation bis zum perfekten ersten Druck.

\n\n

Installation & erste Einrichtung

\n

OrcaSlicer ist kostenlos unter github.com/SoftFever/OrcaSlicer verfügbar (Windows, macOS, Linux).

\n\n

Drucker hinzufügen

\n
    \n
  1. Beim Start: Add Printer wählen
  2. \n
  3. Hersteller auswählen (z.B. Bambu Lab, Creality, Prusa, Voron, generisch)
  4. \n
  5. Bei generischem Drucker: Bettgröße, Düsendurchmesser und max. Druckvolumen eingeben
  6. \n
  7. Konfiguration kann später unter Printer Settings angepasst werden
  8. \n
\n\n

Benutzeroberfläche verstehen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
BereichFunktion
Linke LeisteObjekte hinzufügen, anordnen, skalieren, schneiden
Rechtes PanelDruckerauswahl, Filament, Prozess-Profil
Prozess-TabAlle Slicing-Einstellungen (Quality, Strength, Speed)
Calibration-MenüEingebaute Kalibrier-Wizards für Flow, PA, Temperatur
Preview-TabLayer-Ansicht, Geschwindigkeits- und Volumenstrom-Heatmap
\n\n

Wichtigste Einstellungen für Anfänger

\n\n

Prozess-Profil: Quality

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterPLA-EmpfehlungWirkung
Layer Height0.2 mmSchichtdicke, beeinflusst Qualität & Druckzeit
First Layer Height0.2 mmGleich oder leicht größer als Layerhöhe
Walls (Perimeter)3–4Außenwände, mehr = stabiler
Top/Bottom Layers4–5Decklagen, mehr = glattere Oberfläche
Infill Density15–20 %Füllung, für Funktionsteile ≥ 40 %
Infill PatternGrid / GyroidGrid schnell, Gyroid isotrop-stabil
\n\n

Eingebaute Kalibrier-Wizards

\n

OrcaSlicer bietet als einziger kostenloser Slicer vollständige, geführte Kalibrierungen:

\n\n
\n
\n

Flow Rate

\n

Druckt Testobjekte und führt dich durch Über-/Unter-Extrusion

\n
\n
\n

Pressure Advance

\n

Kalibriert Filament-Druckaufbau beim Beschleunigen

\n
\n
\n

Temperatur-Turm

\n

Ermittelt optimale Drucktemperatur per Einzeldruck

\n
\n
\n

Retraction Test

\n

Findet optimalen Retract-Wert für dein Setup

\n
\n
\n\n

Kalibrier-Workflow: Schritt für Schritt

\n
    \n
  1. Calibration → Flow Rate (Coarse) – grobe Flow-Kalibrierung, Wert anpassen
  2. \n
  3. Calibration → Flow Rate (Fine) – feine Anpassung, ±5 % Bereich
  4. \n
  5. Calibration → Pressure Advance – PA-Wert im Filamentprofil speichern
  6. \n
  7. Calibration → Temperature – Temperaturturm, bestes Layer-Aussehen notieren
  8. \n
  9. Filamentprofil speichern – Werte im Filament-Preset hinterlegen
  10. \n
\n\n

Support-Einstellungen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
TypWann nutzenEinstellung
Normal (Auto)Standard-Überhänge > 45°Support → Normal, Threshold 40°
Snug (Tree)Organische Formen, leichte EntfernungSupport → Tree, Style Organic
Manuell (Paint-On)Nur spezifische Flächen stützenSupport Painter → Brush auf Fläche
\n\n

Profil exportieren & teilen

\n
    \n
  1. Prozess-Profil anpassen und testen
  2. \n
  3. File → Export → Export Config Bundle
  4. \n
  5. Datei enthält Drucker + Filament + Prozess-Profile
  6. \n
  7. Kann per OrcaSlicer User Presets auf orca.tools geteilt werden
  8. \n
\n\n
\n Tipp:\n Nutze den Preview → Color Scheme: Volumetric Flow Rate, um Stellen zu finden, wo dein Drucker zu schnell oder zu langsam druckt. Rote Stellen = zu hoher Volumenstrom = mögliche Unterextrusion.\n
\n\n
\n
\n\n\n','OrcaSlicer: Vollständiger Einsteiger-Guide','','publish','closed','closed','','guide-orcaslicer-einsteiger','','','2026-03-27 07:15:56','2026-03-25 21:22:43','',0,'http://87.106.117.190/guide-orcaslicer-einsteiger/',0,'post','',0), +(376,0,'2026-03-24 20:05:44','2026-03-24 19:05:44','\n\n\n\n\n
\n
\n

Ultimaker Cura: Tipps & versteckte Einstellungen

\n

Cura ist der meistgenutzte Slicer weltweit – aber viele seiner mächtigsten Features sind standardmäßig ausgeblendet. Dieser Guide zeigt dir, wie du aus Cura das Maximum herausholst.

\n\n

Einstellungen sichtbar machen

\n

Cura versteckt viele Parameter. So aktivierst du alle:

\n
    \n
  1. Preferences → Configure Cura → Settings öffnen
  2. \n
  3. Show all settings aktivieren
  4. \n
  5. Alternativ: In den Einstellungen das 🔍-Symbol nutzen und direkt nach Parametern suchen
  6. \n
  7. Wichtig: Einstellungen mit ⚙️ sind per Rechtsklick als \"sichtbar\" markierbar
  8. \n
\n\n

Empfohlene Einstellungen für PLA

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterWertCura-Kategorie
Layer Height0.2 mmQuality
Wall Count3Shell
Top/Bottom Layers4Shell
Infill Density20 %Infill
Print Temp210 °CMaterial
Bed Temp60 °CMaterial
Print Speed50 mm/sSpeed
Retraction Distance5–7 mm (Bowden), 0.5–2 mm (DD)Travel
Retraction Speed45 mm/sTravel
Fan Speed100 %Cooling
\n\n

Versteckte Power-Features

\n\n
\n
\n

Adaptive Layer Height

\n

Passt Schichtdicke automatisch an Geometrie an – weniger Zeit, bessere Kurven

\n
\n
\n

Ironing

\n

Poliert Deckflächen nach dem Drucken – perfekte Oberfläche ohne Schleifen

\n
\n
\n

Coasting

\n

Stoppt Extrusion kurz vor Konturende – reduziert Blobs an Nahtpunkten

\n
\n
\n

Wipe while Retract

\n

Düse fährt beim Retract über vorherigen Pfad – weniger Stringing

\n
\n
\n

Fuzzy Skin

\n

Außenwand mit zufälliger Rauheit – interessante Textureffekte\n

\n
\n

Modifier Meshes

\n

Einstellungen für bestimmte Zonen im Modell – z.B. höherer Infill nur im Gelenk

\n
\n
\n\n

Support-Einstellungen in Cura

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EinstellungEmpfehlungGrund
Support StructureTree (Experimental)Weniger Material, besser ablösbar
Support Overhang Angle50–55°Weniger unnötige Stützen
Support Z Distance0.2–0.25 mmLeichtere Ablösung
Support InterfaceAktivierenGlattere Support-Oberfläche
\n\n

Plugins & Marketplace

\n

Cura lässt sich über Marketplace (Shift+Ctrl+P) erweitern:

\n
    \n
  • Auto-Orientation – dreht Modell automatisch in beste Druckposition
  • \n
  • Calibration Shapes – druckt Test-Objekte direkt aus Cura heraus
  • \n
  • MeshInspector – zeigt problematische Stellen im 3D-Modell
  • \n
  • OctoPrint Connection – sendet Prints direkt an OctoPrint/Mainsail/Fluidd
  • \n
\n\n
\n Profil-Tipp:\n Erstelle für jedes Filament ein eigenes Profil unter Preferences → Profiles → Duplicate. Benenne es nach Marke und Farbe (z.B. \"Bambu PLA Basic Schwarz\"). Nie das Standard-Profil überschreiben!\n
\n\n
\n
\n\n\n','Cura: Tipps & versteckte Einstellungen','','publish','closed','closed','','guide-cura-tipps','','','2026-03-27 07:15:56','2026-03-25 21:22:43','',0,'http://87.106.117.190/guide-cura-tipps/',0,'post','',0), +(377,0,'2026-03-24 20:05:45','2026-03-24 19:05:45','\n\n\n\n\n
\n
\n

Bambu Studio: Einsteiger bis Fortgeschrittene

\n

Bambu Studio ist der offizielle Slicer für Bambu Lab Drucker (X1C, P1S, A1 etc.) – basiert auf OrcaSlicer und bietet Cloud-Printing, Multi-Color und vollständige AMS-Integration.

\n\n

Drucker-Modi: welcher ist der richtige?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ModusVerbindungWann nutzen
Cloud ModeInternet → Bambu CloudEinfachster Einstieg, Login erforderlich
LAN ModeLokales NetzwerkKein Internet nötig, mehr Kontrolle
Developer ModeVollständiger LAN-ZugriffOctoPrint/Klipper-ähnliche Kontrolle, SSH
\n\n

Druckqualitätsstufen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ProfilSchichtdickeEinsatz
High Quality (0.08 mm)0.08 mmFiguren, Miniatures, Präzisionsteile
Optimal (0.16 mm)0.16 mmGute Qualität, akzeptable Druckzeit
Standard (0.20 mm)0.20 mmAllzweck, beste Balance
Draft (0.28 mm)0.28 mmPrototypen, schnelle Tests
Extra Draft (0.35 mm)0.35 mmGrößte Objekte, max. Geschwindigkeit
\n\n

AMS (Automatic Material System)

\n

Das AMS ermöglicht Multi-Color-Druck mit bis zu 4 (oder 16 beim AMS Combo) Filamenten:

\n
    \n
  1. Filament-Slots im AMS beladen (Spool richtig einlegen)
  2. \n
  3. Im Slicer: Filament-Panel rechts → Slots zuweisen
  4. \n
  5. Paint-Tool nutzen um Modellflächen einzufärben
  6. \n
  7. Purge-Volumen prüfen – bei dunklen nach hellen Farben erhöhen (60–80 mm³)
  8. \n
  9. Prime Tower aktivieren für konsistente Farbwechsel
  10. \n
\n\n

Versteckte Features in Bambu Studio

\n
\n
\n

Variable Layer Height

\n

Manuell oder automatisch – feine Layer wo es darauf ankommt, grobe Layer für Füllbereiche

\n
\n
\n

Seam Control

\n

Naht ausblenden: Aligned, Rear, Nearest oder manuell per Paint-Tool platzieren

\n
\n
\n

Support Painting

\n

Genau steuern wo Supports entstehen – nur da wo sie wirklich nötig sind

\n
\n
\n

Flush into Objects

\n

Purge-Material in Infill oder Stützen eindrucken statt in Prime Tower

\n
\n
\n

Timelapse

\n

X1C/P1S: Automatischer Timelapse per Kamera – Druckfortschritt aufzeichnen

\n
\n
\n

3D Scan Repair

\n

Beschädigte STL-Meshes beim Import automatisch reparieren lassen

\n
\n
\n\n

Kalibrierung in Bambu Studio

\n

Bambu Studio enthält den selben Kalibrier-Wizard wie OrcaSlicer:

\n
    \n
  1. Calibration → Flow Rate – für neues Filament oder neue Marke
  2. \n
  3. Calibration → Pressure Advance – nach Düsenwechsel
  4. \n
  5. Calibration → Input Shaping (X1C/P1S) – automatisch per Beschleunigungssensor
  6. \n
  7. Calibration → Full Calibration – bei erstem Einrichten empfohlen
  8. \n
\n\n

Cloud vs. LAN: Setup-Unterschiede

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
FunktionCloudLAN
Fernsteuerung✓ von überallNur im Heimnetz
DatenschutzDaten auf Bambu-Servern✓ Komplett lokal
Kamera-Stream
MakerWorld Integration✓ Direkt druckenManueller Download
\n\n
\n Tipp:\n Bambu Studio und OrcaSlicer teilen das gleiche Profil-Format. Du kannst OrcaSlicer-Profile direkt in Bambu Studio importieren und umgekehrt – ideal um Einstellungen zwischen verschiedenen Druckern zu synchronisieren.\n
\n\n
\n
\n\n\n','Bambu Studio: Einsteiger bis Fortgeschrittene','','publish','closed','closed','','guide-bambu-studio','','','2026-03-27 07:15:56','2026-03-25 21:22:43','',0,'http://87.106.117.190/guide-bambu-studio/',0,'post','',0), +(378,0,'2026-03-24 20:06:18','2026-03-24 19:06:18','\n
\n
Einsteiger

PLA perfekt einstellen — der komplette Parameter-Guide

Saubere Oberflächen, stabile Layer, kein Stringing — mit den richtigen Werten von Anfang an.

\n

Warum ist PLA der beste Einstieg?

PLA (Polylactic Acid) ist das am leichtesten druckbare Filament. Es haftet gut, schrumpft kaum, riecht wenig und vergibt Fehler. Für 95% aller Dekorationsteile und nicht-hitzebelasteten Alltagsobjekte ist PLA die erste Wahl.

\n

Die optimalen Starteinstellungen

ParameterStartwertBereich
Düsentemperatur210°C195–225°C
Betttemperatur60°C55–65°C
Schichthöhe0,20mm0,12–0,30mm
Druckgeschwindigkeit60 mm/s30–120 mm/s
Fan-Speed100%80–100%
Retraction (DD)1,0mm0,5–2,0mm
Retraction (Bowden)5,0mm3,0–7,0mm
\n
Faustregel: Jedes Filament verhält sich anders. Starte immer mit den Herstellerangaben auf der Spule und optimiere von dort aus.
\n

Temperatur kalibrieren

Die richtige Drucktemperatur ist der wichtigste Parameter. Zu kalt = Layer Separation und schlechte Haftung. Zu heiß = Stringing, Oozing und schlechte Überhangs.

  • Zu kalte Düse: Rauhe Oberfläche, Layer trennen sich bei Biegung, Unterextrusion
  • Zu heiße Düse: Fadenziehen zwischen Teilen, hängende Overhangs, unscharfe Details
  • Richtig: Glatte Oberfläche, kein Stringing, Overhangs bis 45° ohne Probleme
\n

Druckgeschwindigkeit verstehen

Geschwindigkeit ist druckerspezifisch. Ein Bambu A1 druckt sauber bei 200mm/s, ein Ender 3 knickt bei 100mm/s ein. Wichtig: verschiedene Zonen brauchen verschiedene Speeds:

  • Outer Wall: 40–80 mm/s — sichtbare Außenfläche, langsam für Qualität
  • Inner Wall: 80–150 mm/s — unkritisch
  • Infill: 100–250 mm/s — maximaler Speed hier
  • First Layer: 20–30 mm/s — immer langsam!
  • Top/Bottom: 40–60 mm/s — sichtbar, langsam
\n

Kühlung richtig einsetzen

PLA braucht viel Kühlung für scharfe Details und gute Überhangs. Fan ab Layer 3 auf 80–100%. Ausnahme: erste 2–3 Layer ohne Fan für bessere Bett-Haftung.

\n

Typische PLA-Probleme

  • Stringing: Temperatur um 5°C senken, Retraction erhöhen
  • Layer Separation: Temperatur erhöhen, Speed reduzieren
  • Warping: Bett reinigen, Betttemp auf 65°C, Brim hinzufügen
  • Blobbing/Oozing: Pressure Advance kalibrieren, Retraction erhöhen
  • Rauhe Top-Oberfläche: Ironing aktivieren, mehr Top-Layers
\n
Nächster Schritt: Nach erfolgreichem PLA-Druck empfehlen wir den Stringing-Guide für das Feintuning.
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','PLA perfekt einstellen','','inherit','closed','closed','','290-revision-v1','','','2026-03-24 20:06:18','2026-03-24 19:06:18','',290,'http://87.106.117.190/?p=378',0,'revision','',0), +(379,0,'2026-03-24 20:06:19','2026-03-24 19:06:19','\n
\n
Slicer

Stringing dauerhaft eliminieren — Retraction, Temperatur, Travel

Fadenziehen zwischen Druckteilen — systematisch diagnostizieren und dauerhaft beheben.

\n

Was ist Stringing?

Stringing (Fadenziehen) entsteht wenn die Düse zwischen zwei getrennten Bereichen verfahrt und dabei Kunststoff-Fäden hinterlässt. Ursache: Schmelze tritt unkontrolliert aus der Düse aus während sie sich bewegt.

\n

Die drei Hauptursachen

UrsacheSymptomLösung
Zu hohe TemperaturDünne, viele Fäden überallTemperatur um 5–10°C senken
Retraction zu geringDicke Fäden zwischen TürmenRetraction erhöhen
Travel-Speed zu langsamFäden hängen durchTravel-Speed auf 180+ mm/s
\n

Schritt 1: Temperatur

Hohe Temperatur macht das Filament flüssiger und es läuft leichter aus der Düse. Erste Maßnahme: Temperatur in 5°C-Schritten senken bis Stringing nachlässt. Grenze: Schichthaftung darf nicht schlechter werden.

  • PLA: 195–210°C wenn Stringing auftritt
  • PETG: 230–235°C (PETG neigt stark zu Stringing)
  • TPU: 220–228°C
\n

Schritt 2: Retraction einstellen

Retraction zieht das Filament beim Travel-Move zurück damit keine Schmelze aus der Düse tropft.

Extruder-TypStartMaximum
Direct Drive (Bambu, Prusa, Ender S1)0,8mm2,5mm
Bowden kurz (<400mm)3,5mm6mm
Bowden lang (>400mm)5mm8mm
TPU / Flexibel0,5mm1,5mm
\n
Achtung: Zu viel Retraction verursacht Unter-Extrusion und Gaps. Nie blind erhöhen — immer testen.
\n

Schritt 3: Travel-Speed und Strategien

  • Travel-Speed: 180–250 mm/s — je schneller die Düse bewegt sich, desto weniger Zeit zum Faden ziehen
  • Combing aktivieren: Düse bleibt innerhalb des Druckteils während Travel-Moves (verhindert Fäden auf Außenflächen)
  • Avoid crossing perimeters: Fährt um die Außenwand herum statt drüber
  • Wipe on retract: Düse wischt sich vor dem Travel-Move ab
\n

Slicer-spezifische Einstellungen

  • OrcaSlicer: Seam → Scarf Joint aktivieren für fast unsichtbare Naht-Position
  • PrusaSlicer: Print Settings → Speed → Travel erhöhen, Retraction → Wipe aktivieren
  • Bambu Studio: Meist schon optimiert; bei Bedarf Retraction manuell anpassen
\n

Stringing-Test

Drucke den klassischen \"Stringing Test\" — zwei Türme 20mm auseinander mit 10 Travel-Moves dazwischen. Damit siehst du sofort den Effekt jeder Änderung ohne ein komplexes Teil zu verschwenden.

\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Stringing reduzieren','','inherit','closed','closed','','294-revision-v1','','','2026-03-24 20:06:19','2026-03-24 19:06:19','',294,'http://87.106.117.190/?p=379',0,'revision','',0), +(380,0,'2026-03-24 20:06:20','2026-03-24 19:06:20','\n
\n
Fehleranalyse

Warping dauerhaft vermeiden

Warum sich Ecken abheben und wie du es ein für alle Mal löst.

\n

Ursache

Warping entsteht durch thermische Spannung: Das Filament kühlt ungleichmäßig ab. Die untere Schicht kühlt schneller als die obere, Ecken heben sich ab.

Warping-Risiko nach Material

MaterialRisikoHauptmaßnahme
PLAGeringBett reinigen
PETGMittel80°C Bett + Brim
ABSSehr hochEnclosure + Brim + 110°C
ASAHochEnclosure + Brim + 105°C

Schritt 1: Bett reinigen

  1. Druckplatte unter warmem Wasser mit Spülmittel waschen
  2. Mit Isopropanol (90%+) nachwischen
  3. Nie mehr mit bloßen Fingern auf die Druckfläche
  4. Alle 20–30 Drucke tiefenreinigen

Schritt 2: Betttemperatur

  • PLA: 60°C Standard, 65°C bei Problemen
  • PETG: 80–85°C
  • ABS: 100–110°C
  • ASA: 100–105°C

Schritt 3: Brim

  • PLA kleine Teile: 3–5mm
  • PETG, große Teile: 5–8mm
  • ABS/ASA: 8–15mm (je größer das Teil, desto mehr)

Schritt 4: Kühlung reduzieren

Zu viel Kühlung verstärkt Warping. ABS/ASA: Fan 0%. PETG: max. 40% Fan.

Schritt 5: Enclosure für ABS/ASA

Ohne Enclosure ist Warping bei ABS/ASA nahezu unvermeidbar. DIY aus Ikea Lack-Tisch oder Karton reicht für den Anfang.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Warping vermeiden','','inherit','closed','closed','','300-revision-v1','','','2026-03-24 20:06:20','2026-03-24 19:06:20','',300,'http://87.106.117.190/?p=380',0,'revision','',0), +(381,0,'2026-03-24 20:06:21','2026-03-24 19:06:21','\n
\n
Material

PETG ohne Frust — das komplette Setup

Zäh, wasserfest, hitzestabil — einfacher als sein Ruf wenn richtig eingestellt.

\n

Wann PETG statt PLA?

EigenschaftPLAPETG
Wärmeformbeständigkeit~55–60°C~75–85°C
SchlagzähigkeitSprödeSehr zäh
FeuchtigkeitsresistenzGeringGut
StringingGeringHoch

Optimale Einstellungen

  • Düse: 230–245°C (Start: 240°C)
  • Bett: 70–85°C
  • Fan: 30–50%
  • Speed: 40–80 mm/s
  • Retraction DD: 0,5–1,5mm
  • Erste Schicht: max. 30 mm/s, etwas höherer Z-Offset als PLA

Stringing bekämpfen

  1. Temperatur auf 235°C senken
  2. Retraction auf bis zu 2mm erhöhen
  3. Travel-Speed auf 180–250 mm/s erhöhen
  4. \"Wipe on Retract\" aktivieren
  5. \"Avoid crossing perimeters\" aktivieren

Bett-Haftung

PETG haftet sehr gut an PEI — manchmal zu gut. Erst vollständig abkühlen lassen (unter 30°C), dann biegen zum Ablösen. Nie Gewalt anwenden, Druckplatte kann sich beschädigen.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','PETG ohne Frust drucken','','inherit','closed','closed','','304-revision-v1','','','2026-03-24 20:06:21','2026-03-24 19:06:21','',304,'http://87.106.117.190/?p=381',0,'revision','',0), +(382,0,'2026-03-24 20:06:22','2026-03-24 19:06:22','\n
\n
Material

TPU erfolgreich drucken — flexibles Filament meistern

Direct Drive vs. Bowden, Retraction, Geschwindigkeit — alles was du wissen musst.

\n

Wann TPU?

TPU ist gummiartig, sehr zäh und resistent gegen Öle. Perfekt für Dichtungen, Schutzhüllen, Dämpfer, Griffe und alles was Flexibilität braucht.

Shore-Härtegrade

Shore AFlexibilitätDruckbarkeit
85A–87ASehr weichSchwierig
90A–92AWeichMittel
95AMittel — Empfehlung für EinsteigerGut
98A+Eher hartSehr gut

Direct Drive ist Pflicht

Weiches TPU (unter 95A) knickt im Bowden-Schlauch. Direct Drive ist notwendig. Bambu alle Modelle, Prusa MK4, Ender 3 S1/Neo.

Druckeinstellungen

  • Düse: 220–240°C
  • Bett: 30–60°C
  • Speed: 20–35 mm/s (Schlüssel ist Langsamkeit)
  • Retraction DD: 0,5–1,5mm (wenig!)
  • Fan: 30–60%

Häufige Probleme

  • Stringing: Retraction erhöhen, Temperatur um 5°C senken
  • Knickt im Extruder: Speed reduzieren, Direct Drive verwenden
  • Haftet nicht: Bett wärmer, erste Schicht auf 15 mm/s

Lagerung

TPU zieht Feuchtigkeit an. Nasses TPU = Bläschen und schlechte Qualität. Trocknen: 55°C, 6–8h. Danach luftdicht mit Silica-Gel lagern.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','TPU drucken','','inherit','closed','closed','','310-revision-v1','','','2026-03-24 20:06:22','2026-03-24 19:06:22','',310,'http://87.106.117.190/?p=382',0,'revision','',0), +(383,0,'2026-03-24 20:06:24','2026-03-24 19:06:24','\n
\n
Material

ASA und ABS erfolgreich drucken

Hitzestabil, UV-beständig, schwierig — aber mit der richtigen Technik beherrschbar.

\n

Wann brauche ich ASA oder ABS?

  • Dauerhaft über 60°C (Motorraum, Heizung, Sonneneinstrahlung im Auto)
  • Outdoor-Einsatz mit UV-Belastung (ASA deutlich UV-stabiler als ABS)
  • Mechanische Belastung bei Hitze
  • Chemische Resistenz gegen Lösungsmittel

ASA vs. ABS

EigenschaftABSASA
UV-StabilitätSchlecht (vergilbt)Sehr gut
Hitzebeständigkeit~100°C~100°C
WarpingStarkEtwas weniger
EmpfehlungLegacy-MaterialBevorzugen

Enclosure ist Pflicht

  • Ohne Enclosure: Warping praktisch unvermeidbar
  • Bambu P1S/X1C: Eingebaut — ideal
  • Ender/Prusa: DIY aus Ikea Lack-Tisch oder Karton
  • Mindesttemperatur im Druckraum: 40–50°C

Optimale Druckeinstellungen

  • Düse: ABS 230–250°C, ASA 240–260°C
  • Bett: 100–110°C (PEI oder Garolite)
  • Fan: 0–20% (mehr = mehr Warping)
  • Speed: max. 60 mm/s

Warping-Checkliste

  1. Bett mit Isopropanol reinigen
  2. Enclosure auf Temperatur bringen (~10 min)
  3. Brim: 8–10mm für ABS, 5–8mm für ASA
  4. Fan in ersten 5 Layern auf 0%
  5. Nach Druck: Enclosure-Tür erst nach 30min öffnen

Gesundheitshinweis

ABS und ASA setzen Styroldämpfe frei. Immer in gut belüfteten Räumen oder mit HEPA + Aktivkohle-Filter drucken.

\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','ASA/ABS Grundlagen','','inherit','closed','closed','','314-revision-v1','','','2026-03-24 20:06:24','2026-03-24 19:06:24','',314,'http://87.106.117.190/?p=383',0,'revision','',0), +(384,0,'2026-03-24 20:06:25','2026-03-24 19:06:25','\n
\n
Slicer

Support richtig setzen — Tree, Normal, Organic im Vergleich

Wann welche Support-Methode, wie du Material sparst und Kontaktflächen sauber bekommst.

\n

Wann brauche ich Support?

Support ist nötig wenn Überhänge über 45–50° (je nach Drucker und Material) gedruckt werden müssen. Ohne Support sagen die Schichten durch. Ziel: so wenig Support wie nötig für saubere Ergebnisse.

\n

Support-Typen im Vergleich

TypBeschreibungIdeal fürNachteil
Normal (Grid)Gerades GitternetzEinfache, flache ÜberhangsSchwer zu entfernen
Tree / OrganicBaumstruktige StrukturenOrganische Formen, FigurenLängere Slicezeit
LightningMinimale StützpunkteEinfache Bridges, wenig KontaktNicht stabil
SnugEng anliegendPräzise KontaktflächenSchwerer zu entfernen
\n

Bauteilorientierung optimieren

Die wichtigste Support-Entscheidung ist vor dem Slicer: die Ausrichtung des Bauteils. Viele Supports lassen sich durch kluge Positionierung vermeiden:

  • Löcher horizontal drucken statt vertikal — keine Supports nötig
  • Teil um 45° kippen wenn dadurch Überhangs wegfallen
  • Flache Seiten als Druckfläche verwenden (bessere Stabilität)
  • Brücken (Bridges) bis 60mm kommen ohne Support aus
\n

Support-Einstellungen optimieren

  • Support Z-Distance: 0,2mm für leichtes Ablösen, 0,1mm für sauberere Oberflächen
  • Support Interface: 2–3 dichte Interface-Layer verbessern die Qualität der Unterseite drastisch
  • Support Density: 10–20% reicht meist aus (mehr erhöht Material ohne Qualitätsvorteil)
  • Support Speed: Kann schnell sein (100+ mm/s), da Qualität egal
\n
Tipp: Paint-on Supports — In PrusaSlicer und OrcaSlicer kannst du Supports manuell einzeichnen. Nur dort Support wo nötig, nicht automatisch überall.
\n

Support entfernen ohne Schäden

  1. Teil vollständig abkühlen lassen (mindestens 10min)
  2. Schneidzange für erste grobe Entfernung
  3. Spitze Zange oder Messer für Reste direkt an der Oberfläche
  4. Bei Schäden an der Kontaktfläche: höheren Z-Distance einstellen
  5. Support Interface aktivieren für sauberere Ablösung
\n

Slicer-Empfehlungen 2026

  • OrcaSlicer: Organic/Tree Support sehr gut, Scarf-Seam für saubere Nähte
  • PrusaSlicer: Organic Support und Paint-on sind Stärken
  • Bambu Studio: Automatische Support-Optimierung für Bambu-Drucker
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Support richtig setzen','','inherit','closed','closed','','321-revision-v1','','','2026-03-24 20:06:25','2026-03-24 19:06:25','',321,'http://87.106.117.190/?p=384',0,'revision','',0), +(385,0,'2026-03-24 20:06:26','2026-03-24 19:06:26','\n
\n
Slicer

Slicer-Profil optimieren — von Standard zu perfekt

Systematisch das ideale Profil für dein Filament und deinen Drucker aufbauen.

\n

Warum Standard-Profile nicht reichen

Slicer-Profile sind universelle Ausgangspunkte — sie passen für jeden Drucker, aber für keinen perfekt. Jede Spule Filament, jede Raumtemperatur, jede Düse verhält sich anders. Ein optimiertes Profil kann Qualität und Druckzeit erheblich verbessern.

\n

Der systematische Ansatz

Goldene Regel: Immer nur 1 Parameter gleichzeitig ändern. Sonst weißt du nicht welche Änderung was bewirkt hat.
\n

Phase 1: Kalibrierung (einmalig)

  1. Extruder kalibrieren (E-Steps): 100mm Filament markieren und extrudieren. Abweichung korrigieren.
  2. Flow Rate kalibrieren: 20x20mm Würfel drucken, Wandstärke messen. Soll = 0,4mm, Ist z.B. 0,42mm → Flow auf 95,2%.
  3. Pressure Advance / Linear Advance: Reduziert Blobs an Ecken und Oozing. OrcaSlicer hat integrierten PA-Test.
  4. Resonanz-Kalibrierung: Bei Ghosting/Ringing → Input Shaper (Bambu, Klipper) oder Jerk/Acceleration senken.
\n

Phase 2: Material-spezifisches Profil

SchrittToolWas optimiert wird
Temperatur-TowerOrcaSlicer / CuraOptimale Drucktemperatur
Retraction-TestStringing-TurmRetraction Distance & Speed
Overhang-TestOverhang-FächerFan-Speed, maximaler Überhangwinkel
Bridge-TestBridge-TestmodellBridge Speed & Fan-Einstellungen
\n

Phase 3: Geschwindigkeit optimieren

Sobald Qualität stimmt, Geschwindigkeit schrittweise erhöhen:

  • Outer Wall auf 80 mm/s erhöhen — drucken — Qualität prüfen
  • Infill auf 200 mm/s — drucken — auf Geräusche/Resonanz prüfen
  • Acceleration erhöhen wenn kein Ringing auftritt
  • Jede Erhöhung in 20–30% Schritten
\n

Profil-Verwaltung

  • Profil speichern: Immer neue Profile als Kopie anlegen, nie das Original überschreiben
  • Benennung: \"PLA_Bambu_20°C_Standard\" statt \"Mein Profil 3\"
  • Backup: Profile regelmäßig exportieren (OrcaSlicer: File → Export → Config Bundle)
  • Community-Profile: GitHub, OrcaSlicer Wiki und Prusa Forum haben optimierte Community-Profile
\n
Tipp: OrcaSlicer\'s integrierte Kalibrierungs-Suite (Calibration-Menü) macht alle wichtigen Tests mit einem Klick. Perfekter Einstieg für systematisches Profil-Tuning.
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Slicer-Profil optimieren','','inherit','closed','closed','','325-revision-v1','','','2026-03-24 20:06:26','2026-03-24 19:06:26','',325,'http://87.106.117.190/?p=385',0,'revision','',0), +(386,0,'2026-03-24 20:06:27','2026-03-24 19:06:27','\n
\n
Einsteiger

Maßhaltigkeit verbessern — Elefantenfuß, Schrumpfung, Kalibrierung

Warum deine Teile nicht passen und wie du es dauerhaft behebst.

\n

Warum stimmen die Maße nicht?

Selbst gut druckende Drucker erzeugen Teile die um 0,1–0,5mm von der STL abweichen. Die häufigsten Ursachen: Elefantenfuß, thermische Schrumpfung und falsch kalibrierter Flow.

Elefantenfuß beheben

Elefantenfuß entsteht wenn der erste Layer zu stark gequetscht wird. Das Material quillt seitlich aus und macht den unteren Bereich breiter als geplant.

  • Z-Offset um 0,05mm erhöhen (Düse etwas weiter weg vom Bett)
  • Im Slicer \"Elephant Foot Compensation\" auf 0,1–0,2mm setzen
  • First Layer Flow auf 95% reduzieren

Thermische Schrumpfung

MaterialSchrumpfungSkalierungs-Faktor
PLA0,2–0,4%1,002–1,004
PETG0,3–0,5%1,003–1,005
ABS/ASA0,5–0,8%1,005–1,008
TPU0,5–1,5%1,005–1,015

Flow-Rate kalibrieren

  1. Kalibrierungs-Würfel drucken (20x20x20mm)
  2. Mit Messschieber messen
  3. Wenn 20,3mm statt 20mm: Flow um 1,5% reduzieren
  4. Neue Flow = (20 / gemessener Wert) × aktueller Flow-Wert
  5. Iterativ bis alle 3 Achsen stimmen

Toleranzen für Passungen

  • Stramme Passungen (Press-Fit): 0,1–0,15mm Spiel pro Seite
  • Gleitpassungen: 0,2–0,3mm Spiel pro Seite
  • Lose Passungen (Rotation): 0,3–0,5mm Spiel pro Seite
  • Schrauben in gedruckte Löcher: Loch 0,2–0,4mm größer als Nenndurchmesser
\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Maßhaltigkeit verbessern','','inherit','closed','closed','','331-revision-v1','','','2026-03-24 20:06:27','2026-03-24 19:06:27','',331,'http://87.106.117.190/?p=386',0,'revision','',0), +(387,0,'2026-03-24 20:06:28','2026-03-24 19:06:28','\n
\n
Slicer

Druckzeit vs. Qualität — der richtige Kompromiss

Speed erhöhen ohne Qualität zu opfern — konkrete Parameterwerte.

\n

Das Grundprinzip

Druckzeit und Qualität stehen in einem direkten Spannungsverhältnis. Wer schneller druckt, riskiert Qualitätsverluste — aber nicht immer. Mit den richtigen Parametern lässt sich viel Speed herausholen ohne sichtbare Einbußen.

Die entscheidenden Parameter

ParameterQualitätsdruckSchnelldruckAuswirkung
Schichthöhe0,12–0,16mm0,24–0,30mmGrößter Zeitfaktor
Druckgeschwindigkeit40–60 mm/s150–300 mm/sStark druckerspezifisch
Infill-Dichte20–40%10–15%Bei Sichtteilen kaum sichtbar
Infill-MusterGyroidLightning/LinesLightning: minimal Material
Perimeter3–42Außenwand-Qualität

Schichthöhe: größter Hebel

Die Schichthöhe hat den größten Einfluss auf die Druckzeit. Von 0,2mm auf 0,28mm wechseln reduziert die Zeit um ~25–30% mit kaum sichtbarem Qualitätsverlust bei funktionalen Teilen.

  • Dekorative Teile, sichtbare Oberflächen → 0,12–0,16mm
  • Standard-Alltagsteile → 0,20mm (optimale Balance)
  • Schnelle Prototypen, versteckte Teile → 0,24–0,30mm
  • Grobe Prototypen → bis 0,32mm (0,4mm Düse)

Geschwindigkeit nach Bereich

  • Outer Wall: 40–80 mm/s — bestimmt Oberflächen-Qualität, nie höher
  • Inner Wall: 100–200 mm/s — unkritisch, hoher Speed OK
  • Infill: 150–350 mm/s — maximaler Speed hier
  • Top Surface: 40–80 mm/s — sichtbar, langsam drucken
  • First Layer: immer max. 30–40 mm/s

Infill-Muster wählen

  • Lightning: Minimal Material, sehr schnell — nur für nicht-tragende Teile
  • Lines/Grid: Standard, gut für die meisten Teile
  • Gyroid: Beste Stärke/Gewichts-Ratio, etwas langsamer
  • Honeycomb: Gut für Teile mit Druckbelastung

Praxis-Workflow

  1. Baseline mit aktuellem Profil drucken und Zeit notieren
  2. Schichthöhe um 0,04mm erhöhen — vergleichen
  3. Infill auf 15% setzen wenn Teil nicht-tragend ist
  4. Inner Wall Speed auf 150 mm/s, Outer Wall auf 60 mm/s lassen
  5. Immer nur 1–2 Parameter gleichzeitig ändern
\n
\n

Weitere Guides

Alle Guides und Tutorials in der Übersicht.

\n
','Druckzeit vs. Qualität','','inherit','closed','closed','','335-revision-v1','','','2026-03-24 20:06:28','2026-03-24 19:06:28','',335,'http://87.106.117.190/?p=387',0,'revision','',0), +(388,0,'2026-03-24 20:06:29','2026-03-24 19:06:29','
Fehleranalyse

Layer Separation beheben

Schichten lösen sich ab — Ursachen diagnostizieren und dauerhaft beheben.

Was ist Layer Separation?

Layer Separation (Schichttrennung) bedeutet, dass sich einzelne Druckschichten voneinander ablösen. Das Ergebnis ist ein mechanisch schwaches Teil, das unter Belastung auseinanderbricht. Im Gegensatz zu Delamination (sichtbare Risse) können sich Schichten auch unsichtbar schlecht verbunden haben.

Hauptursachen & Lösungen

UrsacheSymptomLösung
Temperatur zu niedrigSchichten trennen sich bei Biegung+5–10°C erhöhen
Druckgeschwindigkeit zu hochRisse zwischen LayernSpeed um 20% reduzieren
Schichthöhe zu großSichtbare Lücken zwischen LayernMax 75% des Düsendurchmessers
Zu viel KühlungSchichten verbinden sich nichtFan Speed reduzieren
Feuchtes FilamentBlasen + schlechte HaftungFilament trocknen (65°C, 6h)

Temperatur korrekt einstellen

Die Drucktemperatur ist der häufigste Grund für Layer Separation. Als Faustregel gilt: Die Schichten müssen heiß genug aufgetragen werden, damit das Material mit der darunterliegenden Schicht verschmilzt.

  • PLA: 200–220°C — bei Separation auf 215°C erhöhen
  • PETG: 230–245°C — unterschätzt oft; 240°C ist ein guter Startpunkt
  • ABS/ASA: 240–260°C — Enclosure notwendig, sonst kühlt Material zu schnell ab
  • TPU: 220–235°C — langsam drucken, Kühlung reduzieren
Tipp: Einen Temperatur-Tower drucken (Temperature Tower) um die optimale Temperatur zu finden. OrcaSlicer hat diesen Test integriert.

Schichthöhe & Düsendurchmesser

Die Schichthöhe darf maximal 75–80% des Düsendurchmessers betragen. Bei 0,4mm Düse also maximal 0,3mm Schichthöhe. Wird diese Grenze überschritten, kann das Material die darunterliegende Schicht nicht mehr vollständig benetzen.

  • 0,4mm Düse → max. 0,3mm Schichthöhe (empfohlen: 0,2mm)
  • 0,6mm Düse → max. 0,45mm Schichthöhe
  • 0,8mm Düse → max. 0,6mm Schichthöhe

Kühlung richtig balancieren

Zu viel Kühlung verhindert, dass Schichten miteinander verschmelzen. Besonders bei ABS und ASA sollte die Kühlung stark reduziert oder komplett deaktiviert werden. Bei PETG reichen 30–50% Fan-Speed.

  • PLA: 80–100% Fan — keine Layer Separation durch Kühlung
  • PETG: 30–50% Fan — mehr kühlt schlechtere Haftung
  • ABS/ASA: 0–20% Fan — Enclosure verwenden
  • TPU: 30–60% Fan — je nach Härtegrad

Feuchtes Filament erkennen & trocknen

Feuchtes Filament zischt und knistert beim Drucken (durch verdampfendes Wasser). Neben Layer Separation entstehen Blasen, raue Oberflächen und Stringing. Lösung: Filament vor dem Druck trocknen.

  • PLA: 45°C, 4–6h im Trockner oder Backofen
  • PETG: 65°C, 4–6h
  • ABS/ASA: 80°C, 4–6h
  • TPU: 55°C, 6–8h
Langzeitlösung: Filament in luftdichten Boxen mit Silica-Gel lagern. Trockenboxen (z.B. von Sunlu) halten das Filament beim Drucken trocken.

Weitere Guides

Alle Fehleranalyse- und Material-Guides in der Übersicht.

','Layer Separation beheben','','inherit','closed','closed','','339-revision-v1','','','2026-03-24 20:06:29','2026-03-24 19:06:29','',339,'http://87.106.117.190/?p=388',0,'revision','',0), +(389,0,'2026-03-24 20:06:31','2026-03-24 19:06:31','
Einsteiger

Erstes Modell drucken

Von der STL-Datei bis zum fertigen Druck — der vollständige Workflow für Einsteiger.

Was du brauchst

Checkliste: Drucker mit kalibriertem Bett · PLA-Filament (1,75mm) · Slicer-Software (OrcaSlicer empfohlen) · STL-Datei deines Modells

Schritt-für-Schritt

  1. STL-Datei finden — Printables.com oder MakerWorld. Für den ersten Druck: einen einfachen Würfel oder einen Benchy (Kalibrierdruck) wählen.
  2. Slicer installieren — OrcaSlicer herunterladen und installieren. Dein Druckerprofil auswählen (die meisten gängigen Drucker sind vorinstalliert).
  3. Modell importieren — STL-Datei in den Slicer ziehen. Das Modell wird automatisch auf der Druckplatte platziert.
  4. Profil wählen — Für den ersten Druck: Standard-Qualitätsprofil (0,2mm Schichthöhe, 15% Infill). Filamenttyp auf PLA setzen.
  5. Slicen — Auf \"Slice\" klicken. Der Slicer zeigt Druckzeit, Materialverbrauch und eine Vorschau der Layerpfade.
  6. Auf Drucker übertragen — Per USB-Stick, SD-Karte oder direkt via WLAN (Bambu/Prusa Connect). Datei als .gcode oder .3mf speichern.
  7. Druck starten — Drucker vorheizen lassen, Bett leveln (bei neuen Druckern: Auto-Leveling abwarten), dann Druck starten.
  8. Ersten Layer beobachten — Die erste Schicht ist entscheidend. Sie soll glatt, gleichmäßig und gut haftend sein. Wenn nicht: Z-Offset anpassen.

Optimale Einstellungen für PLA (Erster Druck)

  • Düsentemperatur: 210°C (Startwert, nach Hersteller anpassen)
  • Betttemperatur: 60°C
  • Schichthöhe: 0,2mm
  • Infill: 15–20% (für Deko-Teile), 40%+ für Funktionsteile
  • Druckgeschwindigkeit: 50mm/s (Einsteiger), 100mm/s (mit Erfahrung)
  • Kühlung: 80–100% Fan ab Layer 3
Tipp: Benchy drucken\\! Der 3DBenchy ist das Standard-Kalibriermodell der Community. An ihm sieht man sofort, ob Stringing, Warping, Überhänge oder Brücken Probleme machen. Kostenlos auf Printables.com.

Häufige Probleme beim ersten Druck

  • Druck haftet nicht → Bett reinigen (Isopropanol), Z-Offset erhöhen, Betttemp auf 65°C
  • Stringing → Temperatur um 5°C senken, Retraction aktivieren
  • Schichten lösen sich ab → Temperatur erhöhen, Druckspeed reduzieren
  • Warping an Ecken → Brim hinzufügen (5–10mm), Zugluft vermeiden
  • Unter-Extrusion (Lücken) → Extruder-Kalibrierung, Flow-Rate prüfen
Nächste Schritte: Nach dem ersten erfolgreichen Druck empfehlen wir den PLA-Einstellungs-Guide und den Stringing-Guide.

Bereit für mehr?

Entdecke alle Guides für Einsteiger und Fortgeschrittene.

','Erstes Modell drucken','','inherit','closed','closed','','340-revision-v1','','','2026-03-24 20:06:31','2026-03-24 19:06:31','',340,'http://87.106.117.190/?p=389',0,'revision','',0), +(390,0,'2026-03-24 20:07:44','2026-03-24 19:07:44','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap\");.m3d-wrap,.m3d-wrap *{box-sizing:border-box;margin:0;padding:0}.m3d-wrap{font-family:\"Inter\",-apple-system,sans-serif;background:#050505;color:#fff;overflow-x:hidden;margin:-3em -3em -3em!important}.m3d-wrap a{text-decoration:none;color:inherit}.m3d-ph{position:relative;padding:120px 48px 80px;background:linear-gradient(180deg,#0a0a0a,#050505);overflow:hidden}.m3d-ph::before{content:\"\";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(249,115,22,.1),transparent 60%);pointer-events:none}.m3d-ph-i{position:relative;z-index:1;max-width:1280px;margin:0 auto}.ew{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:20px}.ew::before{content:\"\";display:block;width:20px;height:2px;background:#f97316}.m3d-ph h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-bottom:20px}.m3d-ph p{font-size:17px;color:rgba(255,255,255,.45);max-width:520px;line-height:1.65}.sec{max-width:1280px;margin:0 auto;padding:80px 48px}.sl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#f97316;margin-bottom:16px}.sh{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.dv{height:1px;background:rgba(255,255,255,.06);margin:0 48px}.g3{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.cd{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:28px;transition:border-color .3s,transform .25s;position:relative;overflow:hidden}.cd::before{content:\"\";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.5),transparent);opacity:0;transition:opacity .3s}.cd:hover{border-color:rgba(249,115,22,.25);transform:translateY(-3px)}.cd:hover::before{opacity:1}.tg{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:14px}.to{background:rgba(249,115,22,.1);color:#f97316;border:1px solid rgba(249,115,22,.2)}.tg2{background:rgba(63,185,80,.1);color:#3fb950;border:1px solid rgba(63,185,80,.2)}.tb{background:rgba(88,166,255,.1);color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.tp{background:rgba(188,140,255,.1);color:#bc8cff;border:1px solid rgba(188,140,255,.2)}.cd h3{font-size:17px;font-weight:700;line-height:1.3;margin-bottom:10px;color:#fff}.cd p{font-size:14px;color:rgba(255,255,255,.45);line-height:1.6;margin-bottom:18px}.lk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#f97316;transition:gap .2s}.lk:hover{gap:10px;color:#fb923c}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:700;transition:transform .2s;cursor:pointer;border:none}.bo{background:#f97316;color:#fff}.bo:hover{background:#ea6f0c;transform:translateY(-2px);color:#fff}.bgb{border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.65);background:transparent}.bgb:hover{border-color:rgba(255,255,255,.3);color:#fff}.cta{text-align:center;padding:100px 48px;background:radial-gradient(ellipse 70% 60% at 50% 100%,rgba(249,115,22,.08),transparent 60%)}\n#gfb{display:flex;gap:8px;flex-wrap:wrap}\n#gfb button{padding:8px 16px;border-radius:100px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;background:rgba(255,255,255,.06);color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.1);transition:all .2s}\n#gfb button.active{background:#f97316;color:#fff;border-color:#f97316}\n@media(max-width:600px){.sec,.m3d-ph,.cta{padding-left:20px;padding-right:20px}.dv{margin:0 20px}}\n
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-24 20:07:44','2026-03-24 19:07:44','',12,'http://87.106.117.190/?p=390',0,'revision','',0), +(391,0,'2026-03-24 20:08:53','2026-03-24 19:08:53','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85);\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8);\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-24 20:08:53','2026-03-24 19:08:53','',29,'http://87.106.117.190/?p=391',0,'revision','',0), +(392,0,'2026-03-24 20:17:41','2026-03-24 19:17:41','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85);\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8);\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-24 20:17:41','2026-03-24 19:17:41','',29,'http://87.106.117.190/?p=392',0,'revision','',0), +(393,0,'2026-03-24 20:19:06','2026-03-24 19:19:06','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85);\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8);\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-24 20:19:06','2026-03-24 19:19:06','',29,'http://87.106.117.190/?p=393',0,'revision','',0), +(394,0,'2026-03-24 20:21:54','2026-03-24 19:21:54','\n\n\n\n\n
\n
\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

PrusaSlicer ist Prusa Researchs Open-Source-Slicer — präzise, flexibel und für alle Drucker nutzbar. Er gilt als Goldstandard für Qualitätsdruck und bietet eine der besten Unterstützungsstruktur-Generierung am Markt.

\n\n

Download & Einrichtung

\n

Download unter prusa3d.com/prusaslicer (Windows, macOS, Linux) oder via GitHub.

\n\n

Drucker-Wizard

\n
    \n
  1. Beim ersten Start: Configuration Wizard startet automatisch
  2. \n
  3. Drucker auswählen: Original Prusa, Creality, Voron, Bambu oder \"Other FFF\" für generisch
  4. \n
  5. Bei generischem Drucker: Bettgröße und Düsendurchmesser eingeben
  6. \n
  7. Filament-Presets hinzufügen (PLA, PETG, ASA etc.)
  8. \n
  9. Fertig — Profil kann jederzeit über File → Configuration Wizard erweitert werden
  10. \n
\n\n

Benutzeroberfläche

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
BereichFunktionTipp
Linke LeisteObjekte hinzufügen, skalieren, drehenRechtsklick → Objekt-Kontext-Menü
Rechtes PanelPrint, Filament, Printer ProfileEigene Profile als \"User\" speichern
Print Settings TabLayer, Infill, Support, SpeedExpert-Modus für alle Optionen
Preview TabLayer-für-Layer VorschauSlider: einzelne Layer prüfen
Modifikator-MeshesEinstellungen für Zonen definierenRechtsklick auf Objekt → Add Modifier
\n\n

Empfohlene Einstellungen: PLA

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterWertKategorie
Layer height0.20 mmLayers and perimeters
Perimeters3Layers and perimeters
Top/Bottom solid layers5 / 5Layers and perimeters
Fill density20 %Infill
Fill patternGyroid / GridInfill
Nozzle temp215 °C / 210 °C (erste Schicht)Filament Settings
Bed temp60 °CFilament Settings
Print speed50 mm/sPrint Settings → Speed
Retraction length2 mm (DD) / 6 mm (Bowden)Printer Settings
Cooling fan100 % ab 2. LayerFilament Settings
\n\n

Supports: Painted vs. Automatisch

\n

PrusaSlicer bietet drei Support-Modi:

\n\n
\n
\n

Normal (Automatisch)

\n

Stützt alle Überhänge > Threshold. Schnell, aber oft zu viel Material

\n
\n
\n

Organic Supports

\n

Baumähnliche Struktur, weniger Kontaktfläche, einfacheres Entfernen

\n
\n
\n

Paint-on Supports

\n

Manuelle Pinsel-Auswahl: nur stützen wo nötig, kein Overengineering

\n
\n
\n\n

Support-Einstellungen optimieren

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterEmpfehlung
Support material threshold55° (statt Standard 45°)
Contact Z distance0.2 mm — leichtere Ablösung
Interface layers2 — glattere Support-Oberfläche
Interface patternRectilinear
\n\n

Variable Layer Height

\n
    \n
  1. Slice das Modell zunächst normal
  2. \n
  3. Wechsle in den Layer View und klicke Variable Layer Height
  4. \n
  5. Mit dem Pinsel: feine Schichten (0.10 mm) für Kurven und Details
  6. \n
  7. Grobe Schichten (0.30 mm) für vertikale Wände und Infill-Bereiche
  8. \n
  9. Adaptive-Button: PrusaSlicer optimiert automatisch
  10. \n
  11. Druckzeit sinkt um 20–40 % bei nahezu gleicher Qualität
  12. \n
\n\n

Kalibrierung aus PrusaSlicer heraus

\n
    \n
  • Calibration → First Layer Calibration — Live-Anpassung der Z-Offset beim Druck
  • \n
  • Calibration → Bed Level Correction — manuelles Mesh-Leveling
  • \n
  • Calibration → Temperature Tower — per Skript via Post-Processing
  • \n
  • Extrusion multiplier anpassen über Filament-Einstellungen
  • \n
\n\n
\n Profi-Tipp:\n Nutze Seams → Aligned und male die Naht mit dem Paint-on Seam Tool an eine unsichtbare Stelle (innen, hinten). Das macht Printe deutlich sauberer als automatisches \"Nearest\" oder \"Cost-Based\".\n
\n\n
\n
\n\n\n','PrusaSlicer: Einsteiger bis Fortgeschrittene','','publish','closed','closed','','guide-prusaslicer','','','2026-03-27 07:15:56','2026-03-25 21:22:43','',0,'http://87.106.117.190/guide-prusaslicer/',0,'post','',0), +(395,0,'2026-03-24 20:23:01','2026-03-24 19:23:01','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-24 20:23:01','2026-03-24 19:23:01','',12,'http://87.106.117.190/?p=395',0,'revision','',0), +(396,0,'2026-03-24 20:26:17','2026-03-24 19:26:17','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85);\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8);\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-24 20:26:17','2026-03-24 19:26:17','',29,'http://87.106.117.190/?p=396',0,'revision','',0), +(397,0,'2026-03-24 20:33:44','2026-03-24 19:33:44','\n\n\n\n\n
\n
\n

Retraction kalibrieren: Kein Stringing mehr

\n

Retraction ist die häufigste Ursache für Stringing, Blobs und Unterextrusion. Dieser Guide erklärt die Unterschiede zwischen Direct Drive und Bowden und führt dich Schritt für Schritt zur perfekten Einstellung.

\n\n

Direct Drive vs. Bowden — was ist der Unterschied?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EigenschaftDirect DriveBowden
Retraction-Distanz0.5 – 2.0 mm4.0 – 8.0 mm
Retraction-Speed25 – 45 mm/s40 – 60 mm/s
Flexible Filamente (TPU)✓ Empfohlen✗ Sehr schwierig
Stringing-AnfälligkeitNiedrigHöher
DruckgeschwindigkeitEtwas langsamer (Masse)Schneller
Beispiel-DruckerBambu X1C, Prusa MK4, VoronEnder 3, CR-10
\n\n

Retraction-Test: Schritt für Schritt

\n\n

1. Temperatur-Testturm zuerst

\n

Bevor du die Retraction anpasst: stelle sicher, dass die Drucktemperatur stimmt. Zu hohe Temperaturen verursachen Stringing, egal wie gut die Retraction ist.

\n
    \n
  • Drucke einen Temperatur-Turm (120 mm hoch, je 10 mm pro Temperaturstufe)
  • \n
  • PLA: starte bei 225 °C, gehe in 5-°C-Schritten auf 195 °C runter
  • \n
  • Wähle die niedrigste Temperatur, bei der die Layer noch gut haften
  • \n
  • Niedrigere Temp = weniger Stringing durch dünneres Schmelzgut
  • \n
\n\n

2. Retraction-Test drucken

\n

Nutze einen Retraction-Test mit mehreren Türmen (z.B. von Printables: \"Retraction Test Calibration\"). Die meisten Slicer haben eingebaute Retraction-Kalibrierung:

\n
    \n
  • OrcaSlicer / Bambu Studio: Calibration → Retraction
  • \n
  • Cura: Marketplace Plugin \"Calibration Shapes\"
  • \n
  • PrusaSlicer: Print Settings → Travel → Retraction
  • \n
\n\n

3. Startwerte je nach System

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SystemDistanz StartSpeed StartSchritt
Direct Drive (allg.)1.0 mm35 mm/s±0.2 mm
Bambu Lab (X1C, P1)0.8 mm30 mm/s±0.1 mm
Prusa MK3/MK40.6 mm35 mm/s±0.2 mm
Bowden (Ender 3)5.0 mm45 mm/s±0.5 mm
Klipper (direkt)0.4 – 0.8 mm40 mm/s±0.1 mm
\n\n

Diagnose: Was sehe ich und was bedeutet es?

\n
\n
\n

Stringing (Fäden)

\n

Retraction zu kurz ODER Temperatur zu hoch ODER Travel-Speed zu langsam

\n
\n
\n

Blobs / Zacken

\n

Retraction zu lang ODER zu schnell → Extra-Extrusion beim Start

\n
\n
\n

Unterextrusion

\n

Retraction zieht Filament zu weit zurück → Lücken nach Travel

\n
\n
\n

Verstopfung (Clog)

\n

Zu viele schnelle Retractions → Filament schleift sich im Hotend ab

\n
\n
\n\n

Advanced: Wipe & Z-Hop

\n
    \n
  • Wipe while Retracting — Düse fährt beim Zurückziehen über vorherigen Pfad: reduziert Blobs, empfohlen für alle Drucker
  • \n
  • Z-Hop — Düse hebt sich während Travel: verhindert Kratzer, ABER verlangsamt Druck deutlich (nur bei komplizierten Modellen nutzen)
  • \n
  • Combing Mode (Cura / OrcaSlicer) — Travel nur innerhalb des Modells: vermeidet sichtbare Fäden auf Außenseiten ohne Z-Hop
  • \n
  • Travel Speed erhöhen — schnellere Reisen = weniger Zeit für Fäden zu bilden (150–200 mm/s ideal)
  • \n
\n\n
\n Wichtig für PETG:\n PETG neigt viel mehr zu Stringing als PLA. Nutze niedrigere Retraction-Distanz (PETG ist viskös, zu viel Retraction führt zu Clogging). Stattdessen: höhere Travel-Speed (200+ mm/s) und Combing Mode aktivieren.\n
\n\n
\n
\n\n\n','Retraction kalibrieren: Kein Stringing mehr','','publish','closed','closed','','retraction-kalibrieren','','','2026-03-27 07:15:56','2026-03-25 21:22:44','',0,'http://87.106.117.190/retraction-kalibrieren/',0,'post','',0), +(398,0,'2026-03-24 20:35:24','2026-03-24 19:35:24','\n\n\n\n\n
\n
\n

Erste Schicht perfekt kalibrieren

\n

Die erste Schicht entscheidet über Erfolg oder Misserfolg des gesamten Drucks. Dieser Guide zeigt dir, wie du Z-Offset, Betttemperatur und First-Layer-Geschwindigkeit optimal einstellst — für jede Druckerplattform.

\n\n

Warum die erste Schicht so wichtig ist

\n

Alles beginnt auf dem Druckbett. Eine falsch kalibrierte erste Schicht führt zu:

\n
    \n
  • Haftungsproblemen und Warping
  • \n
  • Elefantenfuß (zu nah → Filament wird gequetscht)
  • \n
  • Unterextrusion in der ersten Schicht (zu weit weg → Filament hängt in der Luft)
  • \n
  • Ablösung nach wenigen Layern bei langen Drucken
  • \n
\n\n

Z-Offset: Die wichtigste Einstellung

\n

Der Z-Offset beschreibt den Abstand zwischen Düse und Druckbett beim ersten Layer. Er variiert je nach Sensor und Drucker:

\n\n
\n
\n

Zu nah (negativ)

\n

Filament wird gequetscht → Elefantenfuß, Düse kratzt über Bett, zu glatte Unterseite

\n
\n
\n

Perfekt

\n

Linie leicht gequetscht, gut haftend, saubere Übergänge, keine Lücken zwischen Bahnen

\n
\n
\n

Zu weit (positiv)

\n

Runde Filamentbahnen, Lücken, schlechte Haftung → Druck löst sich vom Bett

\n
\n
\n\n

Kalibrierung je nach Drucker-Typ

\n\n

Bambu Lab (X1C, P1S, A1)

\n
    \n
  1. Starte Calibration → First Layer Inspection im Bambu Studio oder direkt am Drucker
  2. \n
  3. Der Drucker druckt ein Live-Kalibriermuster
  4. \n
  5. Wähle per Touch-Display das beste Feld (A–J), das am gleichmäßigsten aussieht
  6. \n
  7. Bambu speichert den Offset automatisch — fertig
  8. \n
  9. Bei Textured PEI-Platte: oft −0.05 bis −0.10 mm feiner als bei glatten Platten
  10. \n
\n\n

Prusa MK3/MK4 (PINDA/SuperPINDA)

\n
    \n
  1. LCD → Calibration → First Layer Calibration
  2. \n
  3. Drucker druckt 3×3 Felder live
  4. \n
  5. Drehe an der Schraube während des Drucks: Im Uhrzeigersinn = Düse runter
  6. \n
  7. Perfekt: Bahnen sehen aus wie flache Würste, keine Lücken, keine Quetschung
  8. \n
  9. Tipp: Startwert −600 µm, in −50 µm Schritten anpassen
  10. \n
\n\n

Ender 3 / Creality (manuelles Leveling)

\n
    \n
  1. Home all axes, deaktiviere Steppers (Control → Motion → Disable)
  2. \n
  3. Schiebe einen Zettel Papier unter die Düse: 4 Ecken + Mitte einstellen
  4. \n
  5. Schraube sollte leichten Widerstand spüren — nicht blockiert, nicht zu locker
  6. \n
  7. Führe mehrere Runden durch — die Ecken beeinflussen sich gegenseitig
  8. \n
  9. Danach: Z-Offset im Slicer oder EEPROM feinjustieren
  10. \n
\n\n

Klipper (BLTouch / CR Touch / Klicky)

\n
    \n
  1. BED_MESH_CALIBRATE ausführen nach Aufheizen
  2. \n
  3. Z-Offset anpassen: PROBE_CALIBRATE Befehl
  4. \n
  5. Drucke einen Live-Kalibriertest: TESTZ Z=-0.1 für schrittweise Absenkung
  6. \n
  7. Wenn perfekt: ACCEPT → SAVE_CONFIG
  8. \n
  9. Mainsail/Fluidd bieten Live-Z-Anpassung während des Drucks
  10. \n
\n\n

Einstellungen für gute First-Layer-Haftung

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterEmpfehlungWarum
First Layer Höhe0.2–0.3 mm (100–150 % der Düse)Mehr Quetschung = bessere Haftung
First Layer Breite110–140 % Extrusion WidthBreitere Bahn = mehr Kontaktfläche
First Layer Speed15–25 mm/sLangsam = Filament haftet besser
Bed Temp PLA60 °C (PEI), 55 °C (Glas)Zu heiß = Elefantenfuß
Bed Temp PETG70–80 °CPETG braucht mehr Wärme
Kühlerlüfter0 % erste SchichtWarmes Filament haftet besser
Skirt / Brim3 Skirt-Linien oder 5 mm BrimDüse aufwärmen, Haftung verbessern
\n\n

Druckplatten-Typen und ihre Eigenschaften

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
PlatteMaterialAblösungTipp
Textured PEIPLA, PETG, TPUNach Abkühlen von selbstNicht mit Fingern anfassen
Smooth PEIPETG haftet zu starkPLA leicht lösbarTrennmittel bei PETG nötig
GlasPLA, ABSNach Abkühlen von selbstHaarspray oder Glasreiniger
Garolite / FR4Nylon, PA-CFNach AbkühlenSpezialplatte für Nylon
Buildtak / PCPC, ABS, ASASchwierig, Heißluft nötigSehr hohe Haftung
\n\n

Diagnose: Erste Schicht Probleme

\n
    \n
  • Filament haftet nicht: Z-Offset zu groß, Bett zu kalt, Bett nicht sauber, Geschwindigkeit zu hoch
  • \n
  • Elefantenfuß: Z-Offset zu klein (Düse zu nah), Bett zu heiß, Kühlerlüfter aus
  • \n
  • Lücken zwischen Bahnen: Z-Offset zu groß, Extrusion Width zu klein
  • \n
  • Druck löst sich ab: Betttemperatur sinkt während Druck, Zugluft, falsches Material für Platte
  • \n
  • Wellenförmige erste Schicht: Bett nicht eben (Bed Mesh Leveling aktivieren)
  • \n
\n\n
\n Profi-Tipp:\n Reinige das Druckbett vor jedem Druck mit IPA (90 %+). Handschweiß und Fett sind unsichtbar, aber zerstören die Haftung erheblich. Bei PEI: niemals mit Aceton reinigen — das zerstört die Beschichtung dauerhaft.\n
\n\n
\n
\n\n\n','Erste Schicht perfekt kalibrieren','','publish','closed','closed','','erste-schicht-kalibrieren','','','2026-03-27 07:15:56','2026-03-25 21:22:44','',0,'http://87.106.117.190/erste-schicht-kalibrieren/',0,'post','',0), +(399,0,'2026-03-25 00:53:41','2026-03-24 23:53:41','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 00:53:41','2026-03-24 23:53:41','',12,'http://87.106.117.190/?p=399',0,'revision','',0), +(400,0,'2026-03-25 00:57:56','2026-03-24 23:57:56','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85);\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8);\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 00:57:56','2026-03-24 23:57:56','',29,'http://87.106.117.190/?p=400',0,'revision','',0), +(401,0,'2026-03-25 01:03:34','2026-03-25 00:03:34','\n\n\n\n\n
\n
\n

Unterextrusion beheben

\n

Unterextrusion ist eine der häufigsten Ursachen für schwache Drucke, fehlende Schichten und poröse Oberflächen. Dieser Guide zeigt dir alle Ursachen und wie du sie systematisch eliminierst.

\n\n

Was ist Unterextrusion?

\n

Unterextrusion bedeutet: der Drucker fördert weniger Filament als berechnet. Das Ergebnis:

\n
    \n
  • Lücken zwischen Perimetern und im Infill
  • \n
  • Poröse Top-Layer (Löcher in der Oberfläche)
  • \n
  • Schwache Layer-Haftung → Schichten lösen sich
  • \n
  • Sichtbare Lücken in der Wand bei dünnen Teilen
  • \n
  • Streifen oder fehlende Bahnen auf Außenwänden
  • \n
\n\n

Ursachen und Lösungen im Überblick

\n\n

1. Temperatur zu niedrig

\n

Häufigste Ursache bei hohen Druckgeschwindigkeiten. Filament schmilzt nicht schnell genug.

\n
    \n
  • Temperatur in 5-°C-Schritten erhöhen und testen
  • \n
  • PLA: 210–230 °C bei hoher Geschwindigkeit statt 195–205 °C
  • \n
  • PETG: 235–250 °C statt Standard 230 °C
  • \n
  • Thermistor kalibrieren wenn Temps ungenau erscheinen
  • \n
\n\n

2. Druckgeschwindigkeit zu hoch

\n

Der Hotend schafft nicht mehr Schmelzfluss als seine Max-Volumetric-Speed erlaubt.

\n
    \n
  • Max. Volumetric Speed (MVS) des Hotends beachten: Standard Brass = 11–15 mm³/s
  • \n
  • High-Flow Hotend (CHT, Dragon, Volcano): bis 30 mm³/s
  • \n
  • Formel: Speed × Layer Height × Line Width = Volumetric Flow
  • \n
  • In OrcaSlicer/Bambu Studio: Max Volumetric Speed direkt einstellbar
  • \n
\n\n

3. Verstopfung (Partial Clog)

\n

Partieller Clog: Drucker extrudiert, aber weniger als erwartet.

\n
    \n
  • Cold Pull durchführen: auf 90 °C (PLA) abkühlen, dann manuell ziehen
  • \n
  • Atomic Pull: 3–5 Mal wiederholen bis Filament sauber herauskommt
  • \n
  • Düse mit Reinigungsfilament (z.B. NylonX) durchpurgen
  • \n
  • Düse tauschen wenn Cold Pull nicht hilft (verschlissen oder verbranntes Material)
  • \n
\n\n

4. Fehlerhafter E-Steps / Flow-Kalibrierung

\n

Der Extruder fördert nicht so viel Filament wie der Slicer annimmt.

\n
    \n
  • 100 mm markieren, extrudieren, gemessen messen (sollte genau 100 mm sein)
  • \n
  • E-Steps = Aktuell × (100 / tatsächlich extrudiert) berechnen
  • \n
  • Flow-Kalibrierung: Single-Wall Würfel drucken, Wanddicke messen
  • \n
  • Ziel: 0.4 mm Wanddicke bei 0.4 mm Düse (±0.05 mm Toleranz)
  • \n
\n\n

5. Extruder-Schlupf

\n

Zahnrad greift nicht richtig ins Filament → rutscht durch.

\n
    \n
  • Klick-Geräusche beim Drucken = Extruder-Schlupf (zu viel Widerstand)
  • \n
  • Extruder-Spannung prüfen (bei BMG/Orbiter: Idler-Arm-Spannung)
  • \n
  • Extruder-Zahnrad reinigen (Staub und Filament-Abrieb entfernen)
  • \n
  • Extruder-Zahnrad auf Verschleiß prüfen → ggf. ersetzen
  • \n
\n\n

6. PTFE-Tube Probleme

\n

Besonders bei Bowden-Setups: Spalten oder Verformungen im PTFE.

\n
    \n
  • PTFE-Tube auf Knicke, Quetschungen und verbrannte Stellen prüfen
  • \n
  • PTFE muss bündig an der Düse anliegen — kein Spalt (Hitzekammer)
  • \n
  • Capricorn PTFE (enger Innendurchmesser) für bessere Präzision
  • \n
  • PTFE bis zur Düse durchführen bei All-Metal nicht möglich → höhere Temps nötig
  • \n
\n\n

Diagnose-Tabelle

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SymptomWahrscheinliche UrsacheErste Maßnahme
Nur bei hoher Speed schlechtTemp zu niedrig / MVS überschrittenTemp +10 °C, Speed -20 %
Klicken vom ExtruderWiderstand zu hoch (Clog / Temp)Cold Pull, dann Temp erhöhen
Immer gleichmäßig schlechtE-Steps / Flow falsch kalibriertE-Steps kalibrieren
Nach Filamentwechsel schlechterAnderes Filament, anderer FlowFlow +5 % für neues Material
Nur erste Schicht betroffenZ-Offset zu weit wegZ-Offset verkleinern
Nach längerem Druck schlechterHeat Creep (Hotend überhitzt)Hotend-Kühler prüfen, Lüfter
\n\n

Systematische Vorgehensweise

\n
    \n
  1. Temperatur-Turm drucken → optimale Temperatur finden
  2. \n
  3. E-Steps kalibrieren (falls noch nicht gemacht)
  4. \n
  5. Flow-Kalibrierung mit Single-Wall Cube durchführen
  6. \n
  7. Volumetric Speed testen (OrcaSlicer hat eingebauten Test)
  8. \n
  9. Cold Pull wenn Clog vermutet
  10. \n
  11. Extruder-Zahnrad und PTFE kontrollieren
  12. \n
\n\n
\n Profi-Tipp:\n Drucke bei Unterextrusions-Verdacht immer zuerst einen Temperatur-Turm und einen Flow-Kalibrierungs-Würfel. 80 % aller Unterextrusionsprobleme lassen sich damit lösen, ohne Hardware anzufassen.\n
\n\n
\n
\n\n\n','Unterextrusion beheben','','publish','closed','closed','','unterextrusion-beheben','','','2026-03-27 07:15:56','2026-03-25 21:22:44','',0,'http://87.106.117.190/unterextrusion-beheben/',0,'post','',0), +(402,0,'2026-03-25 01:03:54','2026-03-25 00:03:54','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 01:03:54','2026-03-25 00:03:54','',12,'http://87.106.117.190/?p=402',0,'revision','',0), +(403,0,'2026-03-25 01:07:39','2026-03-25 00:07:39','\n\n\n\n\n
\n
\n

Pressure Advance kalibrieren

\n

Pressure Advance (Klipper) und Linear Advance (Marlin) kompensieren den Druckabfall im Hotend bei Geschwindigkeitsänderungen. Richtig eingestellt verschwinden Ecken-Blobs, Ghosting und Überextrusion an Kurven — ein massiver Qualitätssprung.

\n\n

Was macht Pressure Advance?

\n

Wenn der Druckkopf beschleunigt oder abbremst, reagiert der Filamentdruck im Hotend träge. Das führt zu:

\n
    \n
  • Blobs an Ecken — Überextrusion wenn der Kopf abbremst
  • \n
  • Dünne Stellen an Kurven — Unterextrusion beim Beschleunigen
  • \n
  • Ringing / Ghosting — Druckwellen durch abrupte Richtungswechsel
  • \n
  • Ungleichmäßige Wände — sichtbar bei Außenperimetern
  • \n
\n

Pressure Advance gleicht diesen Verzug aus: Der Extruder zieht beim Abbremsen etwas zurück und fügt beim Beschleunigen etwas voraus — das Ergebnis sind scharfe, saubere Ecken.

\n\n

Klipper vs. Marlin: Wo einstellen?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
FirmwareFunktionEinstellungTypischer Wert
KlipperPressure Advanceprinter.cfg → [extruder]0.02 – 0.08
Marlin 2.xLinear Advance (K-Faktor)Configuration_adv.h oder M900 K0.0 – 0.2
OrcaSlicer / BambuPA eingebaut (G-Code)Calibration → Pressure Advance0.02 – 0.06
RepRapFirmwarePressure AdvanceM572 D0 S[wert]0.05 – 0.15
\n\n

Klipper: Schritt-für-Schritt Kalibrierung

\n\n

Methode 1: Tower-Test (empfohlen)

\n
    \n
  1. Öffne Mainsail/Fluidd → Console
  2. \n
  3. Drucke den PA-Kalibrierungsturm via Klipper-Makro oder Slicer-Skript
  4. \n
  5. Befehl für Live-Test: SET_PRESSURE_ADVANCE ADVANCE=0.04
  6. \n
  7. Starte den Druck, passe den Wert live an bis Ecken scharf sind
  8. \n
  9. In printer.cfg eintragen: pressure_advance: 0.04
  10. \n
  11. Config neu laden: FIRMWARE_RESTART
  12. \n
\n\n

Methode 2: OrcaSlicer Kalibrierung

\n
    \n
  1. OrcaSlicer → Calibration → Pressure/Linear Advance
  2. \n
  3. Startwert: 0.0, Endwert: 0.1, Schritte: 0.005
  4. \n
  5. Drucke den Test (dauert ca. 15 Minuten)
  6. \n
  7. Finde die Zeile mit den schärfsten Ecken ohne Blob
  8. \n
  9. Ablesen des Wertes vom gedruckten Test
  10. \n
  11. Wert im Filament- oder Drucker-Profil eintragen
  12. \n
\n\n

Marlin: Linear Advance (K-Faktor)

\n
    \n
  1. Prüfe ob Linear Advance aktiviert ist: M503 → suche nach K-Wert
  2. \n
  3. Test-Muster generieren unter marlinfw.org/tools/lin_advance/k-factor.html
  4. \n
  5. G-Code drucken und beste Zeile ablesen
  6. \n
  7. Permanent speichern: M900 K0.05M500
  8. \n
  9. Alternativ: in Start-G-Code des Slicers eintragen
  10. \n
\n\n

Richtwerte nach Material

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialPA KlipperK MarlinHinweis
PLA0.03 – 0.060.05 – 0.10Gut vorhersehbar
PETG0.02 – 0.050.03 – 0.08Niedriger durch höhere Viskosität
ABS / ASA0.03 – 0.070.05 – 0.12Ähnlich PLA
TPU0.0 – 0.020.0Flexibel — meist deaktivieren
PA-CF / Nylon0.04 – 0.080.07 – 0.15Variiert stark je nach Marke
\n\n

Smooth Time (Klipper)

\n

Neben dem PA-Wert gibt es den pressure_advance_smooth_time Parameter. Standard: 0.040 s. Zu niedrig = Vibrationen. Zu hoch = PA-Effekt verringert sich.

\n
    \n
  • Standardwert 0.04 s in den meisten Fällen optimal
  • \n
  • Bei Ringing-Problemen: auf 0.02 s reduzieren
  • \n
  • Bei Extruder-Geräuschen nach PA: auf 0.06 s erhöhen
  • \n
\n\n
\n Wichtig:\n PA/LA muss für jede Filament-/Düsen-Kombination separat kalibriert werden. Ein 0.4 mm Messing-PA von 0.05 ist nicht übertragbar auf eine 0.6 mm Hardened-Steel-Düse. Speichere Werte im Filament-Profil deines Slicers.\n
\n\n
\n
\n\n\n','Pressure Advance kalibrieren','','publish','closed','closed','','pressure-advance-kalibrieren','','','2026-03-27 07:15:56','2026-03-25 21:22:44','',0,'http://87.106.117.190/pressure-advance-kalibrieren/',0,'post','',0), +(404,0,'2026-03-25 01:07:45','2026-03-25 00:07:45','\n\n\n\n\n
\n
\n

Flow-Rate & E-Steps kalibrieren

\n

E-Steps und Flow-Rate sind die Grundlage jedes präzisen Drucks. Falsch kalibriert führt alles andere zu schlechten Ergebnissen — egal wie gut die anderen Einstellungen sind. Dieser Guide zeigt die exakte Vorgehensweise in 3 Schritten.

\n\n

E-Steps vs. Flow-Rate — was ist was?

\n
\n
\n

E-Steps (steps/mm)

\n

Wie viele Motor-Schritte = 1 mm Filament. Hardware-Wert, gilt für alle Materialien. Einmal kalibrieren, selten ändern. In Firmware gespeichert.

\n
\n
\n

Flow-Rate / Extrusion Multiplier

\n

Prozentualer Multiplikator im Slicer. Material-spezifisch (PLA 100 %, PETG 95 % etc.). Kompensiert Durchmesserabweichungen des Filaments.

\n
\n
\n\n

Schritt 1: E-Steps kalibrieren

\n

Die E-Steps kalibrierst du einmal pro Extruder und änderst sie danach kaum noch.

\n\n

Vorbereitung

\n
    \n
  1. Drucker aufheizen (Düse auf Drucktemperatur — Filament muss fließen können)
  2. \n
  3. Filament einlegen und durchpurgen bis sauberes Material kommt
  4. \n
  5. 100 mm vom Extruder-Eingang markieren (Edding oder Klebeband)
  6. \n
  7. Aktuellen E-Steps-Wert notieren: M503 → suche nach M92 E[wert]
  8. \n
\n\n

Messung

\n
    \n
  1. G-Code senden: G91 (relative Positionierung)
  2. \n
  3. 100 mm extrudieren: G1 E100 F100
  4. \n
  5. Warte bis Motor stoppt, messe die Restlänge bis zur Markierung
  6. \n
  7. Tatsächlich extrudiert = 100 mm − gemessene Restlänge
  8. \n
  9. Neuer E-Steps = Alter Wert × (100 ÷ tatsächlich extrudiert)
  10. \n
\n\n

Rechenbeispiel

\n
\n

Alter E-Steps: 420

\n

Markierung nach Extrusion noch: 7 mm entfernt

\n

Tatsächlich extrudiert: 100 − 7 = 93 mm

\n

Neuer E-Steps: 420 × (100 ÷ 93) = 451.6

\n
\n\n

Speichern

\n
    \n
  • Marlin: M92 E451.6M500 (EEPROM speichern)
  • \n
  • Klipper: In printer.cfg unter [extruder] → rotation_distance anpassen
  • \n
  • Bambu / OrcaSlicer: Calibration → Flow Rate (eigener Workflow)
  • \n
  • Test 2–3 Mal wiederholen bis Messung auf ±1 mm genau
  • \n
\n\n

Schritt 2: Flow-Rate / Extrusion Multiplier kalibrieren

\n

Nach den E-Steps kalibrierst du den Flow für jedes Material separat. Methode: Single-Wall Würfel.

\n\n

Single-Wall Cube Methode

\n
    \n
  1. Drucke einen 20 mm Würfel mit 1 Perimeter, 0 % Infill, 0 Top/Bottom Layers
  2. \n
  3. Nur die Außenwand wird gedruckt (eine einzige Schicht dick)
  4. \n
  5. Messe die Wanddicke an mehreren Stellen mit einem Messschieber
  6. \n
  7. Zielwert = Düsendurchmesser (0.4 mm Düse → 0.4 mm Wand)
  8. \n
  9. Flow-Rate anpassen: Neuer Flow = Alter Flow × (Ziel ÷ gemessen)
  10. \n
\n\n
\n

Gemessene Wanddicke: 0.44 mm bei 0.4 mm Düse

\n

Alter Flow: 100 %

\n

Neuer Flow: 100 × (0.40 ÷ 0.44) = 90.9 % → auf 91 % runden

\n
\n\n

Schritt 3: Filament-Durchmesser messen

\n

Oft unterschätzter Faktor: Günstiges Filament schwankt im Durchmesser erheblich.

\n
    \n
  • Messe den Durchmesser an 5+ Stellen über 50 cm Filament
  • \n
  • Bilde den Durchschnitt und trage ihn im Slicer ein (Standard: 1.75 mm)
  • \n
  • Abweichung von ±0.05 mm = bis zu 6 % Volumenunterschied
  • \n
  • Qualitäts-Filament (Prusament, Polymaker): ±0.02 mm Toleranz
  • \n
  • Budget-Filament: bis ±0.10 mm → Flow manuell anpassen
  • \n
\n\n

Flow-Richtwerte nach Material

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialStartwertTypische Anpassung
PLA100 %98 – 102 %
PETG95 %92 – 97 %
ABS / ASA100 %97 – 103 %
TPU98 %95 – 100 %
PA / Nylon100 %98 – 105 %
\n\n
\n Reihenfolge beachten:\n Immer erst E-Steps kalibrieren (einmalig, Hardware), dann Flow-Rate pro Material einstellen. Nie beide gleichzeitig anpassen — sonst weißt du nicht was was verursacht.\n
\n\n
\n
\n\n\n','Flow-Rate und E-Steps kalibrieren','','publish','closed','closed','','flow-rate-e-steps-kalibrieren','','','2026-03-27 07:15:56','2026-03-25 21:22:44','',0,'http://87.106.117.190/flow-rate-e-steps-kalibrieren/',0,'post','',0), +(405,0,'2026-03-25 01:08:19','2026-03-25 00:08:19','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 01:08:19','2026-03-25 00:08:19','',12,'http://87.106.117.190/?p=405',0,'revision','',0), +(406,0,'2026-03-25 01:13:34','2026-03-25 00:13:34','\n\n\n\n\n
\n
\n

Brücken & Überhänge drucken

\n

Brücken und steile Überhänge sind für viele Drucker eine Herausforderung. Mit den richtigen Slicer-Einstellungen und etwas Verständnis für die Physik druckst du auch komplexe Geometrien ohne Supports — oder mit minimalen Supports genau dort wo sie nötig sind.

\n\n

Überhänge vs. Brücken — der Unterschied

\n
\n
\n

Überhang (Overhang)

\n

Material hängt über eine darunter liegende Fläche hinaus. Winkel ab 45° wird schwierig. Düse druckt teilweise in die Luft.

\n
\n
\n

Brücke (Bridge)

\n

Material spannt komplett frei zwischen zwei Auflagepunkten. Kein Material darunter. Schwerkraft zieht Filament nach unten.

\n
\n
\n\n

Brücken-Einstellungen im Slicer

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterEmpfehlungWarum
Bridge Speed20 – 40 mm/sLangsam = weniger Durchhang
Bridge Flow80 – 95 %Weniger Material = weniger Gewicht
Kühlerlüfter100 % beim Bridge-LayerSchnelles Erstarren verhindert Durchhang
Bridge-WinkelAutomatisch (0° / 90°)Kürzeste Brückenrichtung wählen
Temperatur beim Bridge–5 bis –10 °CKühleres Filament erstarrt schneller
Bridge Wall Count1 (nur 1 Perimeter)Mehrere Perimeter auf Bridge oft schlechter
\n\n

Überhänge verbessern

\n\n

Winkelgrenzwerte je nach Drucker

\n
    \n
  • 0–45°: Kein Problem, keine Unterstützung nötig
  • \n
  • 45–60°: Grenzbereich — gute Kühlung und Modell-Design hilft
  • \n
  • 60–75°: Meist Support nötig, oder Chamfer statt Überhang designen
  • \n
  • 75–90°: Horizontale Fläche — Bridge-Technik oder Support zwingend
  • \n
\n\n

Slicer-Optimierungen für Überhänge

\n
    \n
  • Overhang Speed reduzieren (20–30 mm/s bei steilen Winkeln)
  • \n
  • Lüfter auf 100 % ab einem bestimmten Überhangwinkel (in OrcaSlicer einstellbar)
  • \n
  • Adaptive Layer Height nutzen: dünnere Layer bei Überhängen
  • \n
  • Perimeter-Reihenfolge: Innen vor außen drucken lässt äußere Perimeter besser haften
  • \n
  • Modell drehen: Oft kann man ein Modell so orientieren, dass Überhänge minimiert werden
  • \n
\n\n

Support-Strategie für Überhänge

\n
\n
\n

Normal Support

\n

Gitterartig, einfach zu generieren. Schwer zu entfernen, hinterlässt Spuren. Gut für flache Überhänge.

\n
\n
\n

Tree / Organic Support

\n

Baumförmig, weniger Kontaktfläche. Leichter zu entfernen. Optimal für Figurinen und organische Modelle.

\n
\n
\n

Paint-on Support

\n

Manuell nur dort platzieren wo nötig. Aufwändiger, aber bestes Resultat bei komplexen Modellen.

\n
\n
\n

Kein Support (Redesign)

\n

Modell mit 45° Chamfer statt horizontaler Überhang. Oft die beste Lösung — kein Support, keine Spuren.

\n
\n
\n\n

Brücken-Länge und Materialeigenschaften

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialMax. saubere BridgeTipp
PLA60 – 80 mmBestes Bridging aller Materialien
PETG30 – 50 mmZieht Fäden, niedrigere Temp hilft
ABS / ASA40 – 60 mmEnclosure nötig für konsistente Ergebnisse
TPU20 – 30 mmSchwierig — kurze Bridges, viel Kühlung
\n\n
\n Profi-Tipp:\n Wenn du die Wahl hast — drehe das Modell so, dass Bridges kurz und parallel zur X- oder Y-Achse verlaufen. Die meisten Drucker sind in einer Richtung steifer als in der anderen. Bei Core-XY (Bambu, Voron) spielt die Richtung weniger eine Rolle als bei kartesischen Druckern.\n
\n\n
\n
\n\n\n','Brücken und Überhänge drucken','','publish','closed','closed','','bruecken-ueberhange-drucken','','','2026-03-27 07:15:56','2026-03-25 21:22:45','',0,'http://87.106.117.190/bruecken-ueberhange-drucken/',0,'post','',0), +(407,0,'2026-03-25 01:13:35','2026-03-25 00:13:35','\n\n\n\n\n
\n
\n

Infill: Muster, Dichte & Wandstärke

\n

Das richtige Infill-Muster und die passende Wandstärke sind entscheidend für Festigkeit, Druckzeit und Materialverbrauch. Dieser Guide erklärt alle gängigen Muster und wann du welche Einstellungen wählen solltest.

\n\n

Infill-Dichte: Wann wie viel?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
DichteEinsatzBeispiele
0 – 5 %Dekorativ, keine LastVasen, Figuren, Prototypen
10 – 20 %Leichte AlltagsteileGehäuse, Halter, Displays
20 – 40 %Standard-FunktionsteileHalterungen, Clips, Werkzeugteile
40 – 60 %Belastete TeileZahnräder, Hebel, Druck-/Zugteile
60 – 80 %Hohe BelastungSchraubverbindungen, Achsen, Scharniere
80 – 100 %Maximale FestigkeitSicherheitskritische Teile, Ersatzteile
\n\n

Wichtig: Mehr Infill bedeutet nicht immer mehr Festigkeit. Oberhalb von 40 % bringen mehr Perimeter (Wandstärken) oft mehr als mehr Infill.

\n\n

Infill-Muster im Vergleich

\n\n

Grid / Lines — Schnell, Standard

\n
    \n
  • Einfaches Gitter oder parallele Linien
  • \n
  • Schnell zu drucken, gute Top-Layer-Unterstützung
  • \n
  • Nicht isotrop — unterschiedliche Festigkeit in X/Y vs. Z
  • \n
  • Ideal für Dekor, Prototypen, schnelle Drucke
  • \n
\n\n

Gyroid — 3D-isotrop, empfohlen für Funktionsteile

\n
    \n
  • Gleichmäßige Festigkeit in alle 3 Richtungen
  • \n
  • Flexible Absorption von Kräften (gut für schlagzähe Teile)
  • \n
  • Etwas langsamer als Grid, aber bei gleicher Dichte fester
  • \n
  • Empfehlung: ab 15 % Dichte für alle Funktionsteile
  • \n
\n\n

Honeycomb / Cubic — Stabil und kompressionsresistent

\n
    \n
  • Hexagonale oder kubische Zellstruktur
  • \n
  • Sehr gut bei Druckbelastung (Kompression)
  • \n
  • Cubic: gut für Allround-Funktionsteile (ähnlich Gyroid)
  • \n
  • Honeycomb: klassisch gut, aber Gyroid in modernen Slicern meist besser
  • \n
\n\n

Lightning / Adaptive — Schnell für Top-Layer-Unterstützung

\n
    \n
  • Minimales Infill nur wo Top-Layer Unterstützung brauchen
  • \n
  • Keine Festigkeit — nur für Dekorteile oder Prototypen
  • \n
  • Spart bis zu 50 % Material gegenüber 15 % Grid
  • \n
  • OrcaSlicer, Cura, PrusaSlicer: Lightning / Adaptive Cubic verfügbar
  • \n
\n\n

Wandstärke: oft wichtiger als Infill

\n

Die Wandstärke (Perimeter-Anzahl) hat bei den meisten Alltagsteilen mehr Einfluss auf die Festigkeit als die Infill-Dichte.

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Perimeter (0.4 mm Düse)WandstärkeEinsatz
2 Perimeter~0.8 mmDekor, Miniatures
3 Perimeter~1.2 mmStandard (Slicer-Default)
4 Perimeter~1.6 mmFunktionsteile, Halter
5–6 Perimeter~2.0 – 2.4 mmBelastete Teile, Schrauben
8+ Perimeter3.2 mm+Maximale Festigkeit
\n\n

Top/Bottom Layer Anzahl

\n
    \n
  • Standard: 4–5 Layer (0.2 mm Schichtdicke = 0.8–1.0 mm)
  • \n
  • Optisch hochwertig: 6–8 Layer für glattere Oberfläche
  • \n
  • Faustregel: Top-Layer-Höhe ≥ 0.75 mm (bei 0.2 mm → min. 4 Layer)
  • \n
  • Bei geringem Infill (<15 %) mehr Top-Layer nötig um Löcher zu schließen
  • \n
\n\n

Empfehlungen nach Anwendungsfall

\n
\n
\n

Schneller Prototyp

\n

15 % Lightning, 2 Perimeter, 3 Top/Bottom — minimale Zeit, ausreichende Form

\n
\n
\n

Alltagshalter

\n

20 % Gyroid, 3–4 Perimeter, 5 Top/Bottom — gute Balance aus Zeit und Festigkeit

\n
\n
\n

Belastetes Funktionsteil

\n

40 % Gyroid/Cubic, 5–6 Perimeter, 6 Top/Bottom — hohe Festigkeit

\n
\n
\n

Optik-Druck

\n

10 % Grid, 4 Perimeter, 8 Top/Bottom — glatte Oberfläche, gute Stabilität

\n
\n
\n\n
\n Faustregel:\n Für maximale Festigkeit bei minimalem Gewicht gilt: mehr Perimeter schlägt mehr Infill. Erhöhe zuerst die Wandstärke auf 4–5, bevor du Infill über 30 % hebst. Die Wände tragen die meiste Last — das Infill unterstützt nur die Flächen.\n
\n\n
\n
\n\n\n','Infill: Muster, Dichte und Wandstärke','','publish','closed','closed','','infill-muster-dichte-wandstaerke','','','2026-03-27 07:15:56','2026-03-25 21:22:45','',0,'http://87.106.117.190/infill-muster-dichte-wandstaerke/',0,'post','',0), +(408,0,'2026-03-25 01:14:08','2026-03-25 00:14:08','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 01:14:08','2026-03-25 00:14:08','',12,'http://87.106.117.190/?p=408',0,'revision','',0), +(409,0,'2026-03-25 01:23:33','2026-03-25 00:23:33','\n\n\n\n\n
\n
\n

Input Shaping kalibrieren

\n

Input Shaping (Resonance Compensation) ist Klippers mächtigstes Feature gegen Ringing und Ghosting. Es misst die Resonanzfrequenz des Druckers und kompensiert sie aktiv — das Ergebnis sind messerscharf scharfe Drucke bei hohen Geschwindigkeiten.

\n\n

Was ist Ringing / Ghosting?

\n

Ringing sind wellenförmige Muster auf Druckoberflächen, die nach Ecken und Richtungswechseln entstehen. Sie entstehen durch mechanische Schwingungen im Drucker-Frame und Druckkopf.

\n
    \n
  • Sichtbar als „Echos\" oder Wellen hinter scharfen Kanten
  • \n
  • Schlimmer bei hoher Druckgeschwindigkeit
  • \n
  • Abhängig von Drucker-Masse, Riemenspannung und Frame-Steifigkeit
  • \n
  • Input Shaping eliminiert das Problem rechnerisch — ohne Mechanik zu ändern
  • \n
\n\n

Voraussetzungen

\n
    \n
  • Klipper Firmware (Mainsail oder Fluidd als Interface)
  • \n
  • ADXL345 Beschleunigungssensor (ca. 5–10 €, an Raspberry Pi oder MCU)
  • \n
  • Alternativ: manuell per Ringing-Turm ohne Sensor möglich (weniger präzise)
  • \n
\n\n

Schritt 1: ADXL345 anschließen

\n
    \n
  1. ADXL345 per SPI an Raspberry Pi anschließen (VCC→3.3V, GND→GND, SCL→GPIO11, SDA→GPIO10, CS→GPIO8)
  2. \n
  3. In printer.cfg eintragen:
  4. \n
\n
\n [adxl345]
\n cs_pin: rpi:None

\n [resonance_tester]
\n accel_chip: adxl345
\n probe_points: 150,150,20\n
\n
    \n
  1. Sensor am Hotend befestigen (nicht am Bett bei CoreXY)
  2. \n
  3. Config neu laden und testen: ACCELEROMETER_QUERY
  4. \n
\n\n

Schritt 2: Resonanzmessung

\n
    \n
  1. Drucker aufheizen auf normale Drucktemperatur
  2. \n
  3. In Mainsail/Fluidd Console: MEASURE_AXES_NOISE (Baseline prüfen)
  4. \n
  5. Messung starten: TEST_RESONANCES AXIS=X
  6. \n
  7. Dann: TEST_RESONANCES AXIS=Y
  8. \n
  9. Klipper erstellt CSV-Dateien in /tmp/
  10. \n
  11. Analyse: ~/klipper/scripts/calibrate_shaper.py /tmp/resonances_x_*.csv -o /tmp/shaper_calibrate_x.png
  12. \n
\n\n

Schritt 3: Ergebnis auswerten und anwenden

\n

Der calibrate_shaper.py gibt eine Empfehlung aus, z.B.:

\n
\n Recommended shaper_type_x = mzv, shaper_freq_x = 52.4 Hz
\n Recommended shaper_type_y = ei, shaper_freq_y = 38.2 Hz\n
\n
    \n
  1. In printer.cfg unter [input_shaper] eintragen:
  2. \n
\n
\n [input_shaper]
\n shaper_type_x: mzv
\n shaper_freq_x: 52.4
\n shaper_type_y: ei
\n shaper_freq_y: 38.2\n
\n
    \n
  1. FIRMWARE_RESTART ausführen
  2. \n
  3. Testdruck mit hoher Geschwindigkeit zur Verifikation
  4. \n
\n\n

Shaper-Typen im Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
TypStärkeSchwächeWann nutzen
ZVMinimal SmoothingWenig DämpfungSehr steifer Drucker
MZVGute BalanceMittleres SmoothingEmpfehlung für die meisten Drucker
EIBreit wirksamMehr SmoothingWeicher/flexibler Frame
2HUMP_EIMaximale DämpfungStarkes SmoothingSehr weicher/schwerer Drucker
\n\n

Ohne Sensor: Manueller Ringing-Turm

\n
    \n
  1. OrcaSlicer oder Klipper-Makros: Calibration → Resonance → Ringing Tower
  2. \n
  3. Turm bei verschiedenen Frequenzen drucken (25–100 Hz typisch)
  4. \n
  5. Etage mit wenigsten Wellen = optimale Frequenz
  6. \n
  7. Shaper-Typ MZV als Default, Frequenz manuell eintragen
  8. \n
\n\n
\n Nach Input Shaping:\n Input Shaping erlaubt deutlich höhere Druckgeschwindigkeiten (oft +30–50 %) ohne sichtbares Ringing. Kombiniere es mit Pressure Advance für maximale Druckqualität bei Höchstgeschwindigkeit.\n
\n\n
\n
\n\n\n','Input Shaping kalibrieren','','publish','closed','closed','','input-shaping-kalibrieren','','','2026-03-27 07:15:56','2026-03-25 21:22:45','',0,'http://87.106.117.190/input-shaping-kalibrieren/',0,'post','',0), +(410,0,'2026-03-25 01:24:14','2026-03-25 00:24:14','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 01:24:14','2026-03-25 00:24:14','',12,'http://87.106.117.190/?p=410',0,'revision','',0), +(411,0,'2026-03-25 01:37:30','2026-03-25 00:37:30','\n\n\n\n\n
\n
\n

Temperaturturm auswerten

\n

Der Temperaturturm ist der schnellste Weg, die optimale Drucktemperatur für ein neues Filament zu finden. In 20 Minuten weißt du, bei welcher Temperatur dein Filament sein Bestes zeigt — ohne Rätselraten.

\n\n

Was ist ein Temperaturturm?

\n

Ein Temperaturturm ist ein einzelnes Testobjekt, das in mehreren Stufen gedruckt wird. Bei jeder Stufe senkt der Drucker die Temperatur automatisch — so kannst du alle relevanten Temperaturen in einem einzigen Druck vergleichen.

\n
    \n
  • Typisch: 8–10 Etagen, je 5–10 °C Unterschied
  • \n
  • Startet meist bei 230 °C, endet bei 180 °C (PLA)
  • \n
  • Jede Etage testet gleichzeitig: Bridging, Überhänge, Details, Stringlng
  • \n
  • Ergebnis: Die beste Temperatur für dein Filament aus deinem Drucker
  • \n
\n\n

Schritt 1: Turm-Modell holen

\n
    \n
  • OrcaSlicer: Calibration → Temperature Tower — direkt eingebaut, keine Datei nötig
  • \n
  • Bambu Studio: Calibration → Filament Calibration → Temperature
  • \n
  • PrusaSlicer / Cura: Modell von Printables herunterladen (z.B. „Smart Temperature Tower\")
  • \n
\n\n

Schritt 2: Temperatur-Skript einstellen

\n

Bei OrcaSlicer/Bambu Studio passiert das automatisch. Für PrusaSlicer und Cura muss ein G-Code-Skript die Temperatur pro Layer wechseln.

\n\n

PrusaSlicer — Custom G-Code

\n

Unter Filament Settings → Custom G-Code → Layer Change G-Code eintragen:

\n
\n {if layer_z < 2}M104 S230{endif}
\n {if layer_z >= 2 and layer_z < 6}M104 S225{endif}
\n {if layer_z >= 6 and layer_z < 10}M104 S220{endif}
\n {if layer_z >= 10 and layer_z < 14}M104 S215{endif}
\n {if layer_z >= 14 and layer_z < 18}M104 S210{endif}
\n {if layer_z >= 18 and layer_z < 22}M104 S205{endif}
\n {if layer_z >= 22 and layer_z < 26}M104 S200{endif}
\n {if layer_z >= 26}M104 S195{endif}\n
\n

Werte anpassen: Höhenwerte (2, 6, 10…) abhängig vom Turmmodell — die Z-Höhe je Etage steht im Modell-Download.

\n\n

Schritt 3: Turm auswerten

\n

Nach dem Druck jede Etage systematisch bewerten:

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
KriteriumZu kaltZu heißOptimal
Layer-HaftungSchichten lösen sichGutSchichten fest verbunden
StringingWenig bis kein StringingViele FädenMinimal, kaum sichtbar
OberflächeMatt, rau, Poren sichtbarGlänzend, verschmiertGleichmäßig seidig glatt
BridgingSehr gutes BridgingStark durchhängendLeicht durchhängend — ok
ÜberhängeScharf, kaum CurlWellen, Curl, AusfransungenSauber bis ~50°
\n\n

Richtwerte nach Material

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialStarttemperaturTestbereichTypisch optimal
PLA230 °C185 – 230 °C205 – 215 °C
PETG250 °C220 – 250 °C230 – 245 °C
ABS / ASA260 °C230 – 260 °C240 – 255 °C
TPU240 °C210 – 240 °C220 – 235 °C
\n\n

Häufige Fehler

\n
    \n
  • Turm dreht sich: Kühlung zu hoch → Turm „druckt sich selbst zu schnell ab\", untere Layer noch warm. Lüfter auf 80 % für ersten Etagen reduzieren
  • \n
  • Keine sichtbare Verbesserung zwischen Etagen: Temperaturschritte zu klein (2–3 °C). Nutze 5–10 °C Schritte
  • \n
  • Erste Etage hält nicht: Bett-Temperatur prüfen, nicht Düse
  • \n
  • Ergebnis schwankt je nach Filament-Farbe: Normal — Pigmente beeinflussen Viskosität. Jede Farbe separat testen
  • \n
\n\n
\n Workflow:\n Temperaturturm immer vor Flow-Rate und Retraction kalibrieren. Alle anderen Parameter hängen von der richtigen Temperatur ab — falsche Temperatur macht jeden anderen Kalibrierversuch unzuverlässig.\n
\n\n
\n
\n\n\n','Temperaturturm auswerten','','publish','closed','closed','','temperaturturm-kalibrieren','','','2026-03-27 07:15:56','2026-03-25 21:22:45','',0,'http://87.106.117.190/temperaturturm-kalibrieren/',0,'post','',0), +(412,0,'2026-03-25 01:37:31','2026-03-25 00:37:31','\n\n\n\n\n
\n
\n

Düsenwechsel & Nozzle-Upgrade

\n

Die Düse ist das günstigste Upgrade mit dem größten Einfluss auf Druckqualität und Materialkompatibilität. Dieser Guide erklärt wann du wechseln solltest, welche Düse für welchen Zweck und wie der Wechsel sicher gelingt.

\n\n

Wann die Düse wechseln?

\n
    \n
  • Verschleiß: Messing-Düsen halten ~500–1000 h PLA/PETG — danach Durchmesser vergrößert, Schärfe nimmt ab
  • \n
  • Materialwechsel: Carbon-, Glas- oder Metall-Filamente brauchen eine Hardened/Stahlnozzle
  • \n
  • Druckgrößenwechsel: Schnellere Drucke mit 0.6 mm, feinere Details mit 0.2–0.25 mm
  • \n
  • Dauerhafter Verstopfer: Kaltziehen und Nadelreinigung helfen nicht mehr → Düse wechseln
  • \n
\n\n

Düsen-Materialien im Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialGeeignet fürHaltbarkeitPreis
Messing (Brass)PLA, PETG, ABS, TPU500–1000 h1–3 €
Hardened SteelCF, Glasfaser, Metall2000+ h8–20 €
Stainless SteelLebensmittelkontakt, PLA/PETG1000–2000 h5–12 €
Ruby-TipAlles, auch abrasivSehr lang (Rubin-Einsatz)50–80 €
Kupfer/NickelHochtemperatur (PA, PC)Mittel10–25 €
\n\n

Düsengrößen — wann welche?

\n
\n
\n

0.2 mm

\n

Maximale Details, Miniaturen. Sehr langsam, verstopft leichter.

\n
\n
\n

0.4 mm ★

\n

Standard. Beste Balance aus Geschwindigkeit und Qualität. Empfehlung für 90 % aller Drucke.

\n
\n
\n

0.6 mm

\n

Schnell, stabil. Ideal für große Funktionsteile, weniger Details.

\n
\n
\n

0.8–1.0 mm

\n

Sehr schnell, grob. Für große strukturelle Teile, Vasen, wenig Auflösung.

\n
\n
\n\n

Düse wechseln — Schritt für Schritt

\n\n

Werkzeug

\n
    \n
  • Maulschlüssel oder Steckschlüssel 7 mm (MK3/Ender) oder 6 mm (Bambu)
  • \n
  • Heatblock-Schlüssel (20 mm) oder Zange mit Schutzpad
  • \n
  • PTFE-sicheres Hochtemperatur-Schmiermittel (optional)
  • \n
\n\n

Ablauf

\n
    \n
  1. Drucker aufheizen: Düse auf Drucktemperatur (PLA: 200–210 °C)
  2. \n
  3. Filament zurückziehen (manuell aus dem Hotend herausführen)
  4. \n
  5. Heatblock mit einer Hand fixieren (nicht verdrehen!)
  6. \n
  7. Alte Düse gegen den Uhrzeigersinn herausschrauben — bei Betriebstemperatur
  8. \n
  9. Neue Düse einschrauben — handfest plus ¼ Umdrehung (nicht überziehen)
  10. \n
  11. Düse muss den Heatblock berühren (kein Spalt → kein Leck)
  12. \n
  13. Abkühlen lassen, dann Nachziehen bei Raumtemperatur nicht notwendig
  14. \n
\n\n
\n Achtung:\n Niemals die Düse bei kaltem Hotend wechseln — das Filament im Heatblock verklebt und kann den Block oder PTFE-Schlauch beschädigen. Immer bei Betriebstemperatur wechseln.\n
\n\n

Nach dem Wechsel: Kalibrierung

\n
    \n
  • Z-Offset neu kalibrieren — Düsenlänge kann minimal abweichen
  • \n
  • Flow-Rate prüfen — neue Düse kann andere Eigenschaften haben
  • \n
  • Bei Düsengößenwechsel: Slicer-Profil auf neue Düse umstellen und Wandstärken/Layer-Höhe anpassen
  • \n
  • Ersten Druck überwachen: auf Leckagen an Heatblock/Düse achten
  • \n
\n\n

Abrasive Materialien — wann Hardened nötig?

\n
    \n
  • Carbon Fiber (CF): Hardened Steel Pflicht — zerstört Messing in wenigen Druckstunden
  • \n
  • Glasfaser (GF): Hardened Steel empfohlen
  • \n
  • Metall-Filamente (CopperFill etc.): Hardened oder Ruby
  • \n
  • Standard PLA/PETG/ABS/TPU: Messing reicht vollständig aus
  • \n
\n\n
\n Empfehlung:\n Halte immer 3–5 Messing-0.4mm-Düsen auf Vorrat. Sie kosten <3 € und ein frischer Tausch löst viele mysteriöse Qualitätsprobleme sofort — verschlissene Düsen sehen oft noch gut aus, liefern aber schlechte Ergebnisse.\n
\n\n
\n
\n\n\n','Düsenwechsel und Nozzle-Upgrade','','publish','closed','closed','','duesenwechsel-nozzle-upgrade','','','2026-03-27 07:15:56','2026-03-25 21:22:45','',0,'http://87.106.117.190/duesenwechsel-nozzle-upgrade/',0,'post','',0), +(413,0,'2026-03-25 01:37:32','2026-03-25 00:37:32','\n\n\n\n\n
\n
\n

Druckbett leveln & Z-Offset

\n

Eine perfekt kalibrierte erste Schicht ist die Grundlage für jeden guten Druck. Egal ob manuell, mit BLTouch oder automatischem Leveling — dieser Guide erklärt alle Methoden und häufige Fehler.

\n\n

Warum ist Bed Leveling so wichtig?

\n
    \n
  • Erste Schicht zu weit weg → kein Halt, Warping, Spaghetti-Druck
  • \n
  • Erste Schicht zu nah → Düse kratzt Bett, Verstopfer, Düsenschaden
  • \n
  • Ungleichmäßiges Bett → eine Ecke haftet, andere nicht
  • \n
  • Ziel: Erster Layer gleichmäßig „gequetscht\" — 75–80 % der Layer-Höhe
  • \n
\n\n

Methoden im Überblick

\n
\n
\n

Manuell (4-Punkt)

\n

Klassisch mit Papier-Methode. Günstig, keine Hardware nötig. Braucht Übung, nach Erschütterung wiederholen.

\n
\n
\n

BLTouch / CR Touch

\n

Automatisches Mesh-Leveling. Misst 16–25 Punkte, kompensiert Unebenheiten in Echtzeit. Empfehlung für alle.

\n
\n
\n

Induktiv / PEI-Sensor

\n

Bei Bambu, Prusa MK4, Voron — voll automatisch, kein manuelles Eingreifen nötig.

\n
\n
\n\n

Manuelles Leveling — Papier-Methode

\n
    \n
  1. Drucker aufheizen (Bett + Düse auf Drucktemperatur)
  2. \n
  3. Home XYZ — Düse in Home-Position fahren
  4. \n
  5. Z-Offset auf 0 setzen (oder Papier-Methode direkt nutzen)
  6. \n
  7. Blatt Papier (80 g/m²) unter die Düse schieben
  8. \n
  9. Rändelschraube drehen: Papier soll sich mit leichtem Widerstand bewegen — nicht klemmen, nicht lose
  10. \n
  11. Alle 4 Ecken und die Mitte so einstellen
  12. \n
  13. Runde wiederholen bis alle Punkte gleich sind
  14. \n
\n\n
\n Papier-Methode — Feedback:
\n Zu nah: Papier klemmt, lässt sich nicht bewegen
\n • Zu weit: Papier gleitet ohne jeglichen Widerstand
\n • Optimal: Papier zieht mit spürbarem, aber nicht starkem Widerstand
\n
\n\n

BLTouch / CR Touch einrichten

\n

Marlin (Ender, CR-10 etc.)

\n
    \n
  1. BLTouch per 5-Pin-Kabel an Mainboard anschließen (Pinbelegung je nach Board)
  2. \n
  3. In Marlin-Firmware: AUTO_BED_LEVELING_BILINEAR aktivieren
  4. \n
  5. Mesh-Größe einstellen (empfohlen: 5×5 = 25 Punkte)
  6. \n
  7. Probe-Offset (X/Y/Z) zur Düse eintragen
  8. \n
  9. Nach Flash: G28G29 (Mesh messen)
  10. \n
  11. Mesh speichern: M500
  12. \n
  13. In Start-G-Code: M420 S1 zum Mesh laden
  14. \n
\n\n

Klipper (BLTouch)

\n
\n [bltouch]
\n sensor_pin: ^PC14
\n control_pin: PA1
\n x_offset: -44
\n y_offset: -8
\n z_offset: 2.5

\n [bed_mesh]
\n speed: 120
\n mesh_min: 15, 15
\n mesh_max: 190, 190
\n probe_count: 5, 5
\n algorithm: bicubic\n
\n

Messung starten: BED_MESH_CALIBRATE in der Console. Profil speichern: BED_MESH_PROFILE SAVE=default

\n\n

Z-Offset kalibrieren

\n

Der Z-Offset ist der Abstand zwischen dem Nullpunkt des Sensors und der tatsächlichen Bettoberfläche. Er muss für jeden Drucker/Bett-Typ eingestellt werden.

\n\n

Klipper — Paper Test Methode

\n
    \n
  1. G28 — Home alle Achsen
  2. \n
  3. PROBE_CALIBRATE — Klipper fährt zur Probe-Position
  4. \n
  5. Mit TESTZ Z=-0.1 schrittweise absenken bis Papier-Methode greift
  6. \n
  7. ACCEPT — Wert bestätigen
  8. \n
  9. SAVE_CONFIG — in printer.cfg speichern
  10. \n
\n\n

Marlin — Baby Stepping

\n
    \n
  • Während des ersten Layers: Z-Offset per Display in 0.05 mm Schritten anpassen
  • \n
  • Speichern: M851 Z[wert]M500
  • \n
  • Bambu/OrcaSlicer: Calibration → First Layer Calibration
  • \n
\n\n

Erste Schicht bewerten

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
AussehenProblemLösung
Linien verschmelzen, kaum LückenOptimal
Linien einzeln sichtbar, rundZ-Offset zu hochZ-Offset verringern (–0.05 bis –0.1)
Fläche kratzt, Material verklumptZ-Offset zu niedrigZ-Offset erhöhen (+0.05 bis +0.1)
Ecken haften nicht, Mitte okBett nicht ebenManuell korrigieren oder Mesh-Leveling nutzen
Mitte hält nicht, Ecken okBett durchgebogenMesh-Leveling mit mehr Punkten (5×5)
\n\n
\n Goldene Regel:\n Levele bei Betriebstemperatur — kaltes Bett verzieht sich beim Aufheizen und macht manuelle Kalibrierung zunichte. Bei PEI-Betten: nach Reinigung mit IPA immer neu kalibrieren.\n
\n\n
\n
\n\n\n','Druckbett leveln und Z-Offset','','publish','closed','closed','','druckbett-leveln-z-offset','','','2026-03-27 07:15:56','2026-03-25 21:22:45','',0,'http://87.106.117.190/druckbett-leveln-z-offset/',0,'post','',0), +(414,0,'2026-03-25 01:37:39','2026-03-25 00:37:39','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 01:37:39','2026-03-25 00:37:39','',29,'http://87.106.117.190/?p=414',0,'revision','',0), +(415,0,'2026-03-25 01:37:39','2026-03-25 00:37:39','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
25+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
25+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n
500+
\n
Aktive Community-Mitglieder
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 01:37:39','2026-03-25 00:37:39','',8,'http://87.106.117.190/?p=415',0,'revision','',0), +(416,0,'2026-03-25 01:38:03','2026-03-25 00:38:03','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 01:38:03','2026-03-25 00:38:03','',12,'http://87.106.117.190/?p=416',0,'revision','',0), +(417,0,'2026-03-25 01:46:01','2026-03-25 00:46:01','\n\n\n\n\n
\n
\n

Adaptive Layer Height

\n

Adaptive Layer Height ist eines der mächtigsten Qualitäts-Features moderner Slicer. Es senkt automatisch die Schichthöhe an Kurven und Überhängen — und erhöht sie an flachen Flächen. Das Ergebnis: glattere Oberflächen bei gleichzeitig kürzerer Druckzeit als reines Fine Layer.

\n\n

Das Problem: Feste Schichthöhe ist ein Kompromiss

\n

Mit fester Schichthöhe muss man wählen:

\n
    \n
  • 0.20 mm: Gute Geschwindigkeit, sichtbare Linien bei Kurven (Treppeneffekt)
  • \n
  • 0.12 mm: Glatte Kurven, aber 40–60 % längere Druckzeit überall
  • \n
  • Adaptive Layer Height: 0.06–0.28 mm automatisch je nach Oberfläche — beste Qualität, optimale Zeit
  • \n
\n\n

Wie funktioniert es?

\n

Der Slicer analysiert die Modell-Geometrie Layer für Layer. Wo die Oberfläche steil ist (kleine Winkel zur Horizontale), erhöht er die Layeranzahl durch kleinere Schichthöhe. Wo die Oberfläche fast flach ist, nutzt er große Schichten.

\n
\n
\n

Steile Fläche / Kurve

\n

Kleine Schichthöhe (0.08–0.12 mm) → weniger Treppeneffekt, glattere Oberfläche

\n
\n
\n

Flache Fläche

\n

Große Schichthöhe (0.20–0.28 mm) → schneller, kaum Qualitätsverlust sichtbar

\n
\n
\n

Top-Layer

\n

Normal — Adaptive Layer nicht auf obere Deckflächen angewendet

\n
\n
\n\n

Slicer-spezifische Einstellungen

\n\n

OrcaSlicer

\n
    \n
  1. Rechtsklick auf Modell → Layer Height → Adaptive Layer Height
  2. \n
  3. Alternativ: in der oberen Toolbar das Layer-Symbol anklicken
  4. \n
  5. Parameter einstellen:
    \n Base Layer Height: deine Standard-Schichthöhe (z.B. 0.20 mm)
    \n Max Layer Height: Maximum (z.B. 0.28 mm für 0.4er Düse)
    \n Min Layer Height: Minimum (z.B. 0.08 mm)
    \n Threshold: Qualitätsstufe — niedrig = aggressiver adaptiv
  6. \n
  7. Vorschau im Layer-View: Farbcodierung zeigt kleine (blau) vs. große Layer (rot)
  8. \n
\n\n

PrusaSlicer

\n
    \n
  1. Object Settings → Variable Layer Height (Profi-Modus nötig)
  2. \n
  3. Taste L im 3D-View für den Layer-Height Editor
  4. \n
  5. Smooth-Funktion nutzen für automatische Anpassung
  6. \n
  7. Manuell: Mit der Maus Bereiche ziehen und Höhe anpassen
  8. \n
  9. Shortcuts: + / - für feinere/gröbere Layer im ausgewählten Bereich
  10. \n
\n\n

Bambu Studio

\n
    \n
  1. Rechtsklick auf Modell → Height Range Modifier
  2. \n
  3. Für automatisch adaptive: Slicer-Einstellung → Quality → Adaptive Layer Height aktivieren
  4. \n
  5. Threshold-Wert bestimmt Aggressivität (Standard: 0.2)
  6. \n
\n\n

Cura

\n
    \n
  • Einstellung: Adaptive Layers (Suche in Settings)
  • \n
  • Adaptive Layers Maximum Variation: maximale Abweichung von Basis-Layer (z.B. 0.1 mm)
  • \n
  • Adaptive Layers Variation Step Size: Schrittgröße (z.B. 0.01 mm)
  • \n
\n\n

Empfohlene Werte nach Düsengröße

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
DüseMin LayerBasis LayerMax Layer
0.2 mm0.05 mm0.10 mm0.15 mm
0.4 mm ★0.08 mm0.20 mm0.28 mm
0.6 mm0.12 mm0.24 mm0.36 mm
\n

Faustregel: Min = 20 % der Düsengröße, Max = 70 % der Düsengröße

\n\n

Wann lohnt es sich — wann nicht?

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Modell-TypAdaptive Layer sinnvoll?
Organisch, rund (z.B. Figuren, Gefäße)✅ Sehr sinnvoll — deutlich glattere Kurven
Mechanische Teile (Quader, Zylinder)⚠️ Kaum Vorteil bei rein eckigen Formen
Miniatures / Details✅ Ja — aber Min Layer weit genug absenken
Architektatur-Modelle✅ Sehr sinnvoll bei geschwungenen Elementen
Technische Präzisionsteile❌ Feste Layer für Maßhaltigkeit besser
\n\n
\n Tipp:\n Kombiniere Adaptive Layer Height mit Ironing auf den Top-Layern für maximale Oberflächenqualität bei optischen Teilen. Adaptive sorgt für glatte Seiten, Ironing für perfekte Deckflächen — zusammen kaum von FDM zu unterscheiden.\n
\n\n
\n
\n\n\n','Adaptive Layer Height','','publish','closed','closed','','adaptive-layer-height','','','2026-03-27 07:15:56','2026-03-25 21:22:46','',0,'http://87.106.117.190/adaptive-layer-height/',0,'post','',0), +(418,0,'2026-03-25 01:46:02','2026-03-25 00:46:02','\n\n\n\n\n
\n
\n

Multi-Material & AMS einrichten

\n

Multi-Material-Druck öffnet eine neue Dimension: Mehrfarb-Modelle, lösliche Supports, flexible und starre Bereiche in einem Teil. Dieser Guide erklärt AMS (Bambu Lab), MMU3 (Prusa) und die Slicer-Einstellungen für perfekte Ergebnisse.

\n\n

Systeme im Überblick

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SystemSlotsDruckerBesonderheit
Bambu AMS4 (bis 16 mit 4 AMS)X1C, P1S, P1P, A1Vollautomatisch, Cutter eingebaut
Bambu AMS Lite4A1 Mini, A1Günstiger, kein Cutter
Prusa MMU35MK3S+, MK4Open-Source, reparierbar
ERCF / Tradrack6–12+Klipper-DruckerDIY, maximale Flexibilität
\n\n

Bambu AMS einrichten

\n\n

Ersteinrichtung

\n
    \n
  1. AMS per mitgeliefertem Kabel an Drucker anschließen (PTFE-Schlauch + elektrisch)
  2. \n
  3. Filament in alle gewünschten Slots einlegen — Bambu-Filament wird automatisch erkannt (NFC-Chip), Drittanbieter manuell eingeben
  4. \n
  5. In Bambu Studio / OrcaSlicer: Drucker-Profil auswählen → AMS-Slots erscheinen links im Panel
  6. \n
  7. Filament-Profile pro Slot zuweisen (Material, Temperatur, Farbe)
  8. \n
  9. Erstmalig: Kalibrierung durchführen — Calibration → AMS Calibration
  10. \n
\n\n

Filament-Wechsel-Mechanismus

\n

Beim Materialwechsel wird das aktive Filament zurückgezogen, die Düse gespült (Purge), dann das neue Filament geladen. Das erzeugt unvermeidlich Purge-Material.

\n
    \n
  • Purge Tower (Wipe Tower): Standard — Material wird auf einen Turm neben dem Modell gedrückt
  • \n
  • Purge into Infill: Purge-Material wird ins Infill des Modells gedrückt — spart Material, nur bei ausreichend Infill möglich
  • \n
  • Purge-Volumen reduzieren: Farbübergänge optimieren — dunkel → hell braucht mehr Purge als hell → dunkel
  • \n
\n\n

Slicer-Einstellungen für Multi-Material

\n\n

Modell für Multi-Material vorbereiten

\n
    \n
  1. Modell muss aus mehreren STL-Dateien bestehen (je eine pro Farbe/Material) — oder als OBJ/3MF mit mehreren Objekten
  2. \n
  3. In Bambu Studio: Drag & Drop aller STL-Dateien → als ein Teil zusammenführen (Merge)
  4. \n
  5. Jedem Objekt im Panel den gewünschten AMS-Slot zuweisen
  6. \n
  7. Alternativ: Paint-on Multi-Color — ein einzelnes STL, manuell mit verschiedenen Farben bemalen
  8. \n
\n\n

Paint-on Multi-Color (Bambu Studio / OrcaSlicer)

\n
    \n
  1. Modell importieren → Rechtsklick → Add Color Painting
  2. \n
  3. Brush-Tool wählen und gewünschte Flächen mit Farben bemalen
  4. \n
  5. Triangle / Sphere / Fill-Modus für verschiedene Bereiche nutzen
  6. \n
  7. Besonderheit: Auto Color Painting bei Bambu Studio für einfache Logos
  8. \n
\n\n

Purge Tower Einstellungen optimieren

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EinstellungEmpfehlungHinweis
Purge-Volumen (hell → dunkel)35–50 mm³Wenig Purge nötig
Purge-Volumen (dunkel → hell)80–140 mm³Mehr nötig für saubere Farbe
Purge into InfillAktivieren ab 15 % InfillSpart Tower-Material
Tower BreiteStandard (auto)Nur bei sehr kleinen Drucken manuell
\n\n

Lösliche Supports — das Killer-Feature

\n

Mit Multi-Material kannst du Supports aus löslichem Filament drucken — danach einfach in Wasser auflösen, keine Spuren.

\n
    \n
  • PVA: löst sich in Wasser, kombiniert mit PLA — Klassiker, aber feuchtigkeitsempfindlich
  • \n
  • BVOH: schneller löslich als PVA, weniger feuchtigkeitssensibel
  • \n
  • Breakaway (PETG/PP): mechanisch abbrechbar, keine Löslichkeit nötig — günstiger
  • \n
  • Im Slicer: Support-Material auf Slot 2 legen, Interface Layer auf lösliches Material setzen
  • \n
\n\n

Häufige Probleme & Lösungen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ProblemUrsacheLösung
Farbbluten an ÜbergängenPurge-Volumen zu geringPurge-Wert für diese Kombination erhöhen
AMS lädt nicht richtigFilament-Sensor, FeuchtigkeitFilament trocknen, PTFE-Schlauch prüfen
Verstopfer beim WechselCold Pull nicht sauber, zu niedriger DruckCold Pull durchführen, Temperatur prüfen
Purge Tower fällt umTower zu schmal, Haftung schlechtTower-Breite erhöhen, Brim aktivieren
\n\n
\n Einstiegs-Tipp:\n Starte Multi-Material mit zwei PLA-Rollen gleicher Marke in verschiedenen Farben. Gleiche Druckparameter, keine Temperatur-Kompromisse. Erst wenn das sitzt, zu verschiedenen Materialien (PLA + TPU, PLA + PVA) wechseln.\n
\n\n
\n
\n\n\n','Multi-Material und AMS einrichten','','publish','closed','closed','','multi-material-ams','','','2026-03-27 07:15:56','2026-03-25 21:22:46','',0,'http://87.106.117.190/multi-material-ams/',0,'post','',0), +(419,0,'2026-03-25 01:46:24','2026-03-25 00:46:24','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 01:46:24','2026-03-25 00:46:24','',12,'http://87.106.117.190/?p=419',0,'revision','',0), +(420,0,'2026-03-25 01:58:03','2026-03-25 00:58:03','\n\n\n\n\n
\n
\n

Elefantenfuß beheben

\n

Die erste Schicht quillt nach außen – das Modell steht auf einem breiten Sockel statt einer sauberen Basis. Dieser Guide erklärt Ursachen, Diagnose und präzise Lösungsschritte für jede Firmware und jeden Slicer.

\n\n

Was ist Elefantenfuß?

\n

Beim Elefantenfuß (englisch: Elephant Foot) wird die erste gedruckte Schicht nach außen gedrückt und bildet einen breiteren Rand als das eigentliche Modell. Das Ergebnis sieht aus wie der Fuß eines Elefanten – die Basis des Drucks ist breiter als alle darüberliegenden Schichten. Das Problem tritt typischerweise nur in den ersten 1–3 Layern auf und ist gut sichtbar bei Modellen mit geraden, senkrechten Wänden.

\n\n
\n Warum ist das ein Problem?\n

Elefantenfuß verhindert saubere Passungen, macht Teile schwer entfernbar von der Druckplatte und beeinträchtigt die Maßgenauigkeit. Bei Funktionsteilen (Gelenke, Schnittstellen) ist der Fehler oft nicht tolerierbar.

\n
\n\n

Ursachen im Überblick

\n
    \n
  • Z-Offset zu niedrig: Die Düse ist zu nah am Bett. Das Material wird seitlich verdrängt statt gleichmäßig aufgetragen.
  • \n
  • Betttemperatur zu hoch: Wärme hält das Material länger flüssig, es fließt seitlich aus.
  • \n
  • Erste Schicht zu langsam: Längere Verweilzeit bedeutet mehr Zeit zum seitlichen Fließen.
  • \n
  • Flow/Extrusion zu hoch: Zu viel Material pro mm wird extrudiert und muss irgendwo hin.
  • \n
  • Erste-Layer-Höhe zu gering: Wenn die Layer Height der ersten Schicht unter 0,15 mm liegt, ist das Risiko deutlich erhöht.
  • \n
  • Kein Kühllüfter für erste Layer: Das Material bleibt länger weich und fließt aus.
  • \n
\n\n

Diagnose-Tabelle

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
AussehenWahrscheinliche UrsacheLösung
Gleichmäßiger Rand rundum, alle Seiten betroffenZ-Offset zu niedrigZ-Offset um +0,05 mm erhöhen (Düse weiter weg vom Bett)
Rand nur auf einer Seite, Bett leicht schiefUnlevel Bett + Z-OffsetBett neu leveln, dann Z-Offset finetunen
Breiter Rand + glänzende, wabbelige Oberfläche der ersten LayerBetttemperatur zu hochBetttemperatur nach Layer 2–3 um 5–10 °C reduzieren
Breiter Rand, erste Schicht sieht „zerquetscht\" ausFlow erste Schicht zu hochFirst Layer Flow auf 95 % reduzieren
Rand leicht nach außen, Rest des Drucks okErste Schicht zu langsamFirst Layer Speed auf 30–40 mm/s erhöhen, Elephant Foot Compensation aktivieren
\n\n

Schritt-für-Schritt: Z-Offset korrigieren

\n

Der Z-Offset bestimmt, wie weit die Düse von der Druckplatte entfernt ist. Ein zu niedriger Wert ist die häufigste Ursache. Hier die Vorgehensweise nach Firmware:

\n\n

Marlin (Ender, CR-10, Voron mit Marlin)

\n
\n 1. Pronterface / OctoPrint Terminal öffnen
\n 2. M503 → aktuellen Z-Offset anzeigen lassen
\n 3. M851 Z-X.XX → neuen Wert setzen (z.B. M851 Z-1.80 statt -1.90)
\n 4. M500 → in EEPROM speichern
\n 5. M501 → Werte laden und prüfen\n
\n

Faustregel: Z-Offset in Richtung positiv erhöhen = Düse weiter weg vom Bett. Schrittgröße: 0,025–0,05 mm pro Iteration.

\n\n

Klipper (Voron, Ratrig, Custom)

\n
\n # In printer.cfg oder via Mainsail/Fluidd UI:
\n [stepper_z]
\n position_endstop: X.XXX ← diesen Wert anpassen

\n # Oder per Console (live, ohne Neustart):
\n SET_GCODE_OFFSET Z=0.05 MOVE=1 ← temporär, +0.05mm höher
\n Z_OFFSET_APPLY_PROBE ← dauerhaft in Config übernehmen
\n SAVE_CONFIG\n
\n\n

Bambu Lab (X1C, P1S, A1)

\n
    \n
  • Bambu Studio → Drucker auswählen → Calibration → Lidar Calibration erneut durchführen
  • \n
  • Alternativ: Im Display → Settings → Calibration → First Layer Inspection
  • \n
  • Manueller Eingriff: Bed Mesh Leveling neu starten und anschließend einen Testdruck mit dem integrierten First-Layer-Test durchführen
  • \n
  • Für feines Tuning: Beim laufenden Druck im Display den Z-Offset Live-Adjust nutzen (+0.05 Schritte)
  • \n
\n\n

Slicer-Einstellungen: Elephant Foot Compensation

\n

Alle modernen Slicer bieten eine softwareseitige Kompensation. Diese verkleinert die erste(n) Schicht(en) geringfügig, sodass das ausgequollene Material optisch verschwindet. Sie ersetzt nicht die korrekte Z-Offset-Kalibrierung, aber ergänzt sie gut.

\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SlicerEinstellungPfadEmpfohlener Wert
OrcaSlicerElephant foot compensationQuality → First layer0,1–0,2 mm
PrusaSlicerElephant foot compensationPrint Settings → Advanced0,1–0,2 mm
Bambu StudioElephant foot compensationQuality → First layer0,1 mm (Standard)
CuraInitial Layer Horizontal ExpansionShell → Horizontal Expansion-0,1 bis -0,2 mm (negativer Wert!)
\n\n
\n Achtung bei Cura:\n

In Cura wird der Wert negativ eingegeben (z.B. -0,15 mm), da positive Werte die erste Schicht vergrößern. In OrcaSlicer und PrusaSlicer wird ein positiver Wert eingetragen, der intern als Reduktion interpretiert wird.

\n
\n\n

Weitere Optimierungstipps

\n\n

Betttemperatur nach den ersten Layern senken

\n

Eine häufig unterschätzte Technik: Starte die ersten 2–3 Layer mit normaler Hafttemperatur, senke dann die Betttemperatur um 5–10 °C. Das Material härtet schneller aus und kann nicht mehr seitlich fließen.

\n
\n # Beispiel Start-G-Code Snippet (Marlin/Klipper):
\n M190 S60 ; Bett auf 60°C (PLA Hafttemperatur)
\n ; ... erste 3 Layer drucken ...
\n M140 S50 ; Bett auf 50°C senken ab Layer 4\n
\n

In OrcaSlicer/Bambu Studio kann das über Process → Temperature → Bed Temperature per Layer konfiguriert werden.

\n\n

Kühllüfter für die erste Schicht

\n
    \n
  • Standardmäßig ist der Lüfter für Layer 1 deaktiviert (wegen Haftung)
  • \n
  • Bei ausgeprägtem Elefantenfuß: Lüfter auf 20–30 % für Layer 1–3 setzen
  • \n
  • In OrcaSlicer: Cooling → Fan speed for the first X layers
  • \n
  • Vorsicht: Bei ABS, ASA, PC diesen Tipp nicht anwenden – erhöhtes Warping-Risiko
  • \n
\n\n

First Layer Speed

\n
    \n
  • Sehr langsame erste Layer (unter 20 mm/s) verschlimmern den Elefantenfuß
  • \n
  • Optimaler Bereich: 25–40 mm/s für die erste Schicht
  • \n
  • Zu schnell (über 60 mm/s) verschlechtert die Haftung
  • \n
\n\n
\n Abschlusstipp: Reihenfolge der Korrekturen\n

Gehe immer in dieser Reihenfolge vor: 1. Bett leveln → 2. Z-Offset korrigieren → 3. Betttemperatur anpassen → 4. Slicer-Kompensation aktivieren. Wer direkt mit der Slicer-Kompensation anfängt, maskiert das Problem nur, ohne es zu lösen. Korrekte Hardware-Kalibrierung ist immer die Basis.

\n
\n\n
\n
\n\n\n','Elefantenfuß beheben','','publish','closed','closed','','elefantenfuss-beheben','','','2026-03-27 07:15:56','2026-03-25 21:22:46','',0,'http://87.106.117.190/elefantenfuss-beheben/',0,'post','',0), +(421,0,'2026-03-25 01:58:04','2026-03-25 00:58:04','\n\n\n\n\n
\n
\n

Ironing: Top-Oberflächen glätten

\n

Ironing lässt die Düse nach dem Drucken der obersten Schicht langsam darüber gleiten und glättet Unebenheiten mit Restwärme – das Ergebnis sind spiegelglatte Top-Flächen ohne Postprocessing.

\n\n

Was ist Ironing?

\n

Nach dem normalen Druck des letzten Top-Layers fährt die Düse in einem engmaschigen Muster erneut über die Oberfläche – langsam und mit sehr geringem Flow oder komplett ohne Extrusion. Die gespeicherte Restwärme der Düse schmilzt die oberste Schicht leicht an und glättet Riefen sowie Übergänge zwischen den Druckbahnen. Das Verfahren ist rein softwaregesteuert und erfordert keine Hardware-Modifikationen.

\n\n
\n Verfügbar in folgenden Slicern:\n

OrcaSlicer, PrusaSlicer 2.4+, Bambu Studio, Ultimaker Cura 4.x+
\n In älteren Cura-Versionen heißt die Option „Ironing\", in PrusaSlicer und OrcaSlicer ebenfalls. In Bambu Studio ist es unter „Quality\" zu finden.

\n
\n\n

Einstellungen im Detail

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterTypischer WertFunktionHinweis
Ironing Speed10–20 mm/sGeschwindigkeit des GlättzugsZu schnell = kein Glätteffekt, zu langsam = Zits/Blobs
Ironing Flow10–15 %Extrudierter Anteil während IroningFüllt Mikrolücken; 0 % = nur Wärmeglättung
Ironing Line Spacing0,1–0,2 mmAbstand der Glättzüge zueinanderKleiner = glatter aber langsamer
Ironing PatternZig-Zag / ConcentricFahrtmuster der DüseZig-Zag: schnell; Concentric: ästhetischer
Ironing Only Highest LayerAn (empfohlen)Nur oberste Fläche bügelnAus = alle Top-Flächen; stark erhöhte Druckzeit
\n\n

Slicer-spezifische Anleitung

\n\n

OrcaSlicer

\n
    \n
  • Process → Quality → Ironing aktivieren (Checkbox)
  • \n
  • Darunter erscheinen: Ironing Type, Ironing Speed, Ironing Flow, Line Spacing
  • \n
  • Ironing Type: „All top surfaces\" für maximale Wirkung oder „Highest surfaces only\" für Zeitersparnis
  • \n
  • Empfohlene Startwerte: Speed 15 mm/s, Flow 12 %, Spacing 0,15 mm
  • \n
\n\n

PrusaSlicer

\n
    \n
  • Print Settings → Infill → Ironing → Enable Ironing aktivieren
  • \n
  • Ironing Type: „All top surfaces\" oder „Highest surface only\"
  • \n
  • Flow rate, Speed und Spacing unter den gleichen Abschnitt
  • \n
  • Tipp: PrusaSlicer erlaubt Ironing per-Objekt über Rechtsklick → Add Settings → Ironing
  • \n
\n\n

Bambu Studio

\n
    \n
  • Process → Quality → Ironing (identisch zu OrcaSlicer, da gleiche Basis)
  • \n
  • Einstellungen direkt sichtbar ohne „Expert Mode\" aktivieren zu müssen
  • \n
  • Bambu-Drucker profitieren besonders wegen der hohen Steifigkeit und Präzision der Achsen
  • \n
\n\n

Cura

\n
    \n
  • Print Settings → Shell → Ironing (Suchfeld: „Ironing\")
  • \n
  • Enable Ironing → Ironing Pattern (Zig Zag / Concentric / Lines)
  • \n
  • Ironing Flow, Speed, Line Spacing separat einstellbar
  • \n
  • Cura-spezifisch: „Ironing Only Highest Layer\" spart viel Zeit bei Objekten mit mehreren Top-Flächen
  • \n
\n\n

Wann Ironing sinnvoll ist – und wann nicht

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SituationIroning empfohlen?Begründung
Flache, horizontale Top-FlächenJaMaximale Wirkung, klares Ergebnis
Schilder, Namensschilder, TexttafelnJaSchrift hebt sich klarer ab auf glatter Fläche
Dekorative Objekte mit flacher Seite obenJaQualitätssteigerung ohne Postprocessing
Runde/geschwungene Oberflächen (Vase, Kugel)NeinDüse fährt über Kanten, erzeugt Artefakte
Funktionsteile (Maßhaltigkeit kritisch)NeinIroning kann Maße minimal verändern
Flexible Materialien (TPU)NeinMaterial weicht aus, kein Glätteffekt
\n\n

Häufige Probleme und Lösungen

\n\n

Zits und Blobs auf der gebügelten Fläche

\n

Kleine Materialkleckse entstehen beim An- und Absetzen der Düse. Ursache ist meistens zu hoher Ironing Flow oder fehlende Retraction vor dem Ironing-Zug.

\n
    \n
  • Ironing Flow von 15 % auf 10 % oder weniger reduzieren
  • \n
  • Retraction für Ironing-Bewegungen aktivieren (sofern Slicer unterstützt)
  • \n
  • Drucktemperatur um 2–3 °C senken für weniger flüssiges Material
  • \n
\n\n

Streifenmuster sichtbar (Striped Pattern)

\n

Die Ironing-Bahnen sind als parallele Streifen erkennbar, obwohl die Fläche glatter sein sollte.

\n
    \n
  • Line Spacing reduzieren: von 0,2 mm auf 0,1–0,15 mm
  • \n
  • Ironing Speed leicht erhöhen (zu langsam = mehr Material pro Strecke)
  • \n
  • Pattern auf Concentric wechseln für organischeres Ergebnis
  • \n
\n\n

Temperatur zu hoch: Oberfläche sieht verbrannt aus

\n
\n Gefahr von Überheizung:\n

Wenn die Düse zu langsam (unter 8 mm/s) über die Fläche fährt und gleichzeitig die Temperatur zu hoch ist, kann das Material verglasen oder sich verfärben. Bei PLA: Ironing-Temperatur nicht über 220 °C. Bei PETG: nicht über 245 °C. Im Zweifelsfall Ironing Speed erhöhen statt Temperatur senken.

\n
\n\n

Kombinationstipp: Ironing + Adaptive Layer Height

\n

Die Kombination aus Adaptive Layer Height und Ironing ist besonders wirkungsvoll: Adaptive Layer Height sorgt dafür, dass schräge Flächen mit feinen Layern gedruckt werden, während Ironing die abschließenden Top-Flächen glättet. So wird Druckzeit gespart (dicke Layer wo möglich), aber die Qualität an sichtbaren Stellen ist maximal.

\n
    \n
  • In OrcaSlicer/PrusaSlicer: Quality → Adaptive Layer Height aktivieren
  • \n
  • Gleichzeitig Ironing nur für „Highest surfaces only\" aktivieren
  • \n
  • Ergebnis: Effizienter Druck mit professioneller Optik auf den sichtbaren Flächen
  • \n
\n\n
\n Praxis-Tipp: Kalibrierungstest vor Seriendruck\n

Drucke vor wichtigen Projekten eine flache Testplatte (50 × 50 × 2 mm) mit verschiedenen Ironing-Einstellungen. Beschrifte die Unterseite mit den Parametern. So hast du ein physisches Referenzmuster für jedes Filament – die optimalen Werte können je nach Material stark variieren.

\n
\n\n
\n
\n\n\n','Ironing: Top-Oberflächen glätten','','publish','closed','closed','','ironing-top-oberflaechen','','','2026-03-27 07:15:56','2026-03-25 21:22:46','',0,'http://87.106.117.190/ironing-top-oberflaechen/',0,'post','',0), +(422,0,'2026-03-25 01:58:05','2026-03-25 00:58:05','\n\n\n\n\n
\n
\n

Nylon / PA drucken

\n

Nylon (Polyamid/PA) ist eines der leistungsfähigsten FDM-Materialien: extrem zäh, hitzebeständig und chemikalienresistent. Der Preis dafür ist eine anspruchsvolle Verarbeitung – wer die Grundregeln kennt, erhält aber Funktionsteile in Industriequalität.

\n\n

Was ist PA / Nylon?

\n

Polyamid (PA), im Volksmund Nylon, ist ein teilkristalliner Thermoplast mit herausragenden mechanischen Eigenschaften. Im Vergleich zu PLA oder PETG ist PA deutlich zäher (höhere Schlagfestigkeit), bleibt unter Dauerlast formstabil und hält Temperaturen bis zu 180 °C stand (je nach Typ). Zudem ist es gegenüber vielen Chemikalien, Kraftstoffen und Ölen resistent.

\n\n
\n Kritische Eigenschaft: Hygroskopizität\n

Nylon ist extrem feuchtigkeitsabsorbierend. Eine frisch geöffnete Rolle kann nach nur 30–60 Minuten an der Luft bereits zu viel Feuchtigkeit aufgenommen haben, um sauber zu drucken. Feuchtes Nylon produziert Blasen, Popping-Geräusche, brüchige Schichten und einen matten, rauhen Druck. Trocknen vor dem Druck ist Pflicht, nicht Option.

\n
\n\n

PA6 vs. PA12 vs. PA-CF – Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EigenschaftPA6 (Nylon 6)PA12 (Nylon 12)PA-CF (Carbon Fiber)
Drucktemperatur240–260 °C230–250 °C250–280 °C
Betttemperatur70–90 °C60–80 °C80–100 °C
HygroskopizitätSehr hochMittel (besser als PA6)Hoch
Warping-TendenzSehr hochMittelGering bis mittel
ZugfestigkeitHoch (~80 MPa)Mittel (~60 MPa)Sehr hoch (~120+ MPa)
SteifigkeitFlexibel-zähEtwas steifer als PA6Sehr steif, wenig Flex
Düse erforderlichHardened empfohlenHardened empfohlenHardened Steel / Ruby Pflicht
Typische AnwendungZahnräder, Lager, BuchsenKabelbinder, Schläuche, einfache TeileHochbelastete Strukturteile, Halterungen
\n\n

Voraussetzungen – was zwingend nötig ist

\n\n

1. Enclosure (Gehäuse) – Pflicht bei PA6, stark empfohlen bei PA12

\n

Nylon warpt extrem stark, wenn es beim Drucken abkühlt. Ein geschlossenes Gehäuse hält die Umgebungstemperatur konstant bei 40–60 °C und reduziert das Temperatur-Delta zwischen frisch gedruckter Schicht und der Umgebung. Ohne Enclosure werden größere Teile aus PA6 mit hoher Wahrscheinlichkeit vom Bett reißen.

\n
    \n
  • Bambu X1C / P1S: Eingebaute Enclosure, direkt geeignet
  • \n
  • Voron, Ratrig V-Core: Vollständig geschlossen, ideal
  • \n
  • Ender 3, Prusa MK4: Nachrüst-Enclosure aus Planen oder IKEA-Lack-Tisch notwendig
  • \n
\n\n

2. Hardened Steel Nozzle – Pflicht

\n

Nylon ist abrasiv. Besonders PA-CF (Carbonfaser-Verstärkung) verschleißt eine Messing-Düse innerhalb von Stunden. Standard-Messingdüsen sind für PA komplett ungeeignet.

\n
    \n
  • Hardened Steel (gehärteter Stahl): Gut und preiswert, leicht schlechtere Wärmeleitung als Messing
  • \n
  • Tungsten Carbide / Ruby-Düse: Beste Abrasionsresistenz, teuer, für intensiven PA-CF-Einsatz
  • \n
  • Für PA6/PA12 ohne CF: Hardened Steel ist ausreichend
  • \n
\n\n

3. Getrocknetes Filament – absolut zwingend

\n

Feuchtes Nylon erkennt man an: Popping/Zischen-Geräusche während des Drucks, blasige/rauhe Oberfläche, brüchige Schichtverbindungen, vermehrtes Stringing. Keine Einstellung im Slicer behebt feuchtes Filament – es muss getrocknet werden.

\n\n

Druckeinstellungen-Tabelle

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ParameterPA6PA12PA-CF
Düsentemperatur245–260 °C235–250 °C255–280 °C
Betttemperatur80–90 °C70–80 °C90–100 °C
Druckgeschwindigkeit30–50 mm/s40–60 mm/s30–50 mm/s
Erste Schicht Speed20–25 mm/s20–30 mm/s20–25 mm/s
Kühlung Lüfter0–20 % (minimal)0–30 %0–20 %
Bett-OberflächePEI / Garolite / DimafixPEI / Glue StickPEI glatt / Garolite
Retraction1–2 mm (Direct), 4–6 mm (Bowden)1–2 mm (Direct), 4–6 mm (Bowden)0,5–1,5 mm (Direct)
\n\n
\n Bett-Haftung bei Nylon:\n

Nylon haftet auf normalen PEI-Platten überraschend gut bei 80–90 °C – und löst sich nach dem Abkühlen sauber. Problematisch sind raue PEI-Texturen bei PA-CF, da die Fasern die Oberfläche beschädigen können. Garolite (G10/FR4) ist die bevorzugte Bettoberfläche für ernsthafte Nylon-Anwender. Alternativ funktioniert dünner Klebestift (Pritt) auf Glas sehr gut.

\n
\n\n

Trocknungsanleitung für Nylon

\n

Nylon muss vor jedem Druck getrocknet werden – auch eine neue, frisch geöffnete Rolle sollte mindestens 4 Stunden getrocknet werden. Nach dem Trocknen sofort in einem trockenen Filament-Box oder Dry-Box-Drucker einsetzen.

\n\n

Trocknungsparameter

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MethodeTemperaturDauerHinweis
Filament-Trockner (z.B. Sunlu S2, Bambu AMS)70–80 °C8–12 StundenEmpfohlene Methode, schonend
Backofen (Umluft)70–75 °C6–8 StundenTemperatur exakt prüfen! Über 80 °C verformt die Spule
Food Dehydrator70 °C8–10 StundenGünstige Alternative zum Filament-Trockner
\n\n
\n Wichtig: Feuchtigkeit-Test vor dem Druck\n

Extrudiere ca. 200 mm Filament manuell aus der Düse und beobachte: Gibt es Knister-/Popping-Geräusche? Bilden sich kleine Blasen? Ist die Oberfläche des Strangs matt und rau? Falls ja, ist das Filament noch nicht trocken genug. Sauberes, trockenes Nylon extrudiert fast lautlos und hat eine gleichmäßige, leicht glänzende Oberfläche.

\n
\n\n

Häufige Probleme und Lösungen

\n\n

Warping (Ecken lösen sich vom Bett)

\n
    \n
  • Enclosure-Temperatur erhöhen oder sicherstellen, dass sie konstant bleibt
  • \n
  • Betttemperatur auf 90 °C erhöhen
  • \n
  • Brim aktivieren: mindestens 8–10 mm Brim-Breite für große Teile
  • \n
  • Druckgeschwindigkeit reduzieren (langsamer = weniger innere Spannung)
  • \n
  • Garolite-Bettoberfläche verwenden statt normaler PEI
  • \n
  • Kühllüfter komplett deaktivieren (0 %)
  • \n
\n\n

Feuchtigkeit im Filament (Popping, Blasen, Stringing)

\n
    \n
  • Druck sofort stoppen – es bringt nichts, unter diesen Bedingungen weiterzumachen
  • \n
  • Filament für mindestens 8 Stunden bei 75 °C trocknen
  • \n
  • Nach dem Trocknen direkt in Dry Box oder AMS einlegen
  • \n
  • Für lange Drucke: Drucken direkt aus dem Trockner (Schlauch vom Trockner zur Düse)
  • \n
\n\n

Schichtdelaminierung (Layer Separation)

\n

Einzelne Schichten kleben nicht richtig aneinander und trennen sich mechanisch.

\n
    \n
  • Drucktemperatur um 5–10 °C erhöhen (bessere Schmelzverbindung)
  • \n
  • Druckgeschwindigkeit reduzieren: mehr Zeit für Schichtbindung
  • \n
  • Kühlung reduzieren oder deaktivieren
  • \n
  • Layer Height nicht über 75 % des Düsendurchmessers setzen
  • \n
  • Filament-Feuchtigkeit prüfen – Delaminierung ist oft ein Feuchtigkeitsproblem
  • \n
\n\n

Anwendungsfälle für Nylon

\n

Nylon ist das Material der Wahl, wenn PLA und PETG mechanisch oder thermisch nicht ausreichen. Die häufigsten sinnvollen Anwendungen:

\n\n
    \n
  • Zahnräder und Antriebsteile: PA6/PA12 hat hervorragende Gleiteigenschaften und Abriebfestigkeit. Selbstschmierend bei PA6.
  • \n
  • Gelenke und Scharniere: Zähigkeit von PA verhindert Bruch durch Überbeanspruchung. Ideal für Print-in-Place Gelenke.
  • \n
  • Gleitlager und Buchsen: Geringe Reibung ohne zusätzliche Schmierung, besonders PA6.
  • \n
  • Motorhalterungen und Halterungen unter Vibration: Zähigkeit dämpft Vibrationen und verhindert Ermüdungsbrüche.
  • \n
  • Kfz-Ersatzteile im Motorraum: Hitzebeständigkeit bis 150–180 °C macht PA für die meisten Motorraum-Anwendungen geeignet.
  • \n
  • Werkzeughalterungen und Spannvorrichtungen: PA-CF bietet hier die höchste Steifigkeit mit geringem Gewicht.
  • \n
  • Kabeldurchführungen und Tüllen: Flexibler als PETG, chemikalienresistent, ideal für Kabelmanagement in Industrieumgebungen.
  • \n
\n\n
\n Abschlusstipp: Wann PA, wann PETG?\n

Für den Einstieg in technische Materialien ist PETG fast immer die bessere Wahl: einfacher zu drucken, weniger feuchtigkeitsempfindlich, gut genug für die meisten Anwendungen. Nylon lohnt sich, wenn du konkret Abriebfestigkeit, Schlagzähigkeit bei Stößen, hohe Betriebstemperaturen oder Chemikalienresistenz benötigst. Wähle PA bewusst für diese Eigenschaften – nicht nur weil es „professioneller\" klingt.

\n
\n\n
\n
\n\n\n','Nylon / PA drucken','','publish','closed','closed','','nylon-pa-drucken','','','2026-03-27 07:15:56','2026-03-25 21:22:46','',0,'http://87.106.117.190/nylon-pa-drucken/',0,'post','',0), +(423,0,'2026-03-25 01:58:50','2026-03-25 00:58:50','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 01:58:50','2026-03-25 00:58:50','',12,'http://87.106.117.190/?p=423',0,'revision','',0), +(424,0,'2026-03-25 02:06:30','2026-03-25 01:06:30','\n\n\n\n\n\n\n
\n

Naht (Seam) verstecken

\n\n\n

Der Seam ist die sichtbare Naht an der Stelle, wo jeder Layer beginnt und endet. Mit den richtigen Slicer-Einstellungen kannst du sie vollständig verstecken — in Ecken, auf der Rückseite oder gleichmäßig über das Modell verteilt.

\n\n

Was verursacht den Seam?

\n

Bei jedem Layerwechsel muss der Drucker irgendwo anfangen. An diesem Punkt entsteht durch leichten Über- oder Unterdruck ein kleiner Buckel oder eine Kerbe. Je besser Retraction und Pressure Advance kalibriert sind, desto weniger fällt er auf.

\n
    \n
  • Seam-Position: Wo der Printer startet — steuerbar per Slicer
  • \n
  • Seam-Größe: Abhängig von Retraction, Pressure Advance, Flow und Druckgeschwindigkeit
  • \n
  • Seam-Sichtbarkeit: Helle Filamente, glänzende Oberflächen zeigen ihn mehr
  • \n
\n\n

Seam-Modi im Slicer

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ModusBeschreibungWann nutzen
Aligned / HintenAlle Layer starten an der gleichen Stelle (hinten am Modell)Wenn die Rückseite nicht sichtbar ist
Nearest / RandomStartpunkt wechselt zufällig über die OberflächeWenn kein einzelner Seam sichtbar sein soll (verteilt Fehler)
Concave / ScharfSlicer sucht automatisch konkave Ecken am ModellBeste Wahl für eckige Modelle — Seam verschwindet in der Ecke
Manuell (Paint-on)Seam-Position direkt auf dem Modell einzeichnenPräzise Kontrolle bei komplexen Modellen
\n\n

Einstellungen je Slicer

\n\n

OrcaSlicer

\n
    \n
  • Quality → Seam position: Aligned / Nearest / Rear / Scarf joint
  • \n
  • Scarf joint seam (empfohlen): Übergang wird schräg gedruckt — kaum sichtbar
  • \n
  • Scarf-Einstellungen: Start height ≈ 10%, End height ≈ 10%, Width = 0.2
  • \n
  • Manuell: Rechtsklick auf Modell → Seam Painting
  • \n
\n\n

PrusaSlicer / BambuStudio

\n
    \n
  • Print Settings → Layers and Perimeters → Seam position
  • \n
  • Optionen: Aligned, Rear, Random, Nearest
  • \n
  • Wipe before outer wall aktivieren — reduziert Blobs am Seam
  • \n
  • Manuell: Rechtsklick auf Modell → Seam Painting
  • \n
\n\n

Cura

\n
    \n
  • Shell → Z Seam Alignment: Back / Shortest / Random / User Specified
  • \n
  • Seam Corner Preference: Smart Hiding — findet automatisch Ecken
  • \n
  • Wipe Nozzle Between Layers aktivieren für weniger Oozing am Seam
  • \n
\n\n

Seam kleiner machen — Einstellungen

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
EinstellungZielTipp
Pressure Advance / LADruckschwankungen beim Start/Stop eliminierenWichtigste Maßnahme gegen Blobs am Seam
Outer Wall SpeedSeam-Bereich langsamer druckenOuter Wall auf 40–60 % von Inner Wall
Wipe DistanceFilament vor Layerwechsel zurückziehen0.1–0.5 mm — verhindert Oozing am Seam
Start in OverlapSeam leicht in vorherige Linie startenVerringert sichtbaren Übergang
Innenwand vor AußenwandAußenwand hat bessere UnterlagePerimeter-Reihenfolge: innen → außen
\n\n

Der Scarf Joint Seam (OrcaSlicer)

\n

Der Scarf Joint Seam ist die modernste Methode. Statt einem harten Start/Stop wird der Übergang schräg über mehrere Millimeter verteilt — ähnlich einem schrägen Holzschnitt. Das Ergebnis ist so unauffällig, dass er mit bloßem Auge kaum noch zu erkennen ist.

\n
    \n
  • Verfügbar in: OrcaSlicer ab 2.x, Bambu Studio ab 1.9
  • \n
  • Empfohlene Einstellung: Type → Contour, Start height 10 %, End height 10 %
  • \n
  • Funktioniert am besten bei zylindrischen und organischen Modellen
  • \n
  • Minimal länger Druckzeit (~2–3 %)
  • \n
\n\n
\n Empfehlung:\n Für eckige Modelle: Concave/Smart Hiding — der Seam verschwindet automatisch in Kanten. Für organische/runde Modelle: Scarf Joint Seam in OrcaSlicer oder Bambu Studio. Beides zusammen mit gut kalibriertem Pressure Advance ergibt nahezu unsichtbare Nähte.\n
\n\n\n\n\n\n','Naht (Seam) verstecken','','publish','closed','closed','','naht-seam-verstecken','','','2026-03-27 07:15:56','2026-03-25 21:22:46','',0,'http://87.106.117.190/naht-seam-verstecken/',0,'page','',0), +(425,0,'2026-03-25 02:06:37','2026-03-25 01:06:37','\n\n\n\n\n\n\n
\n

Filament richtig trocknen

\n\n\n

Feuchtes Filament ist die häufigste unsichtbare Ursache für schlechte Drucke. Knistern, Blasen, rauhe Oberflächen und Stringing können alle auf Feuchtigkeit zurückgeführt werden — und sind mit richtigem Trocknen vollständig behebbar.

\n\n

Wie wird Filament feucht?

\n

Die meisten Filamente sind hygroskopisch — sie ziehen aktiv Feuchtigkeit aus der Luft. Schon nach wenigen Stunden offener Lagerung kann ein anfangs trockenes Filament Druckprobleme verursachen.

\n
    \n
  • PLA: Mittlere Feuchtigkeitsaufnahme — nach 1–3 Tagen offen spürbar
  • \n
  • PETG: Stärker hygroskopisch als PLA — nach 12–24 Stunden betroffen
  • \n
  • Nylon/PA: Extrem hygroskopisch — schon nach 2–4 Stunden unbrauchbar
  • \n
  • TPU: Mittel — nach 12–48 Stunden betroffen
  • \n
  • PVA: Sehr stark — bereits nach 1 Stunde deutlich verschlechtert
  • \n
\n\n

Symptome nassen Filaments

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
SymptomUrsacheSchwere
Knistern / Poppen in der DüseWasserblase platzt beim Erhitzen⚠️ Eindeutiges Zeichen
Rauhe, matte OberflächeMikroblasen in ExtrudatLeicht bis mittel
Mehr Stringing als üblichVeränderte ViskositätMittel
Blasen / Bläschen sichtbarWasser verdampft in Schmelze⚠️ Stark
Schlechte SchichthaftungUnstabile ExtrusionStark
Filament bricht beim EinlegenFeuchtigkeit macht Filament spröde⚠️ Sehr stark
\n\n

Trocknungsmethoden

\n\n

Methode 1: Filament-Trockner (empfohlen)

\n

Dedizierte Filament-Trockner (Sunlu S2, Creality Hyper Dryer, eSun eDryer) halten konstante Temperatur und Luftzirkulation — die beste Lösung.

\n
    \n
  • Einfach Spule einlegen, Temperatur einstellen, Timer starten
  • \n
  • Viele haben PTFE-Ausgang — direkt während des Drucks trocknen möglich
  • \n
  • Preis: 25–60 € — lohnt sich bei regelmäßigem Druck
  • \n
\n\n

Methode 2: Backofen oder Dörrgerät

\n
\n Achtung Backofen:\n Nur Backöfen mit zuverlässiger Temperaturregelung unter 70 °C verwenden. PLA beginnt bei ~60 °C sich zu verformen. Temperatur vorher mit Thermometer messen!\n
\n
    \n
  • Spule auf Backrost legen (kein direktes Blech — Hitzestau)
  • \n
  • Tür minimal geöffnet lassen (Zahnstocher) für Luftzirkulation
  • \n
  • Dörrgerät mit Einlegeboden: oft besser kontrollierbar als Backofen
  • \n
\n\n

Trocknungstemperaturen und -zeiten

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
MaterialTemperaturZeit (leicht nass)Zeit (stark nass)
PLA45 – 50 °C4 – 6 h8 – 12 h
PETG55 – 65 °C4 – 6 h8 – 12 h
ABS / ASA60 – 80 °C4 – 6 h6 – 10 h
Nylon / PA70 – 80 °C8 – 12 h12 – 24 h
TPU50 – 60 °C4 – 6 h8 – 10 h
PVA45 – 55 °C6 – 8 h12 – 24 h
\n\n

Richtige Lagerung — Trocknen vermeiden

\n
    \n
  • Vakuumbeutel mit Silica-Gel: Beste Langzeitlagerung — Filament bleibt monatelang trocken
  • \n
  • Trockenschrank / Dry Box: Spule in luftdichter Box mit Silica-Gel — Humidity unter 15 % halten
  • \n
  • Hygrometer: Kleines Gerät (3–8 €) zur Feuchtigkeitskontrolle in der Lagerbox
  • \n
  • Silica-Gel reaktivieren: Im Backofen bei 120 °C für 2–3 h — wird blau → orange zeigt Sättigung
  • \n
  • Offene Spulen nicht länger als nötig in der Luft lassen — direkt nach dem Druck einpacken
  • \n
\n\n

Während des Drucks trocknen

\n

Mit einem Filament-Trockner mit PTFE-Ausgang kannst du das Filament direkt während des Drucks warm und trocken halten — ideal für feuchtigkeitssensible Materialien wie Nylon, TPU oder PVA bei längeren Drucken.

\n
    \n
  • PTFE-Schlauch vom Trockner direkt zum Extruder führen
  • \n
  • Trockner auf 5–10 °C unter Schmelzpunkt stellen
  • \n
  • Bei sehr langen Drucken (8+ h) mit PA/PVA: unverzichtbar
  • \n
\n\n
\n Schnelltest:\n Filament 50 cm aus dem Extruder manuell durchdrücken — hört man Knistern oder Poppen, ist das Filament nass. Sofort trocknen. Bei frischer, neuer Spule sollte der Faden ohne jedes Geräusch fließen.\n
\n\n\n\n\n\n','Filament richtig trocknen','','publish','closed','closed','','filament-trocknen','','','2026-03-27 07:15:56','2026-03-25 21:22:47','',0,'http://87.106.117.190/filament-trocknen/',0,'page','',0), +(426,0,'2026-03-25 02:06:37','2026-03-25 01:06:37','\n\n\n\n\n\n\n
\n

3D-Drucker Kaufberatung 2026

\n\n\n

Welcher Drucker passt zu dir? Dieser Guide hilft dir, schnell die richtige Wahl zu treffen — ohne Fachbegriff-Chaos. Von 200 € bis 1.000 €, Einsteiger bis Profi.

\n\n

Zuerst: Was willst du drucken?

\n
\n
\n

Deko & Figuren

\n

PLA-Drucker reicht. Keine besonderen Anforderungen. Günstigste Option.

\n
\n
\n

Funktionsteile

\n

PETG/ABS/ASA nötig. Enclosure bei ABS empfohlen. Mittelklasse.

\n
\n
\n

Viel & schnell drucken

\n

Bambu Lab — automatisiert, schnell, zuverlässig. Höheres Budget.

\n
\n
\n

Tüfteln & verstehen

\n

Prusa oder Ender — open source, reparierbar, viel Community-Support.

\n
\n
\n\n

Empfehlungen nach Budget

\n\n

Bis 250 € — Einsteiger

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
DruckerPreisFür wen
Bambu Lab A1 Mini~280 €Einsteiger die einfach drucken wollen — plug & play
Creality Ender 3 V3 SE~175 €Günstiger Einstieg, etwas Lernkurve
Bambu Lab A1 Mini Combo~450 €Einsteiger + sofort Multi-Material mit AMS Lite
\n\n

250 – 600 € — Mittelklasse

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
DruckerPreisStärke
Bambu Lab A1~380 €Großes Druckvolumen, schnell, AMS-kompatibel
Prusa MK4S~550 €Open Source, top Qualität, beste Community
Bambu P1P~500 €Schnell, offen für Upgrades, optional Enclosure nachrüstbar
\n\n

600 € und mehr — Profi

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
DruckerPreisStärke
Bambu Lab P1S~700 €Vollenclosure, schnell, ABS/ASA/PA problemlos
Bambu X1C~1.100 €Flaggschiff, Lidar-Kalibrierung, Carbon-Kammer
Voron 2.4 (Kit)~600–900 €Selbstbau, Klipper, maximale Anpassbarkeit
\n\n

Drucker-Typen erklärt

\n
\n
\n

Kartesisch (Ender, Prusa)

\n

Klassisch, einfach zu verstehen. X/Y/Z bewegen sich separat. Solide Qualität, moderate Geschwindigkeit.

\n
\n
\n

CoreXY (Bambu, Voron) ★

\n

Druckkopf bewegt sich in X/Y, Bett nur in Z. Schneller, präziser, teurer.

\n
\n
\n

Delta (Anycubic Kossel)

\n

Drei Arme, runde Druckfläche. Sehr schnell bei einfachen Formen, schwieriger zu kalibrieren.

\n
\n
\n\n

Wichtige Kaufkriterien

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
KriteriumWas bedeutet es?Wichtig für
Auto-LevelingDrucker kalibriert Bett automatischAlle Einsteiger — spart viel Frust
DirektantriebExtruder direkt am DruckkopfTPU und flexible Materialien
EnclosureGeschlossene BaukammerABS, ASA, PA — verhindert Warping
DruckvolumenMaximale Bauteilgröße (X×Y×Z mm)Je nach Anwendung — 220×220×250 reicht meist
Max. DrucktemperaturWie heiß kann die Düse werden?> 280 °C für PA, PC, PEI nötig
Community / SupportVerfügbarkeit von Hilfe und ErsatzteilenEinsteiger — Prusa und Bambu top
\n\n

Kurzes Fazit

\n
    \n
  • Einfach starten, wenig Aufwand: Bambu A1 Mini (~280 €) — sofort drucken, kaum Kalibrierung
  • \n
  • Budget + lernen: Ender 3 V3 SE (~175 €) — günstig, viel Community-Support
  • \n
  • Open Source + Qualität: Prusa MK4S (~550 €) — bestes Langzeitinvestment
  • \n
  • Profi + Geschwindigkeit: Bambu P1S (~700 €) — ABS/PA kein Problem, sehr schnell
  • \n
  • Maximale Kontrolle: Voron / Klipper — für Tüftler die alles selbst machen wollen
  • \n
\n\n
\n Community-Tipp:\n Stell deine Frage in unserer WhatsApp-Community — dort gibt es echte Erfahrungen mit den verschiedenen Druckern. Niemand kennt deinen Anwendungsfall besser als Maker die ihn leben.\n
\n\n\n\n\n\n','3D-Drucker Kaufberatung 2026','','publish','closed','closed','','drucker-kaufberatung-2026','','','2026-03-27 07:15:56','2026-03-25 21:22:47','',0,'http://87.106.117.190/drucker-kaufberatung-2026/',0,'page','',0); +INSERT INTO `wp_posts` VALUES +(427,0,'2026-03-25 02:07:15','2026-03-25 01:07:15','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 02:07:15','2026-03-25 01:07:15','',12,'http://87.106.117.190/?p=427',0,'revision','',0), +(428,0,'2026-03-25 02:07:16','2026-03-25 01:07:16','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
30+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
30+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n
500+
\n
Aktive Community-Mitglieder
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 02:07:16','2026-03-25 01:07:16','',8,'http://87.106.117.190/?p=428',0,'revision','',0), +(429,0,'2026-03-25 07:10:05','2026-03-25 06:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 503 Likes und 927 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2597 Likes und 6575 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1530 Likes und 2497 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 941 Likes und 1264 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 1114 Likes und 2992 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Bambulab
Sitemap Pick

Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Z

Z Motor Cover Blv Mgn Cube

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Low

Low Poly Bowl Trinket Tray

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"No

No Smoking Table

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Ams

Ams Silica Holder Full Drilled

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-25 07:10:05','2026-03-25 06:10:05','',10,'http://87.106.117.190/?p=429',0,'revision','',0), +(430,0,'2026-03-25 07:10:05','2026-03-25 06:10:05','

Model-Archiv

Historie der automatischen Top-Model-Updates (neueste zuerst).

2026-W13

  • Printables: Stargate with a working Iris
  • Printables: Folding Wall Hook
  • Printables: Full Desk Organizer & Monitor Stand + Stackable Drawers

2026-W12

  • Printables: Wall Hook - Invisible Mounting
  • Printables: Folding Wall Hook
  • Printables: Dragon Egg Twist Fidget

2026-W11

  • Printables: Wall Hook - Invisible Mounting
  • Printables: Folding Wall Hook
  • Printables: Parcel Opener – Safe, Durable & Blade-Free

2026-W10

  • Printables: Flexi Baby Snake - Print in place - No Supports
  • Printables: Parcel Opener – Safe, Durable & Blade-Free
  • Printables: Filament Storage 2026
','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-25 07:10:05','2026-03-25 06:10:05','',72,'http://87.106.117.190/?p=430',0,'revision','',0), +(431,0,'2026-03-25 07:10:06','2026-03-25 06:10:06','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 07:10:06','2026-03-25 06:10:06','',29,'http://87.106.117.190/?p=431',0,'revision','',0), +(435,0,'2026-03-25 08:11:34','2026-03-25 07:11:34','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
35+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
35+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n
500+
\n
Aktive Community-Mitglieder
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 08:11:34','2026-03-25 07:11:34','',8,'http://87.106.117.190/?p=435',0,'revision','',0), +(436,1,'2026-03-25 08:12:58','2026-03-25 07:12:58','\n\n\n\n\n
\n
\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Die richtige Druckgeschwindigkeit ist eine Balance zwischen Zeitersparnis und Druckqualität. Ein Speed Tower zeigt dir genau, welche Geschwindigkeit dein Drucker und dein Filament tolerieren — ohne Qualitätseinbußen.

\n\n

Was ist ein Speed Tower?

\n

Ein Speed Tower ist ein Kalibrierdruck, bei dem jede Stufe mit einer anderen Geschwindigkeit gedruckt wird. Typisch: Stufen von 50 mm/s bis 200 mm/s in 25-mm/s-Schritten. Du kannst auf einen Blick erkennen, ab wann Stringing, Ringing oder schlechte Layerhaftung auftritt.

\n\n

Speed Tower in OrcaSlicer

\n

OrcaSlicer hat einen eingebauten Speed-Tower-Generator:

\n
    \n
  1. Menü: Kalibrierung → Speed Tower
  2. \n
  3. Start: 50 mm/s, Ende: 200 mm/s, Schrittgröße: 25 mm/s
  4. \n
  5. Temperatur wie im aktiven Profil belassen
  6. \n
  7. Drucken — OrcaSlicer ändert die Geschwindigkeit automatisch per G-Code
  8. \n
\n\n

Speed Tower in PrusaSlicer & Bambu Studio

\n

Kein eingebauter Generator — Alternative: Modifier Meshes oder separates Modell mit Geschwindigkeits-Override je Stufe:

\n
    \n
  1. Speed-Tower-STL von Printables herunterladen (z.B. \"Universal Speed Tower\")
  2. \n
  3. Jede Stufe als separate Ebene importieren
  4. \n
  5. Per Höhen-Modifier (Konfigurationswürfel) unterschiedliche Geschwindigkeiten setzen
  6. \n
  7. Alternativ: Geschwindigkeit manuell am Display während des Drucks anpassen (Live-Speed-Override)
  8. \n
\n\n

Geschwindigkeiten richtig einstellen

\n\n \n \n \n \n \n \n \n \n \n \n
ParameterEinsteigerFortgeschritteneMaximaler Wert
Perimeter / Außenwand40–60 mm/s60–100 mm/s150 mm/s
Innenwände60–80 mm/s80–150 mm/s250 mm/s
Infill80–100 mm/s150–250 mm/s400 mm/s
Top Surface / Ironing30–40 mm/s40–60 mm/s80 mm/s
Support40–60 mm/s60–100 mm/s150 mm/s
Travel150 mm/s200–300 mm/s500+ mm/s
Erste Schicht20–30 mm/s30–40 mm/s50 mm/s
\n\n

Symptome zu hoher Geschwindigkeit

\n\n \n \n \n \n \n \n \n \n
SymptomUrsacheLösung
Ringing / GhostingResonanzfrequenz überschrittenGeschwindigkeit reduzieren oder Input Shaping aktivieren
UnterextrusionExtruder kann Volumenstrom nicht liefernVolumenstrom-Limit berechnen und einhalten
Schlechte LayerhaftungZu wenig Zeit zum AbkühlenCooling Fan erhöhen oder Geschwindigkeit senken
StringingZu viel Druck im Hot EndRetraction erhöhen oder Temperatur senken
SchichtversatzStepper-SchrittverlustBeschleunigung (Acceleration) reduzieren
\n\n

Volumenstrom-Limit berechnen

\n

Jedes Hot End hat ein maximales Volumenstrom-Limit (mm³/s). Wenn du dieses überschreitest, kommt es zu Unterextrusion — unabhängig von anderen Einstellungen.

\n

Formel: Volumenstrom = Schichtdicke × Linienbreite × Druckgeschwindigkeit

\n

Beispiel bei 0,2 mm Schicht, 0,4 mm Breite, 150 mm/s: 0,2 × 0,4 × 150 = 12 mm³/s

\n\n\n \n \n \n \n \n \n \n \n
Hot EndMax. Volumenstrom (PLA)Max. Geschwindigkeit (0,2/0,4)
Stock Ender / CR-108–10 mm³/s~100 mm/s
Bambu X1/P1 Hot End20–32 mm³/s~250 mm/s
Volcano / High-Flow25–35 mm³/s~300 mm/s
Rapido / Dragon HF30–45 mm³/s~400 mm/s
CHT-Düse (Bambu/E3D)+20–40% BoostErheblich höher
\n\n

Acceleration & Jerk optimieren

\n

Neben der Geschwindigkeit bestimmen Acceleration (Beschleunigung) und Jerk (Sprungwert) die Druckqualität maßgeblich:

\n
    \n
  • Acceleration: Klipper nutzt hier ADXL-basiertes Input Shaping, Marlin nutzt Firmware-Werte. Typisch: 1.500–5.000 mm/s² für Perimeter, 10.000+ für Bambu-Drucker.
  • \n
  • Jerk: Definiert, wie abrupt Richtungswechsel passieren. Niedrig (1–5 mm/s) = glattere Kurven, höher = schnellere Ecken, mehr Ringing.
  • \n
  • Klipper SET_VELOCITY_LIMIT: SET_VELOCITY_LIMIT VELOCITY=200 ACCEL=3000 ACCEL_TO_DECEL=1500
  • \n
\n\n

Tipps für maximale Geschwindigkeit

\n
    \n
  • Input Shaping / Resonance Compensation aktivieren (Klipper/Bambu) — ermöglicht drastisch höhere Beschleunigungen ohne Ringing
  • \n
  • CHT-Düse oder High-Flow-Hot-End für höheren Volumenstrom
  • \n
  • Direct Drive statt Bowden — kürzerer Retraction-Weg ermöglicht höhere Travel-Speed
  • \n
  • Kühlgebläse auf 100% — bessere Kühlung kompensiert schnellere Schichten
  • \n
  • PLA für Speed-Tests bevorzugen — günstiger und schnell abkühlend
  • \n
\n\n
\n
\n\n\n','Speed Tower: Druckgeschwindigkeit optimieren','','publish','closed','closed','','speed-tower-druckgeschwindigkeit','','','2026-03-27 07:15:56','2026-03-25 21:22:47','',0,'http://87.106.117.190/speed-tower-druckgeschwindigkeit/',0,'post','',0), +(437,0,'2026-03-25 08:13:28','2026-03-25 07:13:28','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n Slicer\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Volumenstrom-Limit, Acceleration, Jerk — die ideale Druckgeschwindigkeit systematisch ermitteln.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 08:13:28','2026-03-25 07:13:28','',12,'http://87.106.117.190/?p=437',0,'revision','',0), +(438,0,'2026-03-25 08:13:36','2026-03-25 07:13:36','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
36+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
36+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n
500+
\n
Aktive Community-Mitglieder
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 08:13:36','2026-03-25 07:13:36','',8,'http://87.106.117.190/?p=438',0,'revision','',0), +(439,0,'2026-03-25 08:30:54','2026-03-25 07:30:54','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n\n/* ══ FOOTER FIX — weißer Balken entfernen ══ */\n.site-below-footer-wrap,\n#colophon .ast-builder-grid-row-container,\n.site-below-footer-inner-wrap {\n background: #050505 !important;\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a,\n.site-below-footer-wrap .ast-footer-copyright a {\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a:hover {\n color: rgba(249,115,22,.9) !important;\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 08:30:54','2026-03-25 07:30:54','',29,'http://87.106.117.190/?p=439',0,'revision','',0), +(440,0,'2026-03-25 08:30:54','2026-03-25 07:30:54','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
36+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
36+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 08:30:54','2026-03-25 07:30:54','',8,'http://87.106.117.190/?p=440',0,'revision','',0), +(441,0,'2026-03-25 08:43:53','2026-03-25 07:43:53','\n\n
\n

Trending Druckmodelle

\n

Aktuelle Top-Modelle direkt von Printables, MakerWorld und Thingiverse — kuratiert und filterbar nach Plattform und Kategorie.

\n
\n\n
\n
\n \n \n \n \n
\n
\n \n \n \n \n
\n\n \n

\n
\n\n
\n \"Folding\n
\n \n
Community FavoriteMost Downloaded
\n

Folding Wall Hook

\n

Klappbarer Wandhaken — minimal, stabil, kein Schrauben sichtbar.

\n Zum Modell →\n
\n
\n\n
\n \"Full\n
\n \n

Full Desk Organizer & Monitor Stand

\n

Komplettes Desk-Setup: Monitorfuß, stapelbare Schubladen, Kabelführung.

\n Zum Modell →\n
\n
\n\n
\n \"Any\n
\n \n
Trending
\n

Any Box Generator

\n

Parametrische Box in jeder Größe — mit Deckel, Scharnieren, Rastnasen.

\n Zum Modell →\n
\n
\n\n
\n \"Dragon\n
\n \n

Dragon Egg Twist Fidget

\n

Print-in-Place Fidget-Ei — kein Support nötig, ideal für Einsteiger.

\n Zum Modell →\n
\n
\n\n
\n \"Knurled\n
\n \n

Knurled Knobs M2.5–M8

\n

Gerändelte Griffmuttern für alle gängigen Schraubengrößen — sofort verwendbar.

\n Zum Modell →\n
\n
\n\n \n
\n \"SVEN\n
\n \n
Featured
\n

SVEN — Desktop Robot Arm

\n

Voll funktionsfähiger 6-Achs-Roboterarm fürs Schreibtisch — Servo-gesteuert, vollständig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Mac\n
\n \n

The M2x2 — Mac mini M4 Case

\n

Schlankes Gehäuse für den Mac mini M4 — für PETG oder ASA ausgelegt.

\n Zum Modell →\n
\n
\n\n
\n \"Halo\n
\n \n
Trending
\n

Halo F1 — F1 Desktop Companion

\n

Detailreicher F1-Helm-Ständer als Deko — mehrteilig, ideal für Multi-Color.

\n Zum Modell →\n
\n
\n\n
\n \"Small\n
\n \n

Mini-Terrarium mit Belüftung

\n

Snap-Together — kein Kleber, kein Hardware, einstellbare Ventilationsschlitze.

\n Zum Modell →\n
\n
\n\n
\n \"DIY\n
\n \n

DIY Lötrauch-Absaugung

\n

120mm Fan + 75mm Entlüftung — kompakter Lötplatz-Filter zum Selbstbauen.

\n Zum Modell →\n
\n
\n\n \n
\n \"Floating\n
\n \n
Klassiker
\n

Floating Rock

\n

Levitierender Stein — optische Täuschung aus zwei Teilen, kein Magnet nötig.

\n Zum Modell →\n
\n
\n\n
\n \"Flexi\n
\n \n
Klassiker1M+ Downloads
\n

Flexi Rex (verstärkte Links)

\n

Artikulierter T-Rex mit flexiblen Gelenken — Print-in-Place, kein Support.

\n Zum Modell →\n
\n
\n\n
\n
\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-25 08:43:53','2026-03-25 07:43:53','',10,'http://87.106.117.190/?p=441',0,'revision','',0), +(442,1,'2026-03-25 08:44:45','2026-03-25 07:44:45','\n\n\n\n\n
\n
\n

Modifier Meshes & Paint-on Supports

\n

Modifier Meshes erlauben es, Slicer-Einstellungen gezielt auf bestimmte Bereiche eines Modells anzuwenden — mehr Wände nur dort, wo nötig, anderen Infill in kritischen Zonen, Supports nur an bestimmten Flächen. Paint-on Supports geben dir noch mehr Kontrolle, wo genau Support gedruckt wird.

\n\n

Was sind Modifier Meshes?

\n

Ein Modifier Mesh ist ein einfaches 3D-Objekt (Box, Zylinder, Kugel), das du über dein Modell legst. Im Überschneidungsbereich gelten andere Slicer-Einstellungen als im Rest des Modells. Der Modifier selbst wird nicht gedruckt — er dient nur als Einstellungs-Zone.

\n\n

Modifier Meshes in OrcaSlicer

\n
    \n
  1. Modell auswählen → Rechtsklick → Add Modifier → Box / Cylinder / Sphere
  2. \n
  3. Modifier in Position und Größe anpassen (Pfeile, Skalierungspunkte)
  4. \n
  5. Modifier-Objekt auswählen → rechts im Panel Einstellungen überschreiben:
      \n
    • Wände (Perimeter): z.B. 6 statt 3
    • \n
    • Infill-Dichte: z.B. 80% statt 15%
    • \n
    • Infill-Muster: Gyroid statt Grid
    • \n
    • Support erzwingen / verbieten
    • \n
  6. \n
  7. Slicen — nur der Überschneidungsbereich bekommt die neuen Einstellungen
  8. \n
\n\n

Modifier Meshes in PrusaSlicer

\n
    \n
  1. Modell auswählen → rechts im Objekt-Panel auf + klicken → Add modifier
  2. \n
  3. Modifier-Form wählen (Box, Sphere, Cylinder, Mesh)
  4. \n
  5. Per Rechtsklick auf den Modifier im Objekt-Panel: Edit Modifier
  6. \n
  7. Einstellungen setzen — alle Override-Optionen gleich wie in OrcaSlicer verfügbar
  8. \n
\n\n

Modifier Meshes in Bambu Studio

\n

Bambu Studio basiert auf OrcaSlicer — Workflow identisch:

\n
    \n
  1. Objekt auswählen → obere Toolbar: Support Painting / Seam Painting / Color Painting
  2. \n
  3. Für allgemeine Modifier: Objekt-Kontextmenü → Add Modifier
  4. \n
\n\n

Typische Anwendungsfälle

\n\n \n \n \n \n \n \n \n \n
SzenarioModifier-EinstellungEffekt
Scharnier / GelenkbereichInfill 80%, Wände 6Mehr Festigkeit genau dort wo Kraft wirkt
Dekorative AußenflächeTop/Bottom Layers +2Glattere Oberfläche ohne ganzes Modell zu verlangsamen
Support nur unter ÜberhangSupport erzwingen (Box)Kein unnötiger Support im Rest des Modells
Support-freie ZoneSupport verbieten (Cylinder)Verhindert Support in Hohlräumen oder Löchern
GewichtsersparnisInfill 5% (Gyroid) im InnerenLeichteres Teil, gleiche äußere Schalen
\n\n

Paint-on Supports

\n

Paint-on Supports (in OrcaSlicer, PrusaSlicer und Bambu Studio verfügbar) erlauben dir, mit einem Pinsel direkt auf der Modelloberfläche zu malen, wo Support gedruckt werden soll.

\n\n

Workflow in OrcaSlicer / Bambu Studio

\n
    \n
  1. Modell auswählen → obere Toolbar: Support Painting (Pinsel-Icon)
  2. \n
  3. Zwei Modi: Enforce (blau = Support erzwingen) und Block (rot = Support verbieten)
  4. \n
  5. Pinselgröße anpassen und über die Flächen malen
  6. \n
  7. Slicen — Support nur auf bemalten Bereichen
  8. \n
\n\n

Workflow in PrusaSlicer

\n
    \n
  1. Objekt auswählen → Toolbar: Support Enforcer / Support Blocker
  2. \n
  3. Auf gewünschte Fläche klicken → kleiner Quader erscheint (= Enforcer)
  4. \n
  5. Alternativ: Paint-on Supports über Toolbar → SLA Support Points / FDM Support Enforcer Painting
  6. \n
\n\n

Kombination: Modifier + Paint-on für maximale Kontrolle

\n
    \n
  • Modifier Mesh für strukturelle Zonen (mehr Infill, mehr Wände)
  • \n
  • Paint-on Support für exakte Support-Platzierung
  • \n
  • Seam Painting für Naht-Steuerung an sichtbaren Bereichen
  • \n
  • Color Painting für Filament-Wechsel-Markierungen (Bambu AMS, MMU3)
  • \n
\n\n

Profi-Tipp: Custom Mesh als Modifier

\n

Anstatt der eingebauten Primitiven (Box, Cylinder) kannst du eigene STL-Dateien als Modifier laden. Das erlaubt organische Formen als Einstellungs-Zonen — z.B. genau die Außenwand eines komplizierten Teils mit mehr Perimetern belegen, ohne den Infill überall zu erhöhen.

\n
    \n
  1. Modifier-Form in CAD oder Meshmixer modellieren (nur die Einfluss-Zone)
  2. \n
  3. Als STL exportieren
  4. \n
  5. In OrcaSlicer: Objekt → Add Modifier → Load… → STL wählen
  6. \n
  7. Modifier-Einstellungen setzen — fertig
  8. \n
\n\n
\n
\n\n\n','Modifier Meshes & Paint-on Supports','','publish','closed','closed','','modifier-meshes-paint-on-supports','','','2026-03-27 07:15:56','2026-03-25 21:22:47','',0,'http://87.106.117.190/modifier-meshes-paint-on-supports/',0,'post','',0), +(443,0,'2026-03-25 08:45:20','2026-03-25 07:45:20','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n Slicer\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Volumenstrom-Limit, Acceleration, Jerk — die ideale Druckgeschwindigkeit systematisch ermitteln.

\n Guide lesen →\n
\n
\n Slicer\n

Modifier Meshes & Paint-on Supports

\n

Slicer-Einstellungen zonenweise überschreiben — mehr Infill nur dort wo nötig, Supports exakt platzieren.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 08:45:20','2026-03-25 07:45:20','',12,'http://87.106.117.190/?p=443',0,'revision','',0), +(444,0,'2026-03-25 08:45:29','2026-03-25 07:45:29','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
37+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
37+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 08:45:29','2026-03-25 07:45:29','',8,'http://87.106.117.190/?p=444',0,'revision','',0), +(445,0,'2026-03-25 08:48:58','2026-03-25 07:48:58','\n\n
\n

Trending Druckmodelle

\n

Aktuelle Top-Modelle von Printables, MakerWorld und Thingiverse — live gecrawlt, nach Plattform und Kategorie filterbar.

\n\n
\n Plattform:\n \n \n \n \n
\n
\n Kategorie:\n \n \n \n \n
\n\n
\n\n \n
\n \"Stargate\"\n
\n
Printables
\n
Trending #1
\n

Stargate mit funktionierender Iris

\n

Ikonisches Sci-Fi-Modell — bewegliche Iris, detailreiche Chevrons, mehrteilig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Folding\n
\n
Printables
\n
6.500+ Downloads
\n

Folding Wall Hook

\n

Klappbarer Wandhaken — kein sichtbarer Schraubenkopf, minimal, sehr stabil.

\n Zum Modell →\n
\n
\n\n
\n \"Desk\n
\n
Printables
\n

Full Desk Organizer & Monitor Stand

\n

Komplettes Schreibtisch-Setup: Monitorerhöhung, stapelbare Schubladen, Kabelkanal.

\n Zum Modell →\n
\n
\n\n
\n \"Invisible\n
\n
Printables
\n
Neu
\n

Wall Hook — Unsichtbare Montage

\n

Haken der komplett hinter der Wand verschwindet — elegante Clean-Wall-Lösung.

\n Zum Modell →\n
\n
\n\n
\n \"Flexi\n
\n
Printables
\n
Trending
\n

Cute Flexi Baby Dragon

\n

Artikulierter Mini-Drache als Schlüsselanhänger — Print-in-Place, kein Support.

\n Zum Modell →\n
\n
\n\n
\n \"LEGO\n
\n
Printables
\n

LEGO-kompatible Steine 90°

\n

Maßgenaue LEGO-kompatible Bausteine — perfekt kalibriert, sofort einsatzbereit.

\n Zum Modell →\n
\n
\n\n
\n \"Tiny\n
\n
Printables
\n

Tiny Table Vise

\n

Funktionsfähiger Mini-Schraubstock — Gewindespindel, Backen aus PLA oder PETG.

\n Zum Modell →\n
\n
\n\n \n
\n \"SVEN\n
\n
MakerWorld
\n
Featured
\n

SVEN — Desktop Robot Arm

\n

6-Achs-Roboterarm fürs Schreibtisch — Servo-gesteuert, vollständig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Monitor\n
\n
MakerWorld
\n
Neu
\n

Monitor VESA LED Backlight Ring

\n

LED-Ambilight-Ring direkt an VESA montiert — Diffusor und Halter in einem Druck.

\n Zum Modell →\n
\n
\n\n
\n \"Mini\n
\n
MakerWorld
\n
Neu
\n

Mini Lab Rax — 5U Server Rack

\n

Kompaktes 5-Zoll-Homelab-Rack für Raspberry Pi, Switches und Mini-PCs.

\n Zum Modell →\n
\n
\n\n
\n \"Mac\n
\n
MakerWorld
\n

The M2x2 — Mac mini M4 Gehäuse

\n

Schlankes Custom-Gehäuse für den Mac mini M4 — für PETG oder ASA ausgelegt.

\n Zum Modell →\n
\n
\n\n
\n \"Halo\n
\n
MakerWorld
\n
Trending
\n

Halo F1 — Desktop Companion

\n

Detailreicher F1-Helm-Ständer — mehrteilig, ideal für AMS Multi-Color.

\n Zum Modell →\n
\n
\n\n
\n \"HomePod\n
\n
MakerWorld
\n

Apple HomePod Mini Stand

\n

Eleganter Standfuß für den HomePod mini — Kabelführung integriert, kein Screw.

\n Zum Modell →\n
\n
\n\n
\n \"Solder\n
\n
MakerWorld
\n

DIY Lötrauch-Absaugung

\n

120mm Fan + 75mm Vent — kompakter Lötplatz-Filter zum Selbstbauen.

\n Zum Modell →\n
\n
\n\n \n
\n \"Flexi\n
\n
Thingiverse
\n
Klassiker1M+ Downloads
\n

Flexi Rex — verstärkte Gelenke

\n

Artikulierter T-Rex Print-in-Place — der meistgedruckte Klassiker, kein Support.

\n Zum Modell →\n
\n
\n\n
\n \"Floating\n
\n
Thingiverse
\n
Klassiker
\n

Floating Rock

\n

Optische Täuschung — levitierender Stein aus zwei Teilen, kein Magnet nötig.

\n Zum Modell →\n
\n
\n\n
\n
\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-25 08:48:58','2026-03-25 07:48:58','',10,'http://87.106.117.190/?p=445',0,'revision','',0), +(446,1,'2026-03-25 08:48:58','2026-03-25 07:48:58','\n\n\n\n\n
\n
\n\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Glatt\n \n \n Fuzzy Skin\n \n \n Fuzzy Skin\n Strukturierte Oberflächen ohne Nachbearbeitung\n SLICER GUIDE\n\n\n

Fuzzy Skin: Strukturierte Oberflächen drucken

\n

Fuzzy Skin ist eine Slicer-Funktion, die die Außenwände mit einem zufälligen oder gemusterten Offset druckt — dadurch entsteht eine rauhe, textile oder strukturierte Oberfläche ohne Sandpapier oder Nachbearbeitung.

\n\n

Was macht Fuzzy Skin?

\n

Statt gerade Linien zu drucken, versetzt der Slicer die Extruderdüse während des Außenwand-Drucks in kleinen Schritten seitwärts. Das Ergebnis: eine absichtlich unregelmäßige, strukturierte Oberfläche. Der Effekt ist vergleichbar mit Sandstein, Holzmaserung oder strukturiertem Kunststoff.

\n\n

Fuzzy Skin in OrcaSlicer aktivieren

\n
    \n
  1. Tab Quality → Fuzzy Skin öffnen
  2. \n
  3. Fuzzy Skin Type: Outer Wall (empfohlen) oder All Walls
  4. \n
  5. Fuzzy Skin Thickness: Wie weit die Düse seitwärts ausbricht (Standard: 0,3 mm)
  6. \n
  7. Fuzzy Skin Point Distance: Abstand zwischen Auslenkungspunkten (Standard: 0,8 mm)
  8. \n
  9. Slicen — Außenwände erhalten automatisch den Fuzzy-Effekt
  10. \n
\n\n

Fuzzy Skin in PrusaSlicer

\n
    \n
  1. Print Settings → Layers and Perimeters → Fuzzy Skin
  2. \n
  3. Typ: Outside walls / All walls
  4. \n
  5. Thickness und Point Distance wie oben
  6. \n
\n\n

Fuzzy Skin in Bambu Studio

\n
    \n
  1. Quality → Fuzzy Skin — identisch zu OrcaSlicer (gleiche Engine)
  2. \n
  3. Für den X1C/P1P empfehlenswert: Thickness 0,25 mm, Point Distance 0,6 mm
  4. \n
\n\n

Parameter-Übersicht

\n\n \n \n \n \n \n \n \n
ParameterKlein (fein)StandardGroß (grob)
Thickness (Tiefe)0,1–0,2 mm0,3 mm0,5–0,8 mm
Point Distance (Frequenz)0,4–0,6 mm0,8 mm1,2–2,0 mm
EffektFein, fast glattGut sichtbar, gleichmäßigSehr rau, ungleichmäßig
Druckzeit+5%+10–15%+20–30%
\n\n

Ideale Materialien für Fuzzy Skin

\n\n \n \n \n \n \n \n \n \n
MaterialEignungEmpfehlung
PLASehr gutIdeal für erste Tests — günstig, präzise
PETGGutEtwas fließfähiger — leicht andere Textur als PLA
TPUGutFuzzy Skin + Flex = sehr angenehme Griffoberfläche
ASA/ABSMittelWarping kann Fuzzy-Muster stören
Wood/Stone PLAExzellentKombination aus Füllstoff-Textur + Fuzzy = sehr natürlich
\n\n

Anwendungsbeispiele

\n
    \n
  • Griffe & Knöpfe: Bessere Griffigkeit ohne Gummibeschichtung
  • \n
  • Gehäuse & Boxen: Hochwertigeres Aussehen, Fingerabdrücke weniger sichtbar
  • \n
  • Dekoobjekte: Natürlicher Stein- oder Holzoptik-Effekt
  • \n
  • Organische Formen: Skulpturen wirken weniger \"plastisch\"
  • \n
  • Cosplay-Requisiten: Verwitterungs- oder Kampfschaden-Optik
  • \n
\n\n

Tipps & Fallstricke

\n
    \n
  • Fuzzy Skin erhöht den Außendurchmesser leicht — bei Passgenauigkeit (z.B. Steckverbindungen) Außenfläche von Fuzzy Skin ausschließen oder Toleranz einplanen
  • \n
  • Dicke Schichten (0,3 mm) + Fuzzy Skin = noch markantere Textur
  • \n
  • Bei Bowden-Extruder: kleinere Thickness wählen (Oozing kann Muster verfälschen)
  • \n
  • Fuzzy Skin deaktivieren auf Flächen die verklebt oder verschraubt werden
  • \n
  • Combo mit Ironing auf Top-Layer: Rauhe Seiten + glatte Oberfläche
  • \n
\n\n
\n
\n\n\n','Fuzzy Skin: Strukturierte Oberflächen drucken','','publish','closed','closed','','fuzzy-skin-strukturierte-oberflaechen','','','2026-03-27 07:15:56','2026-03-25 21:22:47','',0,'http://87.106.117.190/fuzzy-skin-strukturierte-oberflaechen/',0,'post','',0), +(447,0,'2026-03-25 08:49:27','2026-03-25 07:49:27','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n Slicer\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Volumenstrom-Limit, Acceleration, Jerk — die ideale Druckgeschwindigkeit systematisch ermitteln.

\n Guide lesen →\n
\n
\n Slicer\n

Modifier Meshes & Paint-on Supports

\n

Slicer-Einstellungen zonenweise überschreiben — mehr Infill nur dort wo nötig, Supports exakt platzieren.

\n Guide lesen →\n
\n
\n Slicer\n

Fuzzy Skin: Strukturierte Oberflächen

\n

Rauhe, textile oder Steinoptik ohne Nachbearbeitung — Thickness, Point Distance und Materialwahl.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 08:49:27','2026-03-25 07:49:27','',12,'http://87.106.117.190/?p=447',0,'revision','',0), +(448,0,'2026-03-25 08:49:27','2026-03-25 07:49:27','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
38+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
38+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 08:49:27','2026-03-25 07:49:27','',8,'http://87.106.117.190/?p=448',0,'revision','',0), +(449,1,'2026-03-25 08:52:49','2026-03-25 07:52:49','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Klipper\n Grundlagen & Ersteinrichtung für FDM-Drucker\n SETUP GUIDE\n\n\n

Klipper: Grundlagen & Ersteinrichtung

\n

Klipper ist eine Open-Source-Drucker-Firmware, die auf einem Raspberry Pi (oder ähnlichem SBC) läuft und mit dem Mikrocontroller des Druckers kommuniziert. Durch die deutlich höhere Rechenleistung des Pi ermöglicht Klipper Funktionen wie Input Shaping, Pressure Advance und flexible Konfiguration per Textdatei.

\n\n

Klipper vs. Marlin — der Unterschied

\n\n \n \n \n \n \n \n \n \n \n
MerkmalMarlinKlipper
Wo läuft die Firmware?Direkt auf dem Drucker-BoardRaspberry Pi + kleines Board-Script
KonfigurationC++ recompilieren nötigEinfache .cfg Textdatei, Live-Reload
Input ShapingBasic (MBL)ADXL-basiert, sehr präzise
Pressure AdvanceLinear Advance (kompliziert)Einfach kalibrierbar
WebinterfaceKeinsMainsail / Fluidd (Browser-UI)
EinstiegEinfacher (vorinstalliert)Mehr Setup, mehr Lernkurve
\n\n

Benötigte Hardware

\n
    \n
  • Raspberry Pi 3B+ / 4 / Zero 2W — Pi 4 empfohlen für flüssiges UI
  • \n
  • MicroSD-Karte: 8+ GB (Class 10)
  • \n
  • USB-Kabel vom Pi zum Drucker-Board
  • \n
  • Optional: ADXL345-Beschleunigungssensor für Input Shaping
  • \n
\n\n

Installation: Schritt für Schritt

\n
    \n
  1. KIAUH installieren (Klipper Installation And Update Helper):
    \n cd ~ && git clone https://github.com/dw-0/kiauh.git && ./kiauh/kiauh.sh
  2. \n
  3. Im KIAUH-Menü: 1 → Install → Klipper, Moonraker, Mainsail (in dieser Reihenfolge)
  4. \n
  5. Drucker-Board flashen: In KIAUH Build & Flash oder manuell:
    \n cd ~/klipper && make menuconfig → Board wählen → make → USB-Flash
  6. \n
  7. printer.cfg anlegen — Konfigurationsdatei für deinen Drucker (KIAUH hat Beispielkonfigs)
  8. \n
  9. Mainsail im Browser öffnen: http://<raspberry-pi-ip>
  10. \n
\n\n

Welche Drucker sind kompatibel?

\n\n \n \n \n \n \n \n \n \n \n
DruckerBoardKlipper-Unterstützung
Ender 3 / CR-10Creality 4.2.2 / 4.2.7Sehr gut, viele Configs verfügbar
Ender 3 S1/S1 ProCreality STM32Gut, eigenes USB-Kabel nötig
Prusa MK3S/MK4Einsy Rambo / xBuddyMöglich, aber Originalfirmware oft besser
Voron 2.4 / TridentBTT Octopus / SpiderKlipper ist Standard, top Support
Bambu LabProprietärNicht kompatibel
Ratrig V-CoreBTT MantaKlipper-First, exzellent
\n\n

Die wichtigsten Klipper-Funktionen

\n
    \n
  • Input Shaping: ADXL345 misst Resonanzfrequenz → Klipper kompensiert automatisch Ghosting/Ringing
  • \n
  • Pressure Advance: Kompensiert Druckaufbau im Hotend → scharfe Ecken ohne Blobs
  • \n
  • Macros: G-Code-Makros für Homing, Bettausgleich, Filamentwechsel per Knopfdruck
  • \n
  • Bed Mesh Leveling: Automatisches Mesh-Bettausgleich (BLTouch/CR Touch/Klicky)
  • \n
  • Exclude Objects: Einzelne Objekte aus einem laufenden Druck herausnehmen
  • \n
  • Timelapse: Integriertes Timelapse-Plugin über Moonraker
  • \n
\n\n

Mainsail vs. Fluidd

\n\n \n \n \n \n \n \n \n
MainsailFluidd
UI-StilModern, aufgeräumtMinimalistisch, schnell
TimelapseEingebautPlugin nötig
KonfigurationIntegrierter EditorIntegrierter Editor
EmpfehlungEinsteigerFortgeschrittene
\n\n

Erste Schritte nach der Installation

\n
    \n
  1. PID-Kalibrierung: PID_CALIBRATE HEATER=extruder TARGET=200
  2. \n
  3. Z-Offset einstellen: PROBE_CALIBRATE (mit Probe) oder manuell
  4. \n
  5. Pressure Advance: Tower-Kalibrierdruck → PA-Wert in printer.cfg setzen
  6. \n
  7. Input Shaping: ADXL345 anschließen → SHAPER_CALIBRATE ausführen
  8. \n
  9. Bed Mesh: BED_MESH_CALIBRATE → Profil speichern
  10. \n
\n\n
\n
\n\n\n','Klipper: Grundlagen & Ersteinrichtung','','publish','closed','closed','','klipper-grundlagen-ersteinrichtung','','','2026-03-27 07:15:56','2026-03-25 21:22:47','',0,'http://87.106.117.190/klipper-grundlagen-ersteinrichtung/',0,'post','',0), +(450,1,'2026-03-25 08:52:50','2026-03-25 07:52:50','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Druckbett\n Adhesion\n \n \n \n Bed Adhesion\n Kleber · Haarspray · PEI · Magigoo · Brim\n FEHLERANALYSE GUIDE\n\n\n

Bed Adhesion: Die beste Haftung für jedes Material

\n

Die erste Schicht haftet nicht — einer der häufigsten Frustrationspunkte beim FDM-Druck. Die richtige Kombination aus Bettoberfläche, Haftmittel und Slicereinstellung löst das Problem dauerhaft. Dieser Guide zeigt, was wirklich funktioniert.

\n\n

Bettoberflächen im Vergleich

\n\n \n \n \n \n \n \n \n \n \n
OberflächeHaftung kaltAblösungBeste MaterialienPflege
PEI-Federstahlblech (glatt)Sehr gut (warm)Automatisch beim AbkühlenPLA, PETG, TPUIPA abwischen
PEI-Federstahlblech (texturiert)AusgezeichnetAutomatischPLA, ABS, ASA, PAIPA abwischen
Borosilikat-GlasMittelGut nach AbkühlungPLA, PETG mit KleberWaschen, kein Berühren
Bambu Cool PlateSehr gut für PLAAutomatischPLA, PLA+Kaltes Wasser
Bambu High Temp PlateSehr gut für ABSNach AbkühlungABS, ASA, PCIPA oder Klebestift
BuildTak / Creality PCSehr gutKann festkleben!PLA, PETG (vorsichtig)Minimal Kleber bei PETG
\n\n

Haftmittel-Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n
HaftmittelWirkungGut fürNachteil
Pritt-KlebestiftSehr gutPLA, PETG, ABS auf GlasRückstände, muss gereinigt werden
Haarspray (Elnett, Aquanet)GutPLA, ABS, NylonKlebrig, messy
Magigoo OriginalExzellentPLA, PETG, ABSTeuer (~15€/Stift)
Magigoo PA (Nylon)Spezialisiert, sehr gutPA6, PA12, PA-CFNur für Nylon
3DLACSehr gutABS, ASA (Warping)Spray — Überdosierung möglich
PVA-Kleber (verdünnt)GutPLA auf GlasMuss trocknen
Kein HaftmittelPLA auf texturiertem PEINichts — einfach sauber halten
\n\n

Slicer-Einstellungen für bessere Haftung

\n

Brim

\n

Ein Brim ist eine zusätzliche Schicht von Linien rund um die Basis deines Modells — erhöht die Auflagefläche erheblich.

\n
    \n
  • Brim-Breite: 5–10 mm für kleine Teile, 3 mm für große Flächen
  • \n
  • Brim-Typ: Außen (Standard), Innen (bei Löchern), Beidseitig
  • \n
  • Entfernen nach dem Druck: sauberer Schnitt oder Sandpapier (P120–P180)
  • \n
\n\n

Raft

\n

Ein Raft ist eine vollständige Plattform unter dem Modell — für extrem schlechte Haftung oder stark warpende Materialien.

\n
    \n
  • Erhöht Druckzeit deutlich (~+20%)
  • \n
  • Nur bei ABS/ASA auf Glas ohne Einhausung empfohlen
  • \n
  • Raft-Abstand: 0,1–0,2 mm für leichte Ablösung
  • \n
\n\n

First Layer Einstellungen

\n\n \n \n \n \n \n \n \n \n
ParameterStandardSchwierige Haftung
First Layer Dicke0,2 mm0,25–0,3 mm (mehr Quetschen)
First Layer Breite100–120%140–150%
First Layer Speed30 mm/s15–20 mm/s
BetttemperaturMaterialstandard+5–10°C höher
Fan SpeedNormal0% erste 2–3 Schichten
\n\n

Material-spezifische Tipps

\n
    \n
  • PLA: Texturiertes PEI + sauber = kein Haftmittel nötig. 60°C Bett.
  • \n
  • PETG: Klebestift auf PEI verhindert, dass PETG das PEI beschädigt. 70–80°C Bett.
  • \n
  • ABS/ASA: Einhausung + 3DLAC oder Magigoo + 100–110°C Bett. Brim immer verwenden.
  • \n
  • Nylon/PA: Magigoo PA oder PVAc-Kleber + 80–90°C Bett. Filament unbedingt trocknen!
  • \n
  • TPU: Sauberes PEI oder Klebestift + 40–50°C Bett. Langsame erste Schicht (15 mm/s).
  • \n
  • PC: Hochtemperatur-Platte + Magigoo PC + 110°C Bett + Einhausung.
  • \n
\n\n

Checkliste: Haftung versagt

\n
    \n
  • Z-Offset zu groß → Düse zu weit vom Bett → Schicht haftet nicht
  • \n
  • Bett nicht sauber → Fingerabdrücke, Fett → IPA abwischen vor jedem Druck
  • \n
  • First Layer Speed zu hoch → Keine Zeit zum Haften → auf 20–25 mm/s reduzieren
  • \n
  • Betttemperatur zu niedrig → Materialspezifische Werte prüfen
  • \n
  • Feuchtes Filament → Schlechte Schichthaftung generell → Trocknen
  • \n
  • Verwarpung (ABS/ASA) → Einhausung bauen oder Brim + 3DLAC verwenden
  • \n
\n\n
\n
\n\n\n','Bed Adhesion: Die beste Haftung für jedes Material','','publish','closed','closed','','bed-adhesion-haftung','','','2026-03-27 07:15:56','2026-03-25 21:22:48','',0,'http://87.106.117.190/bed-adhesion-haftung/',0,'post','',0), +(451,0,'2026-03-25 08:53:20','2026-03-25 07:53:20','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n Slicer\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Volumenstrom-Limit, Acceleration, Jerk — die ideale Druckgeschwindigkeit systematisch ermitteln.

\n Guide lesen →\n
\n
\n Slicer\n

Modifier Meshes & Paint-on Supports

\n

Slicer-Einstellungen zonenweise überschreiben — mehr Infill nur dort wo nötig, Supports exakt platzieren.

\n Guide lesen →\n
\n
\n Slicer\n

Fuzzy Skin: Strukturierte Oberflächen

\n

Rauhe, textile oder Steinoptik ohne Nachbearbeitung — Thickness, Point Distance und Materialwahl.

\n Guide lesen →\n
\n
\n Einsteiger\n

Klipper: Grundlagen & Ersteinrichtung

\n

Raspberry Pi, KIAUH, Mainsail — vom Marlin-Drucker zu Klipper mit Input Shaping und Pressure Advance.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Bed Adhesion: Haftung für jedes Material

\n

PEI, Klebestift, Magigoo, Haarspray — die richtige Kombination aus Bettoberfläche und Haftmittel.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 08:53:20','2026-03-25 07:53:20','',12,'http://87.106.117.190/?p=451',0,'revision','',0), +(452,0,'2026-03-25 08:53:21','2026-03-25 07:53:21','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
40+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
40+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 08:53:21','2026-03-25 07:53:21','',8,'http://87.106.117.190/?p=452',0,'revision','',0), +(453,0,'2026-03-25 08:56:53','2026-03-25 07:56:53','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n\n/* ══ FOOTER FIX — weißer Balken entfernen ══ */\n.site-below-footer-wrap,\n#colophon .ast-builder-grid-row-container,\n.site-below-footer-inner-wrap {\n background: #050505 !important;\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a,\n.site-below-footer-wrap .ast-footer-copyright a {\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a:hover {\n color: rgba(249,115,22,.9) !important;\n}\n\n/* ══ CODE BOXES — lesbare Darstellung ══ */\n.hub-section code,\n.hub-section kbd {\n display: inline-block;\n background: rgba(249,115,22,.1) !important;\n color: #fb923c !important;\n border: 1px solid rgba(249,115,22,.25) !important;\n border-radius: 6px !important;\n padding: 2px 8px !important;\n font-family: \"JetBrains Mono\", \"Fira Code\", Monaco, Consolas, monospace !important;\n font-size: .875em !important;\n line-height: 1.6 !important;\n word-break: break-all;\n}\n.hub-section pre {\n background: #0d1117 !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n padding: 18px 20px !important;\n overflow-x: auto !important;\n margin: 16px 0 !important;\n}\n.hub-section pre code {\n background: transparent !important;\n border: none !important;\n padding: 0 !important;\n color: #e2e8f0 !important;\n font-size: .85rem !important;\n word-break: normal;\n}','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 08:56:53','2026-03-25 07:56:53','',29,'http://87.106.117.190/?p=453',0,'revision','',0), +(454,1,'2026-03-25 09:02:22','2026-03-25 08:02:22','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Gridfinity\n Das modulare Ordnungssystem für Werkstatt & Schreibtisch\n EINSTEIGER GUIDE\n\n\n

Gridfinity: Das modulare Ordnungssystem

\n

Gridfinity ist ein offenes, modulares Raster-System für Schubladen und Regale — entwickelt von Zack Freedman. Jede Box rastet magnetisch oder durch Reibung in eine Bodenplatte ein. Das Ergebnis: perfekt organisierte Werkzeug-, Filament- und Büroschubladen, die sich beliebig erweitern lassen.

\n\n

Wie funktioniert Gridfinity?

\n

Das System basiert auf einem 42mm×42mm Raster. Jede Box hat:

\n
    \n
  • Eine Bodenplatte (Baseplate) mit Magnetaufnahmen oder Reibungsprofil
  • \n
  • Eine Box/Bin — 1×1, 2×1, 3×2 oder beliebige Größen im 42mm-Raster
  • \n
  • Optionale Einsätze (Inserts) für Schrauben, Bits, Pinsel, Fräser etc.
  • \n
\n

Alles ist Open Source und auf Printables, MakerWorld und Thingiverse verfügbar. Tausende kompatible Bins von der Community.

\n\n

Erste Schritte — was du drucken musst

\n
    \n
  1. Bodenplatte messen: Schublade oder Regal ausmessen → Gridfinity-Raster berechnen
    \n Formel: Breite ÷ 42mm = Anzahl Spalten (auf ganze Zahl abrunden)
  2. \n
  3. Baseplate drucken: Gridfinity Rebuilt (OpenSCAD) — parametrisch, jede Größe möglich
  4. \n
  5. Bins auswählen: Auf Printables nach \"Gridfinity\" suchen → über 10.000 kompatible Modelle
  6. \n
  7. Drucken & einrasten — fertig
  8. \n
\n\n

Druckeinstellungen für Gridfinity

\n\n \n \n \n \n \n \n \n \n \n
ParameterEmpfehlungWarum
Schichtdicke0,2 mmSaubere Kanten, Rastergenauigkeit
Infill15–20%Bins müssen nicht massiv sein
Wanddicke3–4 WändeStabilität für schwere Teile
MaterialPLA oder PETGPLA für Schubladen, PETG für Werkstatt
SupportKeinerGridfinity-Designs sind support-frei
BrimOptional (3–5mm)Bei Baseplates für bessere Haftung
\n\n

Magnete einsetzen (optional)

\n

Die meisten Baseplates haben Aufnahmen für 6×2mm Neodym-Magnete. Ablauf:

\n
    \n
  1. Druck pausieren wenn Magnetaufnahme erreicht ist (Höhen-Pause in OrcaSlicer/PrusaSlicer)
  2. \n
  3. Magnet mit Sekundenkleber einsetzen — Polarität prüfen (alle gleich ausrichten!)
  4. \n
  5. Druck fortsetzen
  6. \n
\n

Tipp: Ohne Magnete funktioniert Gridfinity auch per Reibungsfit — besonders auf PEI oder texturierten Baseplates.

\n\n

Die besten Gridfinity-Ressourcen

\n\n \n \n \n \n \n \n \n
RessourceBeschreibungLink
Gridfinity RebuiltParametrische Baseplates + Bins in OpenSCADPrintables #417152
Gridfinity ExtendedErweiterte Bin-Varianten (Labeling, Divider)Printables Suche
Gridfinity CatalogCommunity-Katalog aller kompatiblen Modellegridfinity-catalog.com
Zack Freedman YouTubeOriginal-Video + UpdatesYouTube \"Gridfinity\"
\n\n

Anwendungsbeispiele

\n
    \n
  • Werkzeugschublade: Bits, Inbusschlüssel, Zangen — je ein Bin pro Typ
  • \n
  • 3D-Druck-Zubehör: Schleifpapier, Pinzetten, Spachtel, IPA-Flasche
  • \n
  • Schreibtisch: Stifte, Karten, USB-Sticks, Kabel
  • \n
  • Elektronik: Widerstände, LEDs, Kondensatoren — Einsätze mit Beschriftung
  • \n
  • Küche: Gewürzboxen, Teesortierer (PETG für Feuchtigkeitsresistenz)
  • \n
\n\n

Profi-Tipps

\n
    \n
  • Zuerst eine Baseplate drucken und testen bevor du 20 Stück druckst
  • \n
  • Bin-Labeling: OrcaSlicer Filament-Wechsel auf Layer X → farbige Beschriftungsschicht
  • \n
  • Große Bins (3×3+) in PETG drucken — steifer und formstabiler
  • \n
  • Online-Konfiguratoren: gridfinity-generator.com — Custom-Bins ohne CAD
  • \n
\n\n
\n
\n\n\n','Gridfinity: Das modulare Ordnungssystem','','publish','closed','closed','','gridfinity-ordnungssystem','','','2026-03-27 07:15:56','2026-03-25 21:22:48','',0,'http://87.106.117.190/gridfinity-ordnungssystem/',0,'post','',0), +(455,1,'2026-03-25 09:02:24','2026-03-25 08:02:24','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Primer\n \n \n Farbe\n \n \n Klarlack\n \n \n \n \n Fertig\n \n Nachbearbeitung\n Schleifen · Glätten · Grundieren · Lackieren\n EINSTEIGER GUIDE\n\n\n

3D-Drucke nachbearbeiten: Schleifen, Glätten & Lackieren

\n

Ein frischer 3D-Druck sieht selten aus wie das fertige Produkt — Schichtlinien, Support-Reste und raue Oberflächen sind normal. Mit den richtigen Nachbearbeitungsschritten wird aus einem Rohling ein professionelles Endprodukt.

\n\n

Schritt 1: Support entfernen & reinigen

\n
    \n
  • Supportzange / Seitenschneider: Support an der Basis abkneifen, nicht reißen
  • \n
  • Skalpell / Cuttermesser: Reste vorsichtig abschaben
  • \n
  • Heißluftpistole (60–80°C): Warpende Bereiche kurz erwärmen und flach drücken
  • \n
  • Danach mit Druckluft oder Pinsel säubern
  • \n
\n\n

Schritt 2: Schleifen

\n

Schleifen entfernt Schichtlinien und glättet Support-Abdrücke. Immer nass schleifen für besseres Ergebnis und weniger Feinstaub.

\n\n \n \n \n \n \n \n \n \n
SchleifpapierZweckTechnik
P80–P120Grobe Stufen, Support-ResteTrocken, kreisförmig
P180–P240Schichtlinien egalisierenNass, in Druckrichtung
P400–P600Oberfläche glättenNass, sanft
P800–P1200Hochglanz vorbereitenNass, sehr sanft
P2000+SpiegelglanzNass + Polierpaste
\n

Tipp: Schleifklotz verwenden — verhindert ungleichmäßigen Druck der Finger.

\n\n

Schritt 3: Chemisches Glätten (materialabhängig)

\n\n \n \n \n \n \n \n \n \n
MaterialMethodeMittelSicherheit
ABSAceton-DampfAceton (Nagellackentferner)Lüftung! Feuergefährlich
PLAXTC-3D EpoxidSmooth-On XTC-3DHandschuhe, gut lüften
PLAPolyurethan-LackKlarlack-SprayHandschuhe, Atemschutz
PETGSchleifen empfohlenKein gutes Lösemittel
Resin (SLA)IPA-Bad + UV-AushärtenIsopropylalkohol 99%Handschuhe, kein Hautkontakt
\n\n

Schritt 4: Grundierung (Primer)

\n

Primer füllt kleine Kratzer, sorgt für gleichmäßigen Farbuntergrund und verbessert Haftung drastisch. Unverzichtbar vor dem Lackieren.

\n
    \n
  • Filler-Primer (Füll-Grundierung): Füllt Schichtlinien teilweise aus — 2–3 Schichten, trocknen lassen, schleifen (P400)
  • \n
  • Empfehlung: Montana Primer, Tamiya Surface Primer oder Rust-Oleum Filler Primer
  • \n
  • Abstand: 20–25cm, dünne gleichmäßige Schichten, nicht nass-in-nass
  • \n
  • Trockenzeit: Mindestens 30 Minuten zwischen Schichten, 2h vor Schleifen
  • \n
\n\n

Schritt 5: Lackieren

\n\n \n \n \n \n \n \n \n
LackmethodeErgebnisAufwandKosten
Sprühdose (Acryl)Gut, gleichmäßigNiedrig5–10€
AirbrushProfessionell, Gradienten möglichHoch50–200€ Setup
Pinsel (Modellbau)Detailarbeit, WashingMittel10–30€
Dip / WashingTiefenwirkung, TexturenMittel10–20€
\n
    \n
  • Sprühdosen-Technik: Immer bewegen beim Sprühen, nie stehend halten
  • \n
  • Mehrere dünne Schichten statt einer dicken (verhindert Läufer)
  • \n
  • Zwischen Schichten: P800 nass schleifen für glatteres Ergebnis
  • \n
\n\n

Schritt 6: Versiegeln

\n
    \n
  • Matter Klarlack: Schützt Farbe, reduziert Fingerabdrücke
  • \n
  • Glänzender Klarlack: Hochglanz, besonders schön auf dunklen Farben
  • \n
  • Satin-Klarlack: Mittelweg — natürlich wirkend
  • \n
  • Empfehlung: Vallejo Matte Varnish, Tamiya Clear oder Rust-Oleum Crystal Clear
  • \n
\n\n

Schnell-Referenz: Welche Methode für welches Ziel?

\n\n \n \n \n \n \n \n \n
ZielMethodeZeit
Funktionsbauteil (nicht sichtbar)Kein Finish nötig0 min
Ordentliches AussehenP240 schleifen + Primer-Spray1–2h
Bemalt / LackiertSchleifen + Primer + 2x Farbe + Klarlack4–8h
Ausstellung / VerkaufVollständiges Finish mit Airbrush1–3 Tage
\n\n
\n
\n\n\n','3D-Drucke nachbearbeiten: Schleifen, Glätten & Lackieren','','publish','closed','closed','','3d-drucke-nachbearbeiten','','','2026-03-27 07:15:56','2026-03-25 21:22:48','',0,'http://87.106.117.190/3d-drucke-nachbearbeiten/',0,'post','',0), +(456,0,'2026-03-25 09:03:26','2026-03-25 08:03:26','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n Slicer\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Volumenstrom-Limit, Acceleration, Jerk — die ideale Druckgeschwindigkeit systematisch ermitteln.

\n Guide lesen →\n
\n
\n Slicer\n

Modifier Meshes & Paint-on Supports

\n

Slicer-Einstellungen zonenweise überschreiben — mehr Infill nur dort wo nötig, Supports exakt platzieren.

\n Guide lesen →\n
\n
\n Slicer\n

Fuzzy Skin: Strukturierte Oberflächen

\n

Rauhe, textile oder Steinoptik ohne Nachbearbeitung — Thickness, Point Distance und Materialwahl.

\n Guide lesen →\n
\n
\n Einsteiger\n

Klipper: Grundlagen & Ersteinrichtung

\n

Raspberry Pi, KIAUH, Mainsail — vom Marlin-Drucker zu Klipper mit Input Shaping und Pressure Advance.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Bed Adhesion: Haftung für jedes Material

\n

PEI, Klebestift, Magigoo, Haarspray — die richtige Kombination aus Bettoberfläche und Haftmittel.

\n Guide lesen →\n
\n
\n Einsteiger\n

Gridfinity: Das modulare Ordnungssystem

\n

42mm-Raster, Magnete, tausende Community-Bins — Werkstatt und Schreibtisch perfekt organisieren.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucke nachbearbeiten

\n

Schleifen, Grundieren, Lackieren — aus dem Rohling ein professionelles Endprodukt machen.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 09:03:26','2026-03-25 08:03:26','',12,'http://87.106.117.190/?p=456',0,'revision','',0), +(457,0,'2026-03-25 09:03:26','2026-03-25 08:03:26','\n\n
\n

Trending Druckmodelle

\n

Aktuelle Top-Modelle von Printables, MakerWorld und Thingiverse — live gecrawlt, nach Plattform und Kategorie filterbar.

\n\n
\n Plattform:\n \n \n \n \n
\n
\n Kategorie:\n \n \n \n \n
\n\n
\n\n \n
\n \"Stargate\"\n
\n
Printables
\n
Trending #1
\n

Stargate mit funktionierender Iris

\n

Ikonisches Sci-Fi-Modell — bewegliche Iris, detailreiche Chevrons, mehrteilig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Folding\n
\n
Printables
\n
6.500+ Downloads
\n

Folding Wall Hook

\n

Klappbarer Wandhaken — kein sichtbarer Schraubenkopf, minimal, sehr stabil.

\n Zum Modell →\n
\n
\n\n
\n \"Desk\n
\n
Printables
\n

Full Desk Organizer & Monitor Stand

\n

Komplettes Schreibtisch-Setup: Monitorerhöhung, stapelbare Schubladen, Kabelkanal.

\n Zum Modell →\n
\n
\n\n
\n \"Invisible\n
\n
Printables
\n
Neu
\n

Wall Hook — Unsichtbare Montage

\n

Haken der komplett hinter der Wand verschwindet — elegante Clean-Wall-Lösung.

\n Zum Modell →\n
\n
\n\n
\n \"Flexi\n
\n
Printables
\n
Trending
\n

Cute Flexi Baby Dragon

\n

Artikulierter Mini-Drache als Schlüsselanhänger — Print-in-Place, kein Support.

\n Zum Modell →\n
\n
\n\n
\n \"LEGO\n
\n
Printables
\n

LEGO-kompatible Steine 90°

\n

Maßgenaue LEGO-kompatible Bausteine — perfekt kalibriert, sofort einsatzbereit.

\n Zum Modell →\n
\n
\n\n
\n \"Tiny\n
\n
Printables
\n

Tiny Table Vise

\n

Funktionsfähiger Mini-Schraubstock — Gewindespindel, Backen aus PLA oder PETG.

\n Zum Modell →\n
\n
\n\n \n
\n \"SVEN\n
\n
MakerWorld
\n
Featured
\n

SVEN — Desktop Robot Arm

\n

6-Achs-Roboterarm fürs Schreibtisch — Servo-gesteuert, vollständig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Monitor\n
\n
MakerWorld
\n
Neu
\n

Monitor VESA LED Backlight Ring

\n

LED-Ambilight-Ring direkt an VESA montiert — Diffusor und Halter in einem Druck.

\n Zum Modell →\n
\n
\n\n
\n \"Mini\n
\n
MakerWorld
\n
Neu
\n

Mini Lab Rax — 5U Server Rack

\n

Kompaktes 5-Zoll-Homelab-Rack für Raspberry Pi, Switches und Mini-PCs.

\n Zum Modell →\n
\n
\n\n
\n \"Mac\n
\n
MakerWorld
\n

The M2x2 — Mac mini M4 Gehäuse

\n

Schlankes Custom-Gehäuse für den Mac mini M4 — für PETG oder ASA ausgelegt.

\n Zum Modell →\n
\n
\n\n
\n \"Halo\n
\n
MakerWorld
\n
Trending
\n

Halo F1 — Desktop Companion

\n

Detailreicher F1-Helm-Ständer — mehrteilig, ideal für AMS Multi-Color.

\n Zum Modell →\n
\n
\n\n
\n \"HomePod\n
\n
MakerWorld
\n

Apple HomePod Mini Stand

\n

Eleganter Standfuß für den HomePod mini — Kabelführung integriert, kein Screw.

\n Zum Modell →\n
\n
\n\n
\n \"Solder\n
\n
MakerWorld
\n

DIY Lötrauch-Absaugung

\n

120mm Fan + 75mm Vent — kompakter Lötplatz-Filter zum Selbstbauen.

\n Zum Modell →\n
\n
\n\n \n
\n \"Flexi\n
\n
Thingiverse
\n
Klassiker1M+ Downloads
\n

Flexi Rex — verstärkte Gelenke

\n

Artikulierter T-Rex Print-in-Place — der meistgedruckte Klassiker, kein Support.

\n Zum Modell →\n
\n
\n\n
\n \"Floating\n
\n
Thingiverse
\n
Klassiker
\n

Floating Rock

\n

Optische Täuschung — levitierender Stein aus zwei Teilen, kein Magnet nötig.

\n Zum Modell →\n
\n
\n\n
\n \"Gothic\n
\n
MakerWorld
\n
Neu
\n

Gothic Dragon Tray

\n

Detailreiche Fantasy-Schale mit Drachen-Relief — ideal für Multi-Color oder Painting.

\n Zum Modell →\n
\n
\n\n
\n \"Big\n
\n
MakerWorld
\n
Trending
\n

Big Red Button Prank Box

\n

Der große rote Knopf — animierter Deckel, Sound-Modul-kompatibel, Spaßgarantie.

\n Zum Modell →\n
\n
\n\n
\n \"Simple\n
\n
MakerWorld
\n
Neu
\n

Simple Print Monitor (ST7789)

\n

1,54" Display-Gehäuse für Klipper-Statusanzeige — direkt neben dem Drucker montierbar.

\n Zum Modell →\n
\n
\n\n
\n \"2020\n
\n
MakerWorld
\n

2020 Alu-Profil Eckwinkel

\n

Präzise Eckverbinder für 2020-Aluminiumprofile — ideal für Drucker-Einhausungen und Rahmen.

\n Zum Modell →\n
\n
\n\n
\n
\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-25 09:03:26','2026-03-25 08:03:26','',10,'http://87.106.117.190/?p=457',0,'revision','',0), +(458,0,'2026-03-25 09:03:27','2026-03-25 08:03:27','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
42+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
42+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 09:03:27','2026-03-25 08:03:27','',8,'http://87.106.117.190/?p=458',0,'revision','',0), +(459,0,'2026-03-25 09:14:25','2026-03-25 08:14:25','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Kalt-\n Ziehen\n → frei\n \n \n Verstopfte Düse\n Diagnose · Kalt-Ziehen · Atomar-Methode · Düse tauschen\n FEHLERANALYSE GUIDE\n\n\n

Verstopfte Düse: Diagnose & Reinigung

\n

Eine verstopfte Düse ist eine der häufigsten Ursachen für fehlgeschlagene Drucke — aber meistens lässt sie sich ohne Düsenwechsel beheben. Dieser Guide zeigt alle Methoden von einfach bis nuklear.

\n\n

Symptome einer verstopften Düse

\n
    \n
  • Unterextrusion: Dünne, lückenhafte Linien statt voller Bahnen
  • \n
  • Extruder-Klicken: Stepper-Motor \"skippt\" — zu viel Gegendruck
  • \n
  • Kein Filament-Austritt trotz laufendem Extruder
  • \n
  • Unregelmäßige Stränge oder \"Haarige\" Oberfläche
  • \n
  • Filament bricht während des Ladens ab
  • \n
\n\n

Methode 1: Kalt-Ziehen (Cold Pull)

\n

Die schonendste und meist effektivste Methode. Entfernt Verbrennungsrückstände ohne Chemie.

\n
    \n
  1. Düse auf Drucktemperatur aufheizen (z.B. 200°C für PLA)
  2. \n
  3. Filament manuell in die Düse drücken bis es austritt
  4. \n
  5. Temperatur auf 90°C (PLA) / 130°C (PETG) / 160°C (ABS) senken
  6. \n
  7. Bei dieser Temperatur das Filament mit einem kräftigen, gleichmäßigen Zug herausziehen
  8. \n
  9. Ende des Filaments prüfen: Ist es schwarz/dunkel oder hat eine Düsenform? → Verstopfung bestätigt
  10. \n
  11. 3–5× wiederholen bis das Filament sauber und heller herauskommt
  12. \n
\n

Tipp: Nylon eignet sich ideal für Kalt-Ziehen — es haftet besonders gut an Rückständen.

\n\n

Methode 2: Atomar-Methode (Atomic Pull)

\n

Variante des Kalt-Ziehens mit präziser Temperatur-Kontrolle:

\n
    \n
  1. Auf 250°C aufheizen (auch bei PLA — löst Verbrennungsrückstände besser)
  2. \n
  3. Filament einige Sekunden durchdrücken
  4. \n
  5. Temperatur auf 80–85°C senken, dann sofort mit max. Kraft herausziehen
  6. \n
  7. Das Filament sollte die exakte Form der Düsenbohrung haben
  8. \n
  9. Wiederholen bis kein schwarzes Material mehr sichtbar ist
  10. \n
\n\n

Methode 3: Nadel / Drähten (Mechanisch)

\n

Für hartnäckige Verstopfungen wenn Kalt-Ziehen nicht hilft:

\n
    \n
  1. Düse auf Drucktemperatur aufheizen
  2. \n
  3. Eine dünne Nadel (0,3–0,4mm) vorsichtig von unten in die Düsenöffnung einführen
  4. \n
  5. Sanft auf und ab bewegen — Rückstand lösen
  6. \n
  7. Danach Kalt-Ziehen durchführen um Reste zu entfernen
  8. \n
\n

Achtung: Zu viel Druck kann die Düse beschädigen. Nur bei aufgeheizter Düse!

\n\n

Methode 4: Aceton-Bad (nur ABS-Rückstände)

\n
    \n
  1. Düse vollständig abschrauben (aufgeheizt, dann abkühlen lassen)
  2. \n
  3. In Aceton einlegen — 30 Minuten bis mehrere Stunden
  4. \n
  5. Mit alter Zahnbürste reinigen
  6. \n
  7. Mit Druckluft ausblasen
  8. \n
  9. Wichtig: Nur für Messing-Düsen — keine Stahl-Düsen in Aceton!
  10. \n
\n\n

Methode 5: Düse tauschen

\n

Wenn alle Methoden scheitern oder die Düse durch Carbon-Filament, Metallic-Filament oder Übertemperatur beschädigt ist:

\n\n \n \n \n \n \n \n \n \n
DüsentypFürPreisLebensdauer
Messing (Standard)PLA, PETG, ABS1–5€100–500h
Gehärteter StahlCF, GF, Abrasive8–20€500–2000h
EdelstahlLebensmittel, Food-Safe10–25€200–800h
Ruby-TipAlles, sehr abrasiv40–100€5000h+
CHT (High-Flow)Hochgeschwindigkeit15–40€500–1500h
\n\n

Düse wechseln — Schritt für Schritt

\n
    \n
  1. Düse auf 200–220°C aufheizen (nie kalt wechseln — Gewinde klebt!)
  2. \n
  3. Filament entladen
  4. \n
  5. Heizblock mit Schraubenschlüssel fixieren (nicht verdrehen!)
  6. \n
  7. Düse mit Düsenschlüssel gegenuhrzeigersinnig herausdrehen
  8. \n
  9. Neue Düse eindrehen — fest, aber nicht übermäßig anziehen
  10. \n
  11. Z-Offset neu kalibrieren nach dem Wechsel
  12. \n
\n\n

Vorbeugen — so verstopft die Düse seltener

\n
    \n
  • Filament trocknen vor dem Druck — Feuchtigkeit verbrennt in der Düse
  • \n
  • Drucktemperatur nicht dauerhaft zu hoch setzen — Filament verbrennt
  • \n
  • Beim Materialwechsel immer purgen: PETG nach PLA mit 250°C-Purge
  • \n
  • Abrasive Filamente (CF, GF) nur mit gehärtetem Stahl drucken
  • \n
  • Drucker nicht mit eingespanntem Filament stehen lassen (Hitzeschleicher)
  • \n
\n\n
\n\n
\n\n\n','Verstopfte Düse: Diagnose & Reinigung','','publish','closed','closed','','verstopfte-duese-diagnose-reinigung','','','2026-03-27 07:15:56','2026-03-25 21:22:48','',0,'http://87.106.117.190/verstopfte-duese-diagnose-reinigung/',0,'post','',0), +(460,0,'2026-03-25 09:14:31','2026-03-25 08:14:31','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n UV-LCD\n \n \n IPA\n Wash\n \n Resin-Druck\n SLA / MSLA Grundlagen für FDM-Umsteiger\n EINSTEIGER GUIDE\n\n\n

Resin-Druck: SLA & MSLA Grundlagen

\n

Resin-Drucker (SLA/MSLA) arbeiten komplett anders als FDM-Drucker — statt Filament wird flüssiges Kunstharz schichtweise per UV-Licht ausgehärtet. Das Ergebnis: glattere Oberflächen, feinere Details, aber auch mehr Nachbearbeitung und Sicherheitsaufwand.

\n\n

FDM vs. Resin — der direkte Vergleich

\n\n \n \n \n \n \n \n \n \n \n \n \n \n
MerkmalFDMResin (MSLA)
DetailgradMittel (0,1–0,4mm Schicht)Sehr hoch (0,01–0,05mm)
OberflächeSchichtlinien sichtbarFast glatt, kaum Linien
DruckgrößeGroß möglich (200–400mm)Klein–Mittel (130–200mm)
MaterialFilament-RollenFlüssiges Resin in Flasche
NachbearbeitungMinimalWaschen + UV-Aushärten nötig
Geruch / SicherheitNiedrigHoch — Handschuhe, Lüftung
Kosten DruckerAb 200€Ab 180€ (Bambu / Elegoo)
Kosten Material15–30€/kg Filament20–50€/kg Resin
Ideal fürFunktionsteile, große ObjekteFiguren, Schmuck, Zahntechnik
\n\n

Technologien: SLA, DLP, MSLA

\n\n \n \n \n \n \n \n
TypLichtquelleDruckerEigenschaft
SLA (Stereolithographie)LaserFormlabs Form 3+Präziseste Methode, teuerste Drucker
DLP (Digital Light Processing)ProjektorAnycubic PhotonSchnell, gleichmäßige Auflösung
MSLA / LCDUV-LCD + LED-MatrixElegoo Saturn, Bambu LabsGünstigste Option, sehr verbreitet
\n\n

Beliebte Einsteiger-Drucker 2026

\n\n \n \n \n \n \n \n \n
DruckerBauraumAuflösungPreis
Elegoo Saturn 4 Ultra218×123×260mm12K~350€
Bambu Labs Resin180×120×200mm14K~400€
Anycubic Photon Mono M5s200×122×200mm12K~300€
Elegoo Mars 5 Ultra143×90×165mm12K~200€
\n\n

Workflow: Vom Modell zum fertigen Druck

\n
    \n
  1. Slicen — Chitubox, Lychee Slicer oder Bambu Studio für Resin:
      \n
    • Supports hinzufügen (kritisch — hängende Teile brauchen Support)
    • \n
    • Druckparameter: Schichtdicke (0,05mm Standard), Belichtungszeit
    • \n
    • Anti-Aliasing aktivieren für glattere Kanten
    • \n
  2. \n
  3. Drucken — Resin-Tank befüllen, Bauplattform kalibrieren, starten
  4. \n
  5. Waschen — IPA 99% oder Wash&Cure-Station: 3–5 Minuten waschen um nicht ausgehärtetes Resin zu entfernen
  6. \n
  7. UV-Aushärten — UV-Cure-Station oder Sonnenlicht: 2–5 Minuten je Seite. Nicht überkuren — spröde!
  8. \n
  9. Support entfernen — nach dem Aushärten mit Zange/Cutter abzwicken
  10. \n
  11. Optional: Grundieren & Lackieren
  12. \n
\n\n

Sicherheit — unverzichtbar

\n
    \n
  • Nitril-Handschuhe immer beim Umgang mit flüssigem Resin — hautreizend, allergisierend
  • \n
  • Lüftung — Resin-Dämpfe sind gesundheitsschädlich, niemals in geschlossenem Raum ohne Luftzufuhr drucken
  • \n
  • Entsorgung — flüssiges Resin niemals in den Abfluss! Aushärten unter UV, dann Hausmüll
  • \n
  • IPA-Entsorgung — verbrauchtes IPA als Sondermüll (enthält unausgehärtetes Resin)
  • \n
  • Aktivkohlefilter im Drucker oder externe Abluft empfohlen
  • \n
\n\n

Resin-Typen

\n\n \n \n \n \n \n \n \n \n \n
TypEigenschaftenIdeal für
Standard ResinGünstig, sprödeFiguren, Prototypen
ABS-Like ResinZäher, weniger sprödeFunktionsteile
Water-Washable ResinMit Wasser waschbar, kein IPAEinsteiger, weniger Chemie
Tough / Engineering ResinSehr stabil, teuerBelastete Bauteile
Flexible ResinGummiartigDichtungen, weiche Griffe
8K/12K ResinOptimiert für Hochauflösungs-LCDFiguren, Schmuck
\n\n
\n\n
\n\n\n','Resin-Druck: SLA & MSLA Grundlagen','','publish','closed','closed','','resin-druck-grundlagen','','','2026-03-27 07:15:56','2026-03-25 21:22:48','',0,'http://87.106.117.190/resin-druck-grundlagen/',0,'post','',0), +(461,0,'2026-03-25 09:15:32','2026-03-25 08:15:32','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n Slicer\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Volumenstrom-Limit, Acceleration, Jerk — die ideale Druckgeschwindigkeit systematisch ermitteln.

\n Guide lesen →\n
\n
\n Slicer\n

Modifier Meshes & Paint-on Supports

\n

Slicer-Einstellungen zonenweise überschreiben — mehr Infill nur dort wo nötig, Supports exakt platzieren.

\n Guide lesen →\n
\n
\n Slicer\n

Fuzzy Skin: Strukturierte Oberflächen

\n

Rauhe, textile oder Steinoptik ohne Nachbearbeitung — Thickness, Point Distance und Materialwahl.

\n Guide lesen →\n
\n
\n Einsteiger\n

Klipper: Grundlagen & Ersteinrichtung

\n

Raspberry Pi, KIAUH, Mainsail — vom Marlin-Drucker zu Klipper mit Input Shaping und Pressure Advance.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Bed Adhesion: Haftung für jedes Material

\n

PEI, Klebestift, Magigoo, Haarspray — die richtige Kombination aus Bettoberfläche und Haftmittel.

\n Guide lesen →\n
\n
\n Einsteiger\n

Gridfinity: Das modulare Ordnungssystem

\n

42mm-Raster, Magnete, tausende Community-Bins — Werkstatt und Schreibtisch perfekt organisieren.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucke nachbearbeiten

\n

Schleifen, Grundieren, Lackieren — aus dem Rohling ein professionelles Endprodukt machen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Verstopfte Düse: Diagnose & Reinigung

\n

Kalt-Ziehen, Atomar-Methode, Nadel, Aceton-Bad — alle Methoden von einfach bis nuklear.

\n Guide lesen →\n
\n
\n Einsteiger\n

Resin-Druck: SLA & MSLA Grundlagen

\n

FDM vs. Resin, Drucker-Vergleich 2026, Workflow, Sicherheit und Resin-Typen im Überblick.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 09:15:32','2026-03-25 08:15:32','',12,'http://87.106.117.190/?p=461',0,'revision','',0), +(462,0,'2026-03-25 09:15:38','2026-03-25 08:15:38','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
46+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
46+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 09:15:38','2026-03-25 08:15:38','',8,'http://87.106.117.190/?p=462',0,'revision','',0), +(463,0,'2026-03-25 09:44:34','2026-03-25 08:44:34','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Shore A 95\n \n TPU & Flex-Filamente\n Drucksettings · Shore-Härte · Extruder-Typen · Anwendungen\n MATERIAL GUIDE\n\n\n

TPU & Flexible Filamente: Der komplette Guide

\n

Flexible Filamente wie TPU, TPE oder TPC öffnen eine ganz neue Welt an Anwendungen — Dichtungen, Griffe, Dämpfer, Schuhsohlen. Das Drucken ist jedoch trickreich: Zu schnell, zu warm, falscher Extruder — und das Filament verheddert sich zur Wolle.

\n\n

Flexible Filamente im Überblick

\n\n \n \n \n \n \n \n \n \n
MaterialShore-HärteTemperaturEigenschaften
TPU 95A (Standard)Shore 95A220–240°CGummiartig, reißfest, am einfachsten zu drucken
TPU 87AShore 87A215–235°CWeicher, mehr Flex, anspruchsvoller
TPE (Thermoplast. Elastomer)60–90A210–230°CSehr weich, kaum für Bowden geeignet
TPC (Copolyester)40–60D230–260°CHalbflex, chemikalienbeständig
NinjaFlexShore 85A225–235°CPremium TPE, sehr weich, Direct Drive nötig
\n\n

Extruder-Kompatibilität

\n\n \n \n \n \n \n \n \n
Extruder-TypTPU 95ATPU 87A / TPEEmpfehlung
Direct Drive (kurz, <20mm)✅ Sehr gut✅ GutIdeal für alle Flex-Filamente
Direct Drive (Langer Pfad)⚠️ Möglich❌ ProblematischPTFE-Führung direkt am Extruder nötig
Bowden (kurz, <400mm)⚠️ Langsam möglich❌ Kaum möglichMax. 15mm/s, Filament muss straff sitzen
Bowden (lang, >400mm)❌ Nicht empfohlen❌ UnmöglichFilament buckelt im Bowden-Schlauch
\n\n

Optimale Druckparameter

\n\n \n \n \n \n \n \n \n \n \n \n
ParameterTPU 95ATPU 87AHinweis
Drucktemperatur225–235°C220–230°CHöher = mehr Fluss, aber mehr Fäden
Bett-Temperatur30–50°C25–45°CPEI ohne Haftmittel, oder Glasplatte
Druckgeschwindigkeit20–30mm/s15–25mm/sLangsam ist der Schlüssel zum Erfolg
Retraction (Direct Drive)0,5–1mm0–0,5mmWenig oder keine Retraktion!
Retraction (Bowden)1–2mmNicht empfohlenZu viel Retraction → Verstopfung
Schichtdicke0,2–0,3mm0,2mmDicker = bessere Layer-Haftung
Infill15–40%10–30%Gyroid oder Honeycomb für Flex
\n\n

Die häufigsten Probleme & Lösungen

\n\n \n \n \n \n \n \n \n \n \n
ProblemUrsacheLösung
Filament buckelt / verheddert sichZu schnell oder zu viel Bowden-StreckeGeschwindigkeit reduzieren, Direct Drive nutzen
Stringing / FädenRetraction zu hoch oder zu heißRetraction auf 0,5mm reduzieren, Temperatur senken
Schlechte SchichthaftungZu schnell oder zu kaltTemperaturen erhöhen, Lüfter reduzieren (50%)
Elefantenfuß (erste Schicht)Bett zu nahZ-Offset +0,05–0,1mm anpassen
Oberfläche uneben / wabbeligFlow-Rate zu hochFlow auf 90–95% reduzieren
DüsenverstopfungFeuchtes Filament / verbranntTrocknen, Kalt-Ziehen
\n\n

Feuchtigkeit — der größte Feind

\n

TPU ist extrem hygroskopisch — schon 24h offene Lagerung reichen für Blasen und knisterndes Drucken. Symptome: Knistern/Poppen beim Druck, blasige Oberfläche, schlechte Schichthaftung.

\n
    \n
  • Trocknen vor dem Druck: 6–8h bei 45–50°C im Dörrautomat oder Backofen
  • \n
  • Lagerung: Vakuumbeutel mit Silicagel, Dry Box beim Drucken
  • \n
  • Test: Filament kalt biegen — gibt es knackende Geräusche? → Feuchtigkeit
  • \n
\n\n

Slicer-Einstellungen (Bambu Studio / Orca)

\n
    \n
  • Lüfterkühlung: 30–60% — zu viel Kühlung = schlechte Schichthaftung
  • \n
  • Outer Wall Wipe Distance: 0mm — verhindert Fäden
  • \n
  • Avoid Crossing Walls: Aktivieren — reduziert Travels über das Modell
  • \n
  • Infill-Muster: Gyroid oder Honeycomb — erlaubt gleichmäßige Dehnung
  • \n
  • Wand-Überlappung: 20–30% statt Standard 15%
  • \n
\n\n

Anwendungsbeispiele

\n\n \n \n \n \n \n \n \n \n \n
AnwendungMaterialShore-Härte
Handyhülle, KabelschutzTPU 95AEinstieg, robust
Fahrrad-Griffe, WerkzeuggriffeTPU 87AKomfort, griffig
Dämpfer, VibrationsisolierungTPU 87A / TPCJe nach Belastung
Dichtungen, O-RingeTPC / TPU 95AChemikalienbeständigkeit prüfen
Schuhsohlen, OrthesenTPU 95A + 87A SandwichKombination möglich
RC-Crawler-ReifenTPU 87AKlassische Maker-Anwendung
\n\n
\n\n
\n\n\n','TPU & Flexible Filamente: Der komplette Druckguide','','publish','closed','closed','','tpu-flexible-filamente-drucken','','','2026-03-27 07:15:56','2026-03-25 21:22:48','',0,'http://87.106.117.190/tpu-flexible-filamente-drucken/',0,'post','',0), +(464,0,'2026-03-25 09:47:23','2026-03-25 08:47:23','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n MOHS HÄRTE\n 7+\n \n Carbon Fiber & Glasfaser\n Hardened Steel · Abrasion · CF vs GF vs Kevlar · Anwendungen\n MATERIAL GUIDE\n\n\n

Carbon Fiber & Glasfaser: Hochleistungs-Filamente richtig drucken

\n

CF-verstärkte Filamente versprechen leichtes Gewicht bei hoher Steifigkeit — ein Traum für Funktionsteile. Aber sie verschleißen Standard-Messing-Düsen innerhalb von Stunden und brauchen spezifische Einstellungen. Dieser Guide erklärt alles Wichtige.

\n\n

Composite-Filamente im Überblick

\n\n \n \n \n \n \n \n \n \n \n
FilamentBasisEigenschaftenDüse nötig
PLA-CFPLA + 10–20% CFLeicht, steif, matt-schwarz, sprödeHardened Steel
PETG-CFPETG + 10–15% CFCF-Steifigkeit + PETG-Zähigkeit, weniger sprödeHardened Steel
PA-CF (Nylon-CF)PA12 + 15–20% CFSehr leicht, extrem steif, Highend-FDMHardened Steel, 300°C+
ABS-CF / ASA-CFABS/ASA + CFUV-beständig (ASA), formstabil bei HitzeHardened Steel
PLA-GF (Glasfaser)PLA + GlasfaserGünstiger als CF, weniger steif, aber zäherHardened Steel
Markforged OnyxNylon + Mikro-CFPremium, glatte Oberfläche, für Mark-DruckerSpezial-Extruder
\n\n

Warum Hardened Steel? — Abrasion erklärt

\n

Kohlefasern sind mit Mohs-Härte 7+ hart wie Quarz. Eine Standard-Messing-Düse (Mohs ~3) wird innerhalb von 50–100g CF-Filament messbar abgetragen. Das Ergebnis: Düsenloch wird oval, Unter-Extrusion, schlechte Druckqualität.

\n\n \n \n \n \n \n \n \n \n
Düsen-MaterialLebensdauer mit CFEmpfehlung
Messing (Standard)50–200g CF❌ Nicht für CF geeignet
Hardened Steel5–15kg CF✅ Standard für CF
Tungsten Carbide50kg+ CF✅ Profi-Anwendungen
Ruby-tip50kg+ CF✅ Premium, gut für Abrasives
Edelstahl (V2A)500g–2kg CF⚠️ Notlösung, nicht ideal
\n\n

Druckparameter nach Basis-Material

\n\n \n \n \n \n \n \n \n \n \n
ParameterPLA-CFPETG-CFPA-CFABS/ASA-CF
Drucktemperatur210–230°C240–255°C270–300°C245–265°C
Bett-Temperatur55–65°C70–80°C90–100°C100–110°C
Enclosure nötigNeinOptionalJa (60°C+)Ja
Druckgeschwindigkeit40–60mm/s30–50mm/s20–40mm/s30–50mm/s
Kühlung80–100%40–60%0–20%0–30%
Retraction0,5–1mm (DD)0,5–1mm (DD)0,5–1mm0,5–1mm
\n\n

Häufige Probleme & Lösungen

\n\n \n \n \n \n \n \n \n \n \n
ProblemUrsacheLösung
Düse verstopft (CF)Kalt gedruckt, langsam gedrucktTemperatur erhöhen, nie unter Min-Temp drucken
Spröde Teile / DelaminationFeuchtigkeit (PA-CF!), zu kaltVor dem Druck 12h bei 80°C trocknen (PA)
Schlechte Oberfläche (rau)CF-Fasern stehen herausNormal — CF ist immer rauer als Standard
StringingZu heiß, zu wenig RetractionRetraction +0,2mm, Temperatur -5°C
Ersten Schicht AblösungCF haftet schlechterPEI + höheres Bett, Z-Offset eng
Unter-ExtrusionAbgenutzte DüseDüse wechseln (Hardened Steel)
\n\n

Slicer-Tipps speziell für CF

\n
    \n
  • Wand-Linienbreite: 0,4–0,45mm bei 0,4mm-Düse — CF-Fasern brauchen Platz
  • \n
  • Flow Rate: +3–5% — CF fließt weniger als reines Filament
  • \n
  • Seam-Position: Back oder Aligned — CF-Nähte sehen sowieso rau aus
  • \n
  • Infill-Muster: Lines oder Gyroid — CF-Teile profitieren von richtungsbasiertem Infill
  • \n
  • Wand-Loops: 4–6 Wände für maximale Biegesteifigkeit
  • \n
\n\n

CF vs. GF vs. Kevlar — Wann was?

\n\n \n \n \n \n \n \n \n \n
EigenschaftCarbon Fiber (CF)Glasfaser (GF)Kevlar/Aramid
Steifigkeit⭐⭐⭐⭐⭐ Sehr hoch⭐⭐⭐ Mittel⭐⭐ Niedrig
Zähigkeit / Impact⭐⭐ Spröde⭐⭐⭐ Mittel⭐⭐⭐⭐⭐ Sehr hoch
Gewicht⭐⭐⭐⭐⭐ Leicht⭐⭐⭐ Mittel⭐⭐⭐⭐ Leicht
PreisMittel–HochGünstigSehr teuer
Typische AnwendungStrukturteile, HalterungenBauteile mit VibrationSchutzausrüstung
\n\n

Empfohlene CF-Filamente 2025/2026

\n\n \n \n \n \n \n \n \n \n
HerstellerProduktBasisPreis/kg
Bambu LabPLA-CF / PA-CFPLA / PA1225–65€
eSUNePA-CFPA635–45€
PolymakerPolyMide PA6-CFPA650–70€
3DXTechCarbonX PLA-CFPLA40–55€
PrusamentPETG-CFPETG35–50€
\n\n
\n ⚠️ Gesundheitshinweis
\n CF-Filamente erzeugen beim Drucken ultrafeine Partikel und Fasern. Immer in gut belüftetem Raum oder mit HEPA-Filter-Enclosure drucken. Schleif- und Nachbearbeitungsstaub ist besonders gefährlich — Atemschutz P2/P3 tragen.\n
\n\n
\n\n
\n\n\n','Carbon Fiber & Glasfaser: Hochleistungs-Filamente richtig drucken','','publish','closed','closed','','carbon-fiber-glasfaser-filamente','','','2026-03-27 07:15:56','2026-03-25 21:22:49','',0,'http://87.106.117.190/carbon-fiber-glasfaser-filamente/',0,'post','',0), +(465,0,'2026-03-25 09:47:23','2026-03-25 08:47:23','\n\n\n\n\n
\n
\n\n\n \n \n \n \n \n \n \n \n \n NH\n \n \n CO\n \n \n NH\n \n \n H-Bruecke\n \n Polyamid (PA) Struktur\n \n Nylon (PA) drucken\n PA6 / PA12 - Trockenhalten - Enclosure - Nachbearbeitung\n MATERIAL GUIDE\n\n\n

Nylon (PA6 / PA12): Zähigkeit meets Temperaturbestandigkeit

\n

Nylon gehört zu den leistungsfähigsten FDM-Materialien: extrem zäh, schlagfest, temperaturbeständig bis 180°C und chemikalienresistent. Der Haken: Nylon ist hygroskopischer als jedes andere gängige Filament.

\n\n

PA-Varianten im Vergleich

\n\n \n \n \n \n \n \n \n
MaterialSchmelzpunktWasseraufnahmeEigenschaften
PA6 (Nylon 6)220°CSehr hoch (~3,5%)Günstig, zäh, gute Schichthaftung
PA12 (Nylon 12)178°CNiedrig (~0,25%)Maßhaltig, leichter zu drucken, teurer
PA6-CF240–260°CMittelVerstärkt, sehr steif, Highend
Nylon Bridge (Taulman)235°CMittelEinsteigerfreundlichstes Nylon
\n\n

Das Feuchteproblem

\n

PA6 kann bis zu 3,5% seines Gewichts Wasser aufnehmen. Bereits 2–3h in normaler Raumluft genügen für sichtbare Qualitätseinbußen: Knistern beim Drucken, blasige Oberflächen, schlechte Schichthaftung.

\n\n \n \n \n \n \n \n
ZustandMerkmalLösung
Frisch getrocknetLeise, gleichmäßiger StrangOptimal
Leicht feucht (2–4h Luft)Gelegentliches Knistern4–6h bei 80°C trocknen
Stark feucht (Tage)Dauerhaftes Knistern, Dampfblasen12h+ bei 80°C trocknen
\n\n

Druckparameter

\n\n \n \n \n \n \n \n \n \n \n
ParameterPA6PA12Nylon Bridge
Drucktemperatur240–260°C220–240°C230–245°C
Bett-Temperatur70–90°C60–80°C55–70°C
Bett-OberflächePEI + KlebestiftPEIPEI oder Glas
EnclosureNotwendig (50–60°C)EmpfohlenOptional
Druckgeschwindigkeit30–50mm/s40–60mm/s40–60mm/s
Kühlung0–10%0–20%10–30%
\n\n

Warping bekämpfen

\n
    \n
  1. Enclosure schließen: Luftzug ist der Hauptfeind. 50–60°C Enclosure-Temperatur
  2. \n
  3. Bett-Haftung maximieren: PEI + Klebestift + 80–90°C
  4. \n
  5. Erste Schicht dicker: 0,3mm, langsamerer Druck (15mm/s)
  6. \n
  7. Brim hinzufügen: 5–10mm Brim an Ecken
  8. \n
  9. Kühlung aus: Lüfter 0% für PA6
  10. \n
\n\n

Wann Nylon wählen?

\n\n \n \n \n \n \n \n \n \n
AnwendungEmpfehlung
Zahnräder, Lager, Scharniere, ClipsPA6 oder PA12 — deutlich zäher als PLA/PETG
Schlagfeste GehäusePA6 — federt statt zu reißen
Hochtemperatur bis 180°CPA6-HT oder PA-CF
Gewindeschneiden direkt im TeilNylon nimmt Gewinde besser als PLA
Maßgenaue Passteile❌ Feuchte lässt quellen — PA12 bevorzugen
\n\n

Nachbearbeitung

\n\n \n \n \n \n \n \n \n \n
EigenschaftBewertungHinweis
Schleifen✓ Sehr gutFeines Schleifpapier, Staubschutz P2
Bohren / Gewindeschneiden✓ AusgezeichnetBeste FDM-Material für Gewindeinserts
Kleben⚠ SchwierigCA-Kleber geht, Epoxy besser
Lackieren⚠ VorbehandlungPrimer nötig, sonst hält Farbe schlecht
Chemikalienresistenz✓ GutBenzin, Öle, viele Lösungsmittel OK
\n\n\n
\n\n
\n\n\n','Nylon (PA6 / PA12): Zähigkeit und Temperaturbeständigkeit','','publish','closed','closed','','nylon-pa-filament-drucken','','','2026-03-27 07:15:56','2026-03-25 21:22:49','',0,'http://87.106.117.190/nylon-pa-filament-drucken/',0,'post','',0), +(466,0,'2026-03-25 09:47:44','2026-03-25 08:47:44','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n Slicer\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Volumenstrom-Limit, Acceleration, Jerk — die ideale Druckgeschwindigkeit systematisch ermitteln.

\n Guide lesen →\n
\n
\n Slicer\n

Modifier Meshes & Paint-on Supports

\n

Slicer-Einstellungen zonenweise überschreiben — mehr Infill nur dort wo nötig, Supports exakt platzieren.

\n Guide lesen →\n
\n
\n Slicer\n

Fuzzy Skin: Strukturierte Oberflächen

\n

Rauhe, textile oder Steinoptik ohne Nachbearbeitung — Thickness, Point Distance und Materialwahl.

\n Guide lesen →\n
\n
\n Einsteiger\n

Klipper: Grundlagen & Ersteinrichtung

\n

Raspberry Pi, KIAUH, Mainsail — vom Marlin-Drucker zu Klipper mit Input Shaping und Pressure Advance.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Bed Adhesion: Haftung für jedes Material

\n

PEI, Klebestift, Magigoo, Haarspray — die richtige Kombination aus Bettoberfläche und Haftmittel.

\n Guide lesen →\n
\n
\n Einsteiger\n

Gridfinity: Das modulare Ordnungssystem

\n

42mm-Raster, Magnete, tausende Community-Bins — Werkstatt und Schreibtisch perfekt organisieren.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucke nachbearbeiten

\n

Schleifen, Grundieren, Lackieren — aus dem Rohling ein professionelles Endprodukt machen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Verstopfte Düse: Diagnose & Reinigung

\n

Kalt-Ziehen, Atomar-Methode, Nadel, Aceton-Bad — alle Methoden von einfach bis nuklear.

\n Guide lesen →\n
\n
\n Einsteiger\n

Resin-Druck: SLA & MSLA Grundlagen

\n

FDM vs. Resin, Drucker-Vergleich 2026, Workflow, Sicherheit und Resin-Typen im Überblick.

\n Guide lesen →\n
\n
\n Material\n

TPU & Flexible Filamente

\n

Shore-Härte, Extruder-Kompatibilität, Feuchtigkeit — flexibel drucken ohne Chaos im Extruder.

\n Guide lesen →\n
\n
\n Material\n

Carbon Fiber & Glasfaser

\n

Hardened-Steel-Düse, Abrasion, CF vs. GF vs. Kevlar — Hochleistungs-Filamente richtig einsetzen.

\n Guide lesen →\n
\n
\n Material\n

Nylon (PA6 / PA12) drucken

\n

Feuchtigkeit, Warping, Enclosure — Nylon entfaltet seine Stärken nur mit der richtigen Vorbereitung.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 09:47:44','2026-03-25 08:47:44','',12,'http://87.106.117.190/?p=466',0,'revision','',0), +(467,0,'2026-03-25 09:48:30','2026-03-25 08:48:30','\n\n
\n

Trending Druckmodelle

\n

Aktuelle Top-Modelle von Printables, MakerWorld und Thingiverse — live gecrawlt, nach Plattform und Kategorie filterbar.

\n\n
\n Plattform:\n \n \n \n \n
\n
\n Kategorie:\n \n \n \n \n
\n\n
\n\n \n
\n \"Stargate\"\n
\n
Printables
\n
Trending #1
\n

Stargate mit funktionierender Iris

\n

Ikonisches Sci-Fi-Modell — bewegliche Iris, detailreiche Chevrons, mehrteilig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Folding\n
\n
Printables
\n
6.500+ Downloads
\n

Folding Wall Hook

\n

Klappbarer Wandhaken — kein sichtbarer Schraubenkopf, minimal, sehr stabil.

\n Zum Modell →\n
\n
\n\n
\n \"Desk\n
\n
Printables
\n

Full Desk Organizer & Monitor Stand

\n

Komplettes Schreibtisch-Setup: Monitorerhöhung, stapelbare Schubladen, Kabelkanal.

\n Zum Modell →\n
\n
\n\n
\n \"Invisible\n
\n
Printables
\n
Neu
\n

Wall Hook — Unsichtbare Montage

\n

Haken der komplett hinter der Wand verschwindet — elegante Clean-Wall-Lösung.

\n Zum Modell →\n
\n
\n\n
\n \"Flexi\n
\n
Printables
\n
Trending
\n

Cute Flexi Baby Dragon

\n

Artikulierter Mini-Drache als Schlüsselanhänger — Print-in-Place, kein Support.

\n Zum Modell →\n
\n
\n\n
\n \"LEGO\n
\n
Printables
\n

LEGO-kompatible Steine 90°

\n

Maßgenaue LEGO-kompatible Bausteine — perfekt kalibriert, sofort einsatzbereit.

\n Zum Modell →\n
\n
\n\n
\n \"Tiny\n
\n
Printables
\n

Tiny Table Vise

\n

Funktionsfähiger Mini-Schraubstock — Gewindespindel, Backen aus PLA oder PETG.

\n Zum Modell →\n
\n
\n\n \n
\n \"SVEN\n
\n
MakerWorld
\n
Featured
\n

SVEN — Desktop Robot Arm

\n

6-Achs-Roboterarm fürs Schreibtisch — Servo-gesteuert, vollständig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Monitor\n
\n
MakerWorld
\n
Neu
\n

Monitor VESA LED Backlight Ring

\n

LED-Ambilight-Ring direkt an VESA montiert — Diffusor und Halter in einem Druck.

\n Zum Modell →\n
\n
\n\n
\n \"Mini\n
\n
MakerWorld
\n
Neu
\n

Mini Lab Rax — 5U Server Rack

\n

Kompaktes 5-Zoll-Homelab-Rack für Raspberry Pi, Switches und Mini-PCs.

\n Zum Modell →\n
\n
\n\n
\n \"Mac\n
\n
MakerWorld
\n

The M2x2 — Mac mini M4 Gehäuse

\n

Schlankes Custom-Gehäuse für den Mac mini M4 — für PETG oder ASA ausgelegt.

\n Zum Modell →\n
\n
\n\n
\n \"Halo\n
\n
MakerWorld
\n
Trending
\n

Halo F1 — Desktop Companion

\n

Detailreicher F1-Helm-Ständer — mehrteilig, ideal für AMS Multi-Color.

\n Zum Modell →\n
\n
\n\n
\n \"HomePod\n
\n
MakerWorld
\n

Apple HomePod Mini Stand

\n

Eleganter Standfuß für den HomePod mini — Kabelführung integriert, kein Screw.

\n Zum Modell →\n
\n
\n\n
\n \"Solder\n
\n
MakerWorld
\n

DIY Lötrauch-Absaugung

\n

120mm Fan + 75mm Vent — kompakter Lötplatz-Filter zum Selbstbauen.

\n Zum Modell →\n
\n
\n\n \n
\n \"Flexi\n
\n
Thingiverse
\n
Klassiker1M+ Downloads
\n

Flexi Rex — verstärkte Gelenke

\n

Artikulierter T-Rex Print-in-Place — der meistgedruckte Klassiker, kein Support.

\n Zum Modell →\n
\n
\n\n
\n \"Floating\n
\n
Thingiverse
\n
Klassiker
\n

Floating Rock

\n

Optische Täuschung — levitierender Stein aus zwei Teilen, kein Magnet nötig.

\n Zum Modell →\n
\n
\n\n
\n \"Gothic\n
\n
MakerWorld
\n
Neu
\n

Gothic Dragon Tray

\n

Detailreiche Fantasy-Schale mit Drachen-Relief — ideal für Multi-Color oder Painting.

\n Zum Modell →\n
\n
\n\n
\n \"Big\n
\n
MakerWorld
\n
Trending
\n

Big Red Button Prank Box

\n

Der große rote Knopf — animierter Deckel, Sound-Modul-kompatibel, Spaßgarantie.

\n Zum Modell →\n
\n
\n\n
\n \"Simple\n
\n
MakerWorld
\n
Neu
\n

Simple Print Monitor (ST7789)

\n

1,54" Display-Gehäuse für Klipper-Statusanzeige — direkt neben dem Drucker montierbar.

\n Zum Modell →\n
\n
\n\n
\n \"2020\n
\n
MakerWorld
\n

2020 Alu-Profil Eckwinkel

\n

Präzise Eckverbinder für 2020-Aluminiumprofile — ideal für Drucker-Einhausungen und Rahmen.

\n Zum Modell →\n
\n
\n\n\n
\n \"Dupont\n
\n
Printables
\n
Neu
\n

Dupont Connector Bridge

\n

Kabelmanagement-Halter für Dupont-Stecker — hält Kabel sauber getrennt beim Crimpen.

\n Zum Modell →\n
\n
\n\n
\n \"Fluffy\n
\n
Printables
\n
NeuTrending
\n

Flexi Cat Keychain

\n

Süßer beweglicher Katzen-Schwänzchen-Schlüsselanhänger — TPU oder PLA, ideal als Geschenk.

\n Zum Modell →\n
\n
\n\n
\n \"Build\n
\n
Printables
\n

Build Tray

\n

Modulares Arbeitsblätt mit Rasterung für kleine Teile — perfekt für Elektronik und Lötarbeiten.

\n Zum Modell →\n
\n
\n\n
\n
\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-25 09:48:30','2026-03-25 08:48:30','',10,'http://87.106.117.190/?p=467',0,'revision','',0), +(468,0,'2026-03-25 09:48:37','2026-03-25 08:48:37','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
49+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
49+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 09:48:37','2026-03-25 08:48:37','',8,'http://87.106.117.190/?p=468',0,'revision','',0), +(469,0,'2026-03-25 10:15:02','2026-03-25 09:15:02','\n
\n\n\n\n
\n

PLA perfekt einstellen

\n

So findest du saubere Oberfl\\\\u00e4chen und stabile Layer mit PLA.

\n

Schnellstart

\n
    \n
  • Mit Standardprofil starten und nur 1\\\\u20132 Parameter pro Test \\\\u00e4ndern.
  • \n
  • Kurzen Testdruck verwenden (Kalibrierw\\\\u00fcrfel / kleines Funktionsteil).
  • \n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \n
\n

Praxis-Workflow

\n
    \n
  1. Baseline-Druck mit aktuellem Profil.
  2. \n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\\\u00dfhaltigkeit).
  4. \n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \n
  7. Erneut testen und mit Baseline vergleichen.
  8. \n
\n

Typische Fehler

\n
    \n
  • Zu viele Parameter gleichzeitig ver\\\\u00e4ndern.
  • \n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \n
  • Ungeeignete Testobjekte nutzen.
  • \n
\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\\\u00e4glichen Wissens-Serie.

\n
\n\n\n
','Guide #1: PLA perfekt einstellen (2026-03-25)','','publish','closed','closed','','guide-1-pla-perfekt-einstellen-2026-03-25','','','2026-03-27 07:15:56','2026-03-25 21:22:49','',0,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-25/',0,'post','',0), +(470,0,'2026-03-25 10:15:05','2026-03-25 09:15:05','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 25.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-25 10:15:05','2026-03-25 09:15:05','',9,'http://87.106.117.190/?p=470',0,'revision','',0), +(471,0,'2026-03-25 10:15:06','2026-03-25 09:15:06','\\n
\\n

Ressourcen & Tools

\\n

Alle wichtigen Slicer-Downloads

\\n\\n

Top 10 YouTube-Kan\\u00e4le zum Thema 3D-Druck nach Follower-Gr\\u00f6\\u00dfe (ca.-Werte)

\\n\\n

Hinweis: Die Liste wird redaktionell gepflegt und regelm\\u00e4\\u00dfig angepasst.

\\n
\\n','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-25 10:15:06','2026-03-25 09:15:06','',11,'http://87.106.117.190/?p=471',0,'revision','',0), +(472,0,'2026-03-25 11:12:57','2026-03-25 10:12:57','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n\n/* ══ FOOTER FIX — weißer Balken entfernen ══ */\n.site-below-footer-wrap,\n#colophon .ast-builder-grid-row-container,\n.site-below-footer-inner-wrap {\n background: #050505 !important;\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a,\n.site-below-footer-wrap .ast-footer-copyright a {\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a:hover {\n color: rgba(249,115,22,.9) !important;\n}\n\n/* ══ CODE BOXES — lesbare Darstellung ══ */\n.hub-section code,\n.hub-section kbd {\n display: inline-block;\n background: rgba(249,115,22,.1) !important;\n color: #fb923c !important;\n border: 1px solid rgba(249,115,22,.25) !important;\n border-radius: 6px !important;\n padding: 2px 8px !important;\n font-family: \"JetBrains Mono\", \"Fira Code\", Monaco, Consolas, monospace !important;\n font-size: .875em !important;\n line-height: 1.6 !important;\n word-break: break-all;\n}\n.hub-section pre {\n background: #0d1117 !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n padding: 18px 20px !important;\n overflow-x: auto !important;\n margin: 16px 0 !important;\n}\n.hub-section pre code {\n background: transparent !important;\n border: none !important;\n padding: 0 !important;\n color: #e2e8f0 !important;\n font-size: .85rem !important;\n word-break: normal;\n}\n\n/* ══════════════════════════════════════\n MOBILE RESPONSIVE — Alle Breakpoints\n══════════════════════════════════════ */\n\n/* ─── Tabellen scrollbar machen ─── */\n.hub-section table {\n display: block;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n white-space: nowrap;\n}\n@media (min-width: 600px) {\n .hub-section table { display: table; white-space: normal; overflow-x: visible; }\n}\n\n/* ─── Tablet: 768px ─── */\n@media (max-width: 768px) {\n /* Hub-Section Guides */\n .hub-section { padding: 28px 16px !important; max-width: 100% !important; }\n .hub-section h2 { font-size: 1.15rem; margin: 28px 0 10px; }\n .hub-section h3 { font-size: 1rem; }\n .hub-section p, .hub-section ul li, .hub-section ol li { font-size: 14px; }\n .hub-section table { font-size: 13px; }\n .hub-section table th, .hub-section table td { padding: 9px 12px; }\n\n /* Guide-Karten Grid */\n #gg { grid-template-columns: 1fr 1fr !important; }\n\n /* Models Seite */\n .model-grid { grid-template-columns: 1fr 1fr !important; }\n .models-filter { gap: 6px; }\n .mf-btn { padding: 7px 10px; font-size: 13px; }\n\n /* CTA-Blöcke */\n .cta { padding: 40px 20px !important; }\n .cta h2 { font-size: 1.4rem !important; }\n\n /* Footer */\n .site-below-footer-wrap { text-align: center; }\n\n /* m3d-divider margin */\n .m3d-divider { margin: 0 20px !important; }\n\n /* Astra Hauptcontainer */\n .ast-container { padding-left: 16px !important; padding-right: 16px !important; }\n}\n\n/* ─── Mobil: 600px ─── */\n@media (max-width: 600px) {\n /* Tabellen auf Mobile → scroll */\n .hub-section table { white-space: nowrap; }\n\n /* Guide-Karten: 1 Spalte */\n #gg { grid-template-columns: 1fr !important; }\n\n /* Models: 1 Spalte */\n .model-grid { grid-template-columns: 1fr !important; }\n\n /* Models Filter-Buttons kleiner */\n .models-filter { gap: 5px; }\n .mf-btn { font-size: 12px; padding: 6px 9px; }\n\n /* Model-Card Bild */\n .model-card img { height: 160px; }\n\n /* Platform-Tag */\n .platform-tag { font-size: 10px; padding: 3px 8px; }\n\n /* CTA Buttons stacked */\n .cta div[style*=\"display:flex\"] { flex-direction: column !important; align-items: center !important; }\n .cta .btn { width: 100%; max-width: 280px; text-align: center; }\n .cta { padding: 32px 16px !important; }\n\n /* Hub-section noch kompakter */\n .hub-section { padding: 20px 14px !important; }\n .hub-section h1 { font-size: 1.6rem !important; }\n .hub-section h2 { font-size: 1.05rem !important; }\n .hub-section ol li { padding-left: 44px; }\n\n /* hub-intro */\n .hub-intro { font-size: 14px !important; }\n\n /* warn-box */\n .warn-box { padding: 12px 14px !important; font-size: 13px; }\n}\n\n/* ─── Klein-Mobil: 400px ─── */\n@media (max-width: 400px) {\n .hub-section { padding: 16px 12px !important; }\n .hub-section table th, .hub-section table td { padding: 7px 9px; font-size: 12px; }\n .mf-btn { font-size: 11px; padding: 5px 8px; }\n .model-card img { height: 140px; }\n}\n\n/* ─── Navigation Mobile ─── */\n@media (max-width: 921px) {\n /* Astra Hamburger Button sichtbar halten */\n .ast-mobile-popup-trigger { display: block !important; }\n /* Mobile Menu Hintergrund */\n .ast-mobile-header-wrap { background: rgba(5,5,5,.97) !important; }\n .ast-mobile-header-wrap .menu-item a { \n color: rgba(255,255,255,.8) !important; \n padding: 12px 20px !important;\n border-bottom: 1px solid rgba(255,255,255,.06) !important;\n }\n}\n\n/* ─── Überbreite SVG-Header in Guides fixen ─── */\n@media (max-width: 600px) {\n .hub-section svg[viewBox] { border-radius: 8px; }\n}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 11:12:57','2026-03-25 10:12:57','',29,'http://87.106.117.190/?p=472',0,'revision','',0), +(473,0,'2026-03-25 11:13:31','2026-03-25 10:13:31','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
49+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
49+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 11:13:31','2026-03-25 10:13:31','',8,'http://87.106.117.190/?p=473',0,'revision','',0), +(474,0,'2026-03-25 11:13:57','2026-03-25 10:13:57','
\n
\n
\n
Wissen
\n

Guides & Tutorials

\n

Praxiswissen — konkrete Einstellungen, schnelle Diagnosen, bewährte Workflows.

\n
\n
\n\n
\n
\n
\n
Alle Guides
\n

Wähle dein Thema

\n
\n
\n \n \n \n \n \n
\n
\n\n
\n \n
\n Einsteiger\n

Erstes Modell drucken

\n

Von der STL-Datei zum fertigen Druck — der komplette 8-Schritte Workflow.

\n Guide lesen →\n
\n
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht.

\n Guide lesen →\n
\n
\n Einsteiger\n

Erste Schicht kalibrieren

\n

Z-Offset, Betttemperatur und First-Layer-Speed — für Bambu, Prusa, Ender und Klipper.

\n Guide lesen →\n
\n
\n Einsteiger\n

Flow-Rate & E-Steps kalibrieren

\n

Die Grundlage jedes präzisen Drucks — Schritt-für-Schritt erklärt.

\n Guide lesen →\n
\n
\n Einsteiger\n

Maßhaltigkeit verbessern

\n

Elefantenfuß, Schrumpfung, Kalibrierung — maßgenaue Teile drucken.

\n Guide lesen →\n
\n\n \n
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — der komplette PETG-Guide.

\n Guide lesen →\n
\n
\n Material\n

TPU drucken

\n

Direktantrieb vs. Bowden — alles für flexibles Filament.

\n Guide lesen →\n
\n
\n Material\n

ASA/ABS Grundlagen

\n

Hitzbeständig und UV-stabil — ohne Warping drucken.

\n Guide lesen →\n
\n\n
\n Material\n

Nylon / PA drucken

\n

Zäh, hitzbeständig, chemikalienresistent — PA6, PA12 und PA-CF richtig einrichten.

\n Guide lesen →\n
\n\n \n
\n Fehleranalyse\n

Warping vermeiden

\n

Betttemperatur, First Layer und Haftungsmethoden im Vergleich.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Retraction kalibrieren

\n

Direct Drive vs. Bowden, Startwerte, Diagnose — kein Stringing mehr.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Unterextrusion beheben

\n

Lücken, poröse Oberflächen, schwache Schichten — systematisch diagnostizieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Layer Separation beheben

\n

Schichten die sich ablösen — Temperatur und Kühlung balancieren.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Elefantenfuß beheben

\n

Erste Schicht quillt nach außen — Z-Offset, Betttemperatur und Slicer-Kompensation.

\n Guide lesen →\n
\n\n \n
\n Slicer\n

Support richtig setzen

\n

Tree, Normal, Organic — wann welche Methode passt.

\n Guide lesen →\n
\n
\n Slicer\n

Slicer-Profil optimieren

\n

E-Steps, Flow, Pressure Advance — das perfekte Profil erstellen.

\n Guide lesen →\n
\n
\n Slicer\n

Druckzeit vs. Qualität

\n

Den richtigen Kompromiss bei Schichtdicke, Speed und Infill finden.

\n Guide lesen →\n
\n
\n Slicer\n

OrcaSlicer Einsteiger-Guide

\n

Kalibrier-Wizards, Supports, Profiles — der mächtigste kostenlose Slicer.

\n Guide lesen →\n
\n
\n Slicer\n

Cura: Tipps & versteckte Einstellungen

\n

Adaptive Layer Height, Ironing, Modifier Meshes — das steckt in Cura.

\n Guide lesen →\n
\n
\n Slicer\n

PrusaSlicer: Einsteiger bis Fortgeschrittene

\n

Organic Supports, Variable Layer Height, Paint-on Seams — der Prusa-Guide.

\n Guide lesen →\n
\n
\n Slicer\n

Bambu Studio komplett

\n

AMS, Multi-Color, Cloud vs. LAN — alles für Bambu-Nutzer.

\n Guide lesen →\n
\n
\n Slicer\n

Pressure Advance kalibrieren

\n

Klipper PA und Marlin Linear Advance — scharfe Ecken, keine Blobs mehr.

\n Guide lesen →\n
\n
\n Slicer\n

Infill: Muster, Dichte & Wandstärke

\n

Gyroid, Grid, Lightning — welches Muster für welchen Zweck und wie viel Infill wirklich nötig ist.

\n Guide lesen →\n
\n
\n Slicer\n

Input Shaping kalibrieren

\n

Klipper Resonance Compensation mit ADXL345 — Ringing und Ghosting rechnerisch eliminieren.

\n Guide lesen →\n
\n
\n Slicer\n

Ironing: Top-Oberflächen glätten

\n

Düse glättet Top-Layer nach — glasglatte Deckflächen in OrcaSlicer, PrusaSlicer, Bambu & Cura.

\n Guide lesen →\n
\n
\n Slicer\n

Adaptive Layer Height

\n

Automatisch kleinere Layer an Kurven, größere an Flachflächen — glattere Oberflächen bei kürzerer Druckzeit.

\n Guide lesen →\n
\n
\n Slicer\n

Multi-Material & AMS einrichten

\n

Bambu AMS, Prusa MMU3, Paint-on Color — Mehrfarb-Druck und lösliche Supports einrichten.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Brücken & Überhänge drucken

\n

Bridge-Speed, Kühlung, Winkelgrenzen — saubere Bridges ohne Durchhang.

\n Guide lesen →\n
\n
\n Einsteiger\n

Temperaturturm auswerten

\n

Optimale Drucktemperatur für jedes Filament finden — schnell, einfach, präzise.

\n Guide lesen →\n
\n
\n Einsteiger\n

Druckbett leveln & Z-Offset

\n

Manuell, BLTouch oder automatisch — perfekte erste Schicht für jeden Drucker.

\n Guide lesen →\n
\n
\n Einsteiger\n

Düsenwechsel & Nozzle-Upgrade

\n

Wann wechseln, welche Düse für welches Material — Messing, Hardened Steel, Ruby.

\n Guide lesen →\n
\n
\n Slicer\n

Naht (Seam) verstecken

\n

Aligned, Scarf Joint, Concave — die Naht an der richtigen Stelle platzieren oder unsichtbar machen.

\n Guide lesen →\n
\n
\n Material\n

Filament richtig trocknen

\n

Knistern, Blasen, raue Oberflächen — feuchtes Filament erkennen, trocknen und richtig lagern.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucker Kaufberatung 2026

\n

Von 200 — 1.000 € — welcher Drucker passt zu deinem Use-Case und Budget.

\n Guide lesen →\n
\n
\n Slicer\n

Speed Tower: Druckgeschwindigkeit optimieren

\n

Volumenstrom-Limit, Acceleration, Jerk — die ideale Druckgeschwindigkeit systematisch ermitteln.

\n Guide lesen →\n
\n
\n Slicer\n

Modifier Meshes & Paint-on Supports

\n

Slicer-Einstellungen zonenweise überschreiben — mehr Infill nur dort wo nötig, Supports exakt platzieren.

\n Guide lesen →\n
\n
\n Slicer\n

Fuzzy Skin: Strukturierte Oberflächen

\n

Rauhe, textile oder Steinoptik ohne Nachbearbeitung — Thickness, Point Distance und Materialwahl.

\n Guide lesen →\n
\n
\n Einsteiger\n

Klipper: Grundlagen & Ersteinrichtung

\n

Raspberry Pi, KIAUH, Mainsail — vom Marlin-Drucker zu Klipper mit Input Shaping und Pressure Advance.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Bed Adhesion: Haftung für jedes Material

\n

PEI, Klebestift, Magigoo, Haarspray — die richtige Kombination aus Bettoberfläche und Haftmittel.

\n Guide lesen →\n
\n
\n Einsteiger\n

Gridfinity: Das modulare Ordnungssystem

\n

42mm-Raster, Magnete, tausende Community-Bins — Werkstatt und Schreibtisch perfekt organisieren.

\n Guide lesen →\n
\n
\n Einsteiger\n

3D-Drucke nachbearbeiten

\n

Schleifen, Grundieren, Lackieren — aus dem Rohling ein professionelles Endprodukt machen.

\n Guide lesen →\n
\n
\n Fehleranalyse\n

Verstopfte Düse: Diagnose & Reinigung

\n

Kalt-Ziehen, Atomar-Methode, Nadel, Aceton-Bad — alle Methoden von einfach bis nuklear.

\n Guide lesen →\n
\n
\n Einsteiger\n

Resin-Druck: SLA & MSLA Grundlagen

\n

FDM vs. Resin, Drucker-Vergleich 2026, Workflow, Sicherheit und Resin-Typen im Überblick.

\n Guide lesen →\n
\n
\n Material\n

TPU & Flexible Filamente

\n

Shore-Härte, Extruder-Kompatibilität, Feuchtigkeit — flexibel drucken ohne Chaos im Extruder.

\n Guide lesen →\n
\n
\n Material\n

Carbon Fiber & Glasfaser

\n

Hardened-Steel-Düse, Abrasion, CF vs. GF vs. Kevlar — Hochleistungs-Filamente richtig einsetzen.

\n Guide lesen →\n
\n
\n Material\n

Nylon (PA6 / PA12) drucken

\n

Feuchtigkeit, Warping, Enclosure — Nylon entfaltet seine Stärken nur mit der richtigen Vorbereitung.

\n Guide lesen →\n
\n
\n
\n\n\n\n
\n

Noch Fragen?

\n

Schau in die FAQ oder frag in der Community.

\n \n
\n
','Guides','','inherit','closed','closed','','12-revision-v1','','','2026-03-25 11:13:57','2026-03-25 10:13:57','',12,'http://87.106.117.190/?p=474',0,'revision','',0), +(475,0,'2026-03-25 11:14:21','2026-03-25 10:14:21','\n\n
\n

Trending Druckmodelle

\n

Aktuelle Top-Modelle von Printables, MakerWorld und Thingiverse — live gecrawlt, nach Plattform und Kategorie filterbar.

\n\n
\n Plattform:\n \n \n \n \n
\n
\n Kategorie:\n \n \n \n \n
\n\n
\n\n \n
\n \"Stargate\"\n
\n
Printables
\n
Trending #1
\n

Stargate mit funktionierender Iris

\n

Ikonisches Sci-Fi-Modell — bewegliche Iris, detailreiche Chevrons, mehrteilig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Folding\n
\n
Printables
\n
6.500+ Downloads
\n

Folding Wall Hook

\n

Klappbarer Wandhaken — kein sichtbarer Schraubenkopf, minimal, sehr stabil.

\n Zum Modell →\n
\n
\n\n
\n \"Desk\n
\n
Printables
\n

Full Desk Organizer & Monitor Stand

\n

Komplettes Schreibtisch-Setup: Monitorerhöhung, stapelbare Schubladen, Kabelkanal.

\n Zum Modell →\n
\n
\n\n
\n \"Invisible\n
\n
Printables
\n
Neu
\n

Wall Hook — Unsichtbare Montage

\n

Haken der komplett hinter der Wand verschwindet — elegante Clean-Wall-Lösung.

\n Zum Modell →\n
\n
\n\n
\n \"Flexi\n
\n
Printables
\n
Trending
\n

Cute Flexi Baby Dragon

\n

Artikulierter Mini-Drache als Schlüsselanhänger — Print-in-Place, kein Support.

\n Zum Modell →\n
\n
\n\n
\n \"LEGO\n
\n
Printables
\n

LEGO-kompatible Steine 90°

\n

Maßgenaue LEGO-kompatible Bausteine — perfekt kalibriert, sofort einsatzbereit.

\n Zum Modell →\n
\n
\n\n
\n \"Tiny\n
\n
Printables
\n

Tiny Table Vise

\n

Funktionsfähiger Mini-Schraubstock — Gewindespindel, Backen aus PLA oder PETG.

\n Zum Modell →\n
\n
\n\n \n
\n \"SVEN\n
\n
MakerWorld
\n
Featured
\n

SVEN — Desktop Robot Arm

\n

6-Achs-Roboterarm fürs Schreibtisch — Servo-gesteuert, vollständig druckbar.

\n Zum Modell →\n
\n
\n\n
\n \"Monitor\n
\n
MakerWorld
\n
Neu
\n

Monitor VESA LED Backlight Ring

\n

LED-Ambilight-Ring direkt an VESA montiert — Diffusor und Halter in einem Druck.

\n Zum Modell →\n
\n
\n\n
\n \"Mini\n
\n
MakerWorld
\n
Neu
\n

Mini Lab Rax — 5U Server Rack

\n

Kompaktes 5-Zoll-Homelab-Rack für Raspberry Pi, Switches und Mini-PCs.

\n Zum Modell →\n
\n
\n\n
\n \"Mac\n
\n
MakerWorld
\n

The M2x2 — Mac mini M4 Gehäuse

\n

Schlankes Custom-Gehäuse für den Mac mini M4 — für PETG oder ASA ausgelegt.

\n Zum Modell →\n
\n
\n\n
\n \"Halo\n
\n
MakerWorld
\n
Trending
\n

Halo F1 — Desktop Companion

\n

Detailreicher F1-Helm-Ständer — mehrteilig, ideal für AMS Multi-Color.

\n Zum Modell →\n
\n
\n\n
\n \"HomePod\n
\n
MakerWorld
\n

Apple HomePod Mini Stand

\n

Eleganter Standfuß für den HomePod mini — Kabelführung integriert, kein Screw.

\n Zum Modell →\n
\n
\n\n
\n \"Solder\n
\n
MakerWorld
\n

DIY Lötrauch-Absaugung

\n

120mm Fan + 75mm Vent — kompakter Lötplatz-Filter zum Selbstbauen.

\n Zum Modell →\n
\n
\n\n \n
\n \"Flexi\n
\n
Thingiverse
\n
Klassiker1M+ Downloads
\n

Flexi Rex — verstärkte Gelenke

\n

Artikulierter T-Rex Print-in-Place — der meistgedruckte Klassiker, kein Support.

\n Zum Modell →\n
\n
\n\n
\n \"Floating\n
\n
Thingiverse
\n
Klassiker
\n

Floating Rock

\n

Optische Täuschung — levitierender Stein aus zwei Teilen, kein Magnet nötig.

\n Zum Modell →\n
\n
\n\n
\n \"Gothic\n
\n
MakerWorld
\n
Neu
\n

Gothic Dragon Tray

\n

Detailreiche Fantasy-Schale mit Drachen-Relief — ideal für Multi-Color oder Painting.

\n Zum Modell →\n
\n
\n\n
\n \"Big\n
\n
MakerWorld
\n
Trending
\n

Big Red Button Prank Box

\n

Der große rote Knopf — animierter Deckel, Sound-Modul-kompatibel, Spaßgarantie.

\n Zum Modell →\n
\n
\n\n
\n \"Simple\n
\n
MakerWorld
\n
Neu
\n

Simple Print Monitor (ST7789)

\n

1,54" Display-Gehäuse für Klipper-Statusanzeige — direkt neben dem Drucker montierbar.

\n Zum Modell →\n
\n
\n\n
\n \"2020\n
\n
MakerWorld
\n

2020 Alu-Profil Eckwinkel

\n

Präzise Eckverbinder für 2020-Aluminiumprofile — ideal für Drucker-Einhausungen und Rahmen.

\n Zum Modell →\n
\n
\n\n\n
\n \"Dupont\n
\n
Printables
\n
Neu
\n

Dupont Connector Bridge

\n

Kabelmanagement-Halter für Dupont-Stecker — hält Kabel sauber getrennt beim Crimpen.

\n Zum Modell →\n
\n
\n\n
\n \"Fluffy\n
\n
Printables
\n
NeuTrending
\n

Flexi Cat Keychain

\n

Süßer beweglicher Katzen-Schwänzchen-Schlüsselanhänger — TPU oder PLA, ideal als Geschenk.

\n Zum Modell →\n
\n
\n\n
\n \"Build\n
\n
Printables
\n

Build Tray

\n

Modulares Arbeitsblätt mit Rasterung für kleine Teile — perfekt für Elektronik und Lötarbeiten.

\n Zum Modell →\n
\n
\n\n
\n
\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-25 11:14:21','2026-03-25 10:14:21','',10,'http://87.106.117.190/?p=475',0,'revision','',0), +(476,0,'2026-03-25 11:22:29','2026-03-25 10:22:29','
Hilfe

Häufige Fragen

Die am häufigsten gestellten Fragen — praxisnah beantwortet.

Grundlagen

Einsteiger-Fragen

Welches Filament empfehlt ihr für den Anfang?
PLA — einfach zu drucken, kaum Warping, haftet gut. Temp 200–215°C, Bett 55–60°C. Erst nach PLA zu PETG wechseln.
Warum haftet mein Druck nicht am Bett?
1. Bett reinigen (Isopropanol). 2. Z-Offset prüfen. 3. Betttemperatur erhöhen (PLA: 60°C). 4. First Layer langsamer (max 20–30 mm/s).
Welche Schichthoehe soll ich verwenden?
0,20 mm als Standard. Für Details 0,12 mm, für schnelle Prototypen 0,28 mm.
Was ist Stringing und wie behebe ich es?
Fäden zwischen Druckteilen. Lösung: Temperatur senken, Retraction erhöhen (Direct: 1–2mm, Bowden: 4–6mm), Travel-Speed erhöhen.
PLA oder PETG — was nehmen?
PLA für Deko und Prototypen. PETG für funktionale Teile mit Hitze- oder Feuchtigkeitsbelastung. PETG ist schwieriger — erst PLA meistern.
Hardware

Drucker-Fragen

Welchen Drucker empfehlt ihr 2026?
Bambu Lab A1 Mini (~280€) — automatisch, schnell, zuverlässig. Budget: Ender 3 V3 SE. Profi: Bambu P1S oder Prusa MK4S.
Bambu Lab oder Prusa — was ist besser?
Bambu: Schneller, automatischer, für Produktive. Prusa: Open-Source, reparierbar. Bambu wenn du drucken willst, Prusa wenn du alles verstehen willst.
Wie oft muss ich das Bett leveln?
Mit Auto-Leveling (Bambu, neuere Ender): praktisch nie. Ohne: wöchentlich oder vor jedem Druck.
Was ist Retraction?
Filament wird beim Wechsel zurückgezogen — verhindert Stringing. Direct Drive: 1–3mm, Bowden: 4–7mm.
Ecken heben sich ab — was tun?
Warping. Lösung: Betttemp erhöhen, Bett reinigen, Brim (5–10mm) hinzufügen, Enclosure gegen Zugluft.

Frage nicht dabei?

Stell sie in unserer Community — Antwort meist in Minuten.

Community fragen
','FAQ','','inherit','closed','closed','','51-revision-v1','','','2026-03-25 11:22:29','2026-03-25 10:22:29','',51,'http://87.106.117.190/?p=476',0,'revision','',0), +(477,0,'2026-03-25 11:22:29','2026-03-25 10:22:29','
Community

Showcase

Echte Drucke aus der Community — mit Einstellungen, Tipps und Nachbau-Potenzial.

Druck der Woche

Community Highlight

Jeden Montag küren wir das beeindruckendste Projekt der Woche. Präzision, Kreativität oder Nützlichkeit — alles zählt. Tritt der Community bei und reiche deinen Druck ein!

Nächste Auswahl: Montag, 30.03.2026Kategorie: Alle offenEinsendeschluss: Sonntag Abend
So geht es

Ein guter Showcase-Beitrag

Diese Infos helfen anderen, dein Projekt nachzubauen und von deinen Erfahrungen zu lernen.

📸 Fotos

  • Mindestens 1 gutes Foto, besser 2–3
  • Gute Beleuchtung, neutraler Hintergrund
  • Detail-Shot zeigt Qualität besser als Ganzkörper
  • Vorher/Nachher bei Fails willkommen

⚙️ Druckeinstellungen

  • Drucker-Modell (z.B. Bambu A1 Mini)
  • Filament (Material, Marke, Farbe)
  • Schichthöhe & Drucktemperatur
  • Druckzeit & Materialverbrauch

💡 Erfahrungsbericht

  • Was hat gut funktioniert?
  • Welche Probleme gab es?
  • Was würdest du beim nächsten Mal anders machen?
  • Link zum Modell (Printables/MakerWorld)

Deinen Druck einreichen

Teile dein Projekt mit der Community! Schicke uns deine Fotos und Einstellungen — die besten Einsendungen kommen direkt auf die Startseite und ins Druck-der-Woche-Highlight.

  1. Tritt der WhatsApp-Community bei — dort läuft die aktive Diskussion und du kannst Fotos direkt teilen.
  2. Poste dein Projekt mit Fotos, Drucker, Material und deinen Einstellungen im Community-Chat.
  3. Nutze den Hashtag #showcase damit wir deinen Beitrag schnell finden und featuren können.
  4. Optional: Link zum Modell auf Printables oder MakerWorld hinzufügen, damit andere es nachdrucken können.
Zur Community
','Showcase','','inherit','closed','closed','','58-revision-v1','','','2026-03-25 11:22:29','2026-03-25 10:22:29','',58,'http://87.106.117.190/?p=477',0,'revision','',0), +(478,0,'2026-03-25 11:22:29','2026-03-25 10:22:29','\n
\n
Tool

Filament-Rechner

Druckkosten sekundenschnell kalkulieren — Filament, Strom und Gesamtkosten auf einen Blick.

\n
\n
\n
Kalkulation
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
Filamentkosten
\n
Stromkosten
\n
Gesamtkosten
\n
\n
\n
\n
\n
\n
\n

Filament Richtwerte 2026

\n
\n
PLA

15–25 €/kg

Einfachstes Material. Bambu, Prusament, eSUN, Polymaker.

\n
PETG

18–28 €/kg

Robust, feuchtigkeitsresistent. Etwas Stringing bei falschen Settings.

\n
TPU

22–38 €/kg

Flexibel, langlebig. Direct-Drive Drucker empfohlen.

\n
ASA / ABS

20–32 €/kg

UV-stabil, hitzefest. Enclosure notwendig.

\n
PLA-CF

28–45 €/kg

Carbon-verstärkt, steif und leicht. Gehärtete Düse nötig.

\n
Nylon PA

35–60 €/kg

Sehr zäh, geringe Feuchtigkeitstoleranz.

\n
\n
\n\n
','Filament-Rechner','','inherit','closed','closed','','13-revision-v1','','','2026-03-25 11:22:29','2026-03-25 10:22:29','',13,'http://87.106.117.190/?p=478',0,'revision','',0), +(479,0,'2026-03-25 11:43:49','2026-03-25 10:43:49','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n.ast-mobile-popup-drawer .menu-item a {\n color: rgba(255,255,255,.75) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n\n/* ══ FOOTER FIX — weißer Balken entfernen ══ */\n.site-below-footer-wrap,\n#colophon .ast-builder-grid-row-container,\n.site-below-footer-inner-wrap {\n background: #050505 !important;\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a,\n.site-below-footer-wrap .ast-footer-copyright a {\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a:hover {\n color: rgba(249,115,22,.9) !important;\n}\n\n/* ══ CODE BOXES — lesbare Darstellung ══ */\n.hub-section code,\n.hub-section kbd {\n display: inline-block;\n background: rgba(249,115,22,.1) !important;\n color: #fb923c !important;\n border: 1px solid rgba(249,115,22,.25) !important;\n border-radius: 6px !important;\n padding: 2px 8px !important;\n font-family: \"JetBrains Mono\", \"Fira Code\", Monaco, Consolas, monospace !important;\n font-size: .875em !important;\n line-height: 1.6 !important;\n word-break: break-all;\n}\n.hub-section pre {\n background: #0d1117 !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n padding: 18px 20px !important;\n overflow-x: auto !important;\n margin: 16px 0 !important;\n}\n.hub-section pre code {\n background: transparent !important;\n border: none !important;\n padding: 0 !important;\n color: #e2e8f0 !important;\n font-size: .85rem !important;\n word-break: normal;\n}\n\n/* ══════════════════════════════════════\n MOBILE RESPONSIVE — Alle Breakpoints\n══════════════════════════════════════ */\n\n/* ─── Horizontalen Overflow global verhindern ─── */\n/* Astra ändert ast-article-post padding auf Mobile von 3em → 1.5em 1em.\n m3d-wrap margin:-3em würde dann um 2em zu weit ziehen → horizontaler Scroll.\n Fix: margin auf Mobile auf die korrekten Werte anpassen. */\nhtml {\n overflow-x: hidden;\n}\n@media (max-width: 921px) {\n .m3d-wrap {\n margin-top: -1.5em !important;\n margin-left: -1em !important;\n margin-right: -1em !important;\n margin-bottom: -1.5em !important;\n }\n}\n@media (max-width: 544px) {\n /* Auf sehr kleinen Screens Astra-padding ist noch minimal */\n .m3d-wrap {\n margin: -1em -0.75em !important;\n }\n}\n\n/* ─── Tabellen scrollbar machen ─── */\n.hub-section table {\n display: block;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n white-space: nowrap;\n}\n@media (min-width: 600px) {\n .hub-section table { display: table; white-space: normal; overflow-x: visible; }\n}\n\n/* ─── Tablet: 768px ─── */\n@media (max-width: 768px) {\n /* Hub-Section Guides */\n .hub-section { padding: 28px 16px !important; max-width: 100% !important; }\n .hub-section h2 { font-size: 1.15rem; margin: 28px 0 10px; }\n .hub-section h3 { font-size: 1rem; }\n .hub-section p, .hub-section ul li, .hub-section ol li { font-size: 14px; }\n .hub-section table { font-size: 13px; }\n .hub-section table th, .hub-section table td { padding: 9px 12px; }\n\n /* Guide-Karten Grid */\n #gg { grid-template-columns: 1fr 1fr !important; }\n\n /* Models Seite */\n .model-grid { grid-template-columns: 1fr 1fr !important; }\n .models-filter { gap: 6px; }\n .mf-btn { padding: 7px 10px; font-size: 13px; }\n\n /* CTA-Blöcke */\n .cta { padding: 40px 20px !important; }\n .cta h2 { font-size: 1.4rem !important; }\n\n /* Footer */\n .site-below-footer-wrap { text-align: center; }\n\n /* m3d-divider margin */\n .m3d-divider { margin: 0 20px !important; }\n\n /* Astra Hauptcontainer */\n .ast-container { padding-left: 16px !important; padding-right: 16px !important; }\n}\n\n/* ─── Mobil: 600px ─── */\n@media (max-width: 600px) {\n /* Tabellen auf Mobile → scroll */\n .hub-section table { white-space: nowrap; }\n\n /* Guide-Karten: 1 Spalte */\n #gg { grid-template-columns: 1fr !important; }\n\n /* Models: 1 Spalte */\n .model-grid { grid-template-columns: 1fr !important; }\n\n /* Models Filter-Buttons kleiner */\n .models-filter { gap: 5px; }\n .mf-btn { font-size: 12px; padding: 6px 9px; }\n\n /* Model-Card Bild */\n .model-card img { height: 160px; }\n\n /* Platform-Tag */\n .platform-tag { font-size: 10px; padding: 3px 8px; }\n\n /* CTA Buttons stacked */\n .cta div[style*=\"display:flex\"] { flex-direction: column !important; align-items: center !important; }\n .cta .btn { width: 100%; max-width: 280px; text-align: center; }\n .cta { padding: 32px 16px !important; }\n\n /* Hub-section noch kompakter */\n .hub-section { padding: 20px 14px !important; }\n .hub-section h1 { font-size: 1.6rem !important; }\n .hub-section h2 { font-size: 1.05rem !important; }\n .hub-section ol li { padding-left: 44px; }\n\n /* hub-intro */\n .hub-intro { font-size: 14px !important; }\n\n /* warn-box */\n .warn-box { padding: 12px 14px !important; font-size: 13px; }\n}\n\n/* ─── Klein-Mobil: 400px ─── */\n@media (max-width: 400px) {\n .hub-section { padding: 16px 12px !important; }\n .hub-section table th, .hub-section table td { padding: 7px 9px; font-size: 12px; }\n .mf-btn { font-size: 11px; padding: 5px 8px; }\n .model-card img { height: 140px; }\n}\n\n/* ─── Navigation Mobile ─── */\n@media (max-width: 921px) {\n /* Astra Hamburger Button sichtbar halten */\n .ast-mobile-popup-trigger { display: block !important; }\n /* Mobile Menu Hintergrund */\n .ast-mobile-header-wrap { background: rgba(5,5,5,.97) !important; }\n .ast-mobile-header-wrap .menu-item a { \n color: rgba(255,255,255,.8) !important; \n padding: 12px 20px !important;\n border-bottom: 1px solid rgba(255,255,255,.06) !important;\n }\n}\n\n/* ─── Überbreite SVG-Header in Guides fixen ─── */\n@media (max-width: 600px) {\n .hub-section svg[viewBox] { border-radius: 8px; }\n}\n\n/* ─── Touch-Targets: Minimum 44px ─── */\n@media (max-width: 921px) {\n .btn, .lk, .bo, .bgb,\n .m3d-cta-a, .m3d-cta-b, .m3d-wa-btn,\n #gfb button, .mf-btn {\n min-height: 44px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n /* Nav-Links ebenfalls touch-freundlich */\n .ast-mobile-header-wrap .menu-item a {\n min-height: 44px;\n display: flex !important;\n align-items: center;\n }\n}\n\n/* ─── Bilder in hub-section: nie overflow ─── */\n.hub-section img,\n.hub-section svg {\n max-width: 100%;\n height: auto;\n}\n\n/* ─── Pre/Code Blöcke: horizontaler Scroll statt Overflow ─── */\n.hub-section pre {\n max-width: 100%;\n white-space: pre;\n word-wrap: normal;\n}\n\n/* ─── Inline-Style overflow-fix für Homepage-Sections ─── */\n@media (max-width: 600px) {\n .m3d-featured, .m3d-section, .m3d-community,\n .m3d-footer-cta, .m3d-bento {\n overflow-x: hidden;\n }\n /* model-body min-height auf Mobile entfernen — spart Platz */\n .model-body p { min-height: unset !important; }\n}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 11:43:49','2026-03-25 10:43:49','',29,'http://87.106.117.190/?p=479',0,'revision','',0), +(480,0,'2026-03-25 11:56:33','2026-03-25 10:56:33','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n/* Astra setzt .ast-mobile-popup-inner + .ast-mobile-header-content auf #ffffff — überschreiben */\n.ast-mobile-popup-drawer.active .ast-mobile-popup-inner,\n.ast-mobile-popup-drawer .ast-mobile-popup-inner {\n background-color: #050505 !important;\n background: #050505 !important;\n}\n.ast-mobile-header-wrap .ast-mobile-header-content,\n.ast-desktop-header-content,\n.ast-mobile-header-content {\n background-color: #050505 !important;\n background: #050505 !important;\n}\n.ast-mobile-popup-drawer .menu-item a,\n.ast-mobile-header-wrap .ast-mobile-header-content .menu-item a,\n.ast-mobile-header-content .menu-item a {\n color: rgba(255,255,255,.8) !important;\n background: transparent !important;\n}\n.ast-mobile-popup-drawer .menu-item a:hover,\n.ast-mobile-header-content .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.06) !important;\n}\n/* Toggle-Button (Hamburger) — Farbe */\n.ast-mobile-menu-trigger-minimal,\n.menu-toggle,\n.ast-mobile-menu-trigger {\n color: rgba(255,255,255,.8) !important;\n background: transparent !important;\n border: none !important;\n}\n/* Sub-Menü mobile */\n.ast-mobile-header-content .sub-menu,\n.ast-mobile-popup-drawer .sub-menu {\n background: rgba(255,255,255,.03) !important;\n border: none !important;\n}\n.ast-mobile-header-content .sub-menu .menu-item a,\n.ast-mobile-popup-drawer .sub-menu .menu-item a {\n color: rgba(255,255,255,.6) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n\n/* ══ FOOTER FIX — weißer Balken entfernen ══ */\n.site-below-footer-wrap,\n#colophon .ast-builder-grid-row-container,\n.site-below-footer-inner-wrap {\n background: #050505 !important;\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a,\n.site-below-footer-wrap .ast-footer-copyright a {\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a:hover {\n color: rgba(249,115,22,.9) !important;\n}\n\n/* ══ CODE BOXES — lesbare Darstellung ══ */\n.hub-section code,\n.hub-section kbd {\n display: inline-block;\n background: rgba(249,115,22,.1) !important;\n color: #fb923c !important;\n border: 1px solid rgba(249,115,22,.25) !important;\n border-radius: 6px !important;\n padding: 2px 8px !important;\n font-family: \"JetBrains Mono\", \"Fira Code\", Monaco, Consolas, monospace !important;\n font-size: .875em !important;\n line-height: 1.6 !important;\n word-break: break-all;\n}\n.hub-section pre {\n background: #0d1117 !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n padding: 18px 20px !important;\n overflow-x: auto !important;\n margin: 16px 0 !important;\n}\n.hub-section pre code {\n background: transparent !important;\n border: none !important;\n padding: 0 !important;\n color: #e2e8f0 !important;\n font-size: .85rem !important;\n word-break: normal;\n}\n\n/* ══════════════════════════════════════\n MOBILE RESPONSIVE — Alle Breakpoints\n══════════════════════════════════════ */\n\n/* ─── Horizontalen Overflow global verhindern ─── */\n/* Astra ändert ast-article-post padding auf Mobile von 3em → 1.5em 1em.\n m3d-wrap margin:-3em würde dann um 2em zu weit ziehen → horizontaler Scroll.\n Fix: margin auf Mobile auf die korrekten Werte anpassen. */\nhtml {\n overflow-x: hidden;\n}\n@media (max-width: 921px) {\n .m3d-wrap {\n margin-top: -1.5em !important;\n margin-left: -1em !important;\n margin-right: -1em !important;\n margin-bottom: -1.5em !important;\n }\n}\n@media (max-width: 544px) {\n /* Auf sehr kleinen Screens Astra-padding ist noch minimal */\n .m3d-wrap {\n margin: -1em -0.75em !important;\n }\n}\n\n/* ─── Tabellen scrollbar machen ─── */\n.hub-section table {\n display: block;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n white-space: nowrap;\n}\n@media (min-width: 600px) {\n .hub-section table { display: table; white-space: normal; overflow-x: visible; }\n}\n\n/* ─── Tablet: 768px ─── */\n@media (max-width: 768px) {\n /* Hub-Section Guides */\n .hub-section { padding: 28px 16px !important; max-width: 100% !important; }\n .hub-section h2 { font-size: 1.15rem; margin: 28px 0 10px; }\n .hub-section h3 { font-size: 1rem; }\n .hub-section p, .hub-section ul li, .hub-section ol li { font-size: 14px; }\n .hub-section table { font-size: 13px; }\n .hub-section table th, .hub-section table td { padding: 9px 12px; }\n\n /* Guide-Karten Grid */\n #gg { grid-template-columns: 1fr 1fr !important; }\n\n /* Models Seite */\n .model-grid { grid-template-columns: 1fr 1fr !important; }\n .models-filter { gap: 6px; }\n .mf-btn { padding: 7px 10px; font-size: 13px; }\n\n /* CTA-Blöcke */\n .cta { padding: 40px 20px !important; }\n .cta h2 { font-size: 1.4rem !important; }\n\n /* Footer */\n .site-below-footer-wrap { text-align: center; }\n\n /* m3d-divider margin */\n .m3d-divider { margin: 0 20px !important; }\n\n /* Astra Hauptcontainer */\n .ast-container { padding-left: 16px !important; padding-right: 16px !important; }\n}\n\n/* ─── Mobil: 600px ─── */\n@media (max-width: 600px) {\n /* Tabellen auf Mobile → scroll */\n .hub-section table { white-space: nowrap; }\n\n /* Guide-Karten: 1 Spalte */\n #gg { grid-template-columns: 1fr !important; }\n\n /* Models: 1 Spalte */\n .model-grid { grid-template-columns: 1fr !important; }\n\n /* Models Filter-Buttons kleiner */\n .models-filter { gap: 5px; }\n .mf-btn { font-size: 12px; padding: 6px 9px; }\n\n /* Model-Card Bild */\n .model-card img { height: 160px; }\n\n /* Platform-Tag */\n .platform-tag { font-size: 10px; padding: 3px 8px; }\n\n /* CTA Buttons stacked */\n .cta div[style*=\"display:flex\"] { flex-direction: column !important; align-items: center !important; }\n .cta .btn { width: 100%; max-width: 280px; text-align: center; }\n .cta { padding: 32px 16px !important; }\n\n /* Hub-section noch kompakter */\n .hub-section { padding: 20px 14px !important; }\n .hub-section h1 { font-size: 1.6rem !important; }\n .hub-section h2 { font-size: 1.05rem !important; }\n .hub-section ol li { padding-left: 44px; }\n\n /* hub-intro */\n .hub-intro { font-size: 14px !important; }\n\n /* warn-box */\n .warn-box { padding: 12px 14px !important; font-size: 13px; }\n}\n\n/* ─── Klein-Mobil: 400px ─── */\n@media (max-width: 400px) {\n .hub-section { padding: 16px 12px !important; }\n .hub-section table th, .hub-section table td { padding: 7px 9px; font-size: 12px; }\n .mf-btn { font-size: 11px; padding: 5px 8px; }\n .model-card img { height: 140px; }\n}\n\n/* ─── Navigation Mobile ─── */\n@media (max-width: 921px) {\n /* Astra Hamburger Button sichtbar halten */\n .ast-mobile-popup-trigger { display: block !important; }\n /* Mobile Menu Hintergrund */\n .ast-mobile-header-wrap { background: rgba(5,5,5,.97) !important; }\n .ast-mobile-header-wrap .menu-item a { \n color: rgba(255,255,255,.8) !important; \n padding: 12px 20px !important;\n border-bottom: 1px solid rgba(255,255,255,.06) !important;\n }\n}\n\n/* ─── Überbreite SVG-Header in Guides fixen ─── */\n@media (max-width: 600px) {\n .hub-section svg[viewBox] { border-radius: 8px; }\n}\n\n/* ─── Touch-Targets: Minimum 44px ─── */\n@media (max-width: 921px) {\n .btn, .lk, .bo, .bgb,\n .m3d-cta-a, .m3d-cta-b, .m3d-wa-btn,\n #gfb button, .mf-btn {\n min-height: 44px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n /* Nav-Links ebenfalls touch-freundlich */\n .ast-mobile-header-wrap .menu-item a {\n min-height: 44px;\n display: flex !important;\n align-items: center;\n }\n}\n\n/* ─── Bilder in hub-section: nie overflow ─── */\n.hub-section img,\n.hub-section svg {\n max-width: 100%;\n height: auto;\n}\n\n/* ─── Pre/Code Blöcke: horizontaler Scroll statt Overflow ─── */\n.hub-section pre {\n max-width: 100%;\n white-space: pre;\n word-wrap: normal;\n}\n\n/* ─── Inline-Style overflow-fix für Homepage-Sections ─── */\n@media (max-width: 600px) {\n .m3d-featured, .m3d-section, .m3d-community,\n .m3d-footer-cta, .m3d-bento {\n overflow-x: hidden;\n }\n /* model-body min-height auf Mobile entfernen — spart Platz */\n .model-body p { min-height: unset !important; }\n}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 11:56:33','2026-03-25 10:56:33','',29,'http://87.106.117.190/?p=480',0,'revision','',0), +(481,0,'2026-03-25 13:10:04','2026-03-25 12:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 515 Likes und 945 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2613 Likes und 6649 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1536 Likes und 2533 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 953 Likes und 1295 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 1120 Likes und 3040 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Bambulab
Sitemap Pick

Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Z

Z Motor Cover Blv Mgn Cube

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Low

Low Poly Bowl Trinket Tray

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"No

No Smoking Table

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Ams

Ams Silica Holder Full Drilled

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-25 13:10:04','2026-03-25 12:10:04','',10,'http://87.106.117.190/?p=481',0,'revision','',0), +(482,0,'2026-03-25 13:10:05','2026-03-25 12:10:05','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n/* Astra setzt .ast-mobile-popup-inner + .ast-mobile-header-content auf #ffffff — überschreiben */\n.ast-mobile-popup-drawer.active .ast-mobile-popup-inner,\n.ast-mobile-popup-drawer .ast-mobile-popup-inner {\n background-color: #050505 !important;\n background: #050505 !important;\n}\n.ast-mobile-header-wrap .ast-mobile-header-content,\n.ast-desktop-header-content,\n.ast-mobile-header-content {\n background-color: #050505 !important;\n background: #050505 !important;\n}\n.ast-mobile-popup-drawer .menu-item a,\n.ast-mobile-header-wrap .ast-mobile-header-content .menu-item a,\n.ast-mobile-header-content .menu-item a {\n color: rgba(255,255,255,.8) !important;\n background: transparent !important;\n}\n.ast-mobile-popup-drawer .menu-item a:hover,\n.ast-mobile-header-content .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.06) !important;\n}\n/* Toggle-Button (Hamburger) — Farbe */\n.ast-mobile-menu-trigger-minimal,\n.menu-toggle,\n.ast-mobile-menu-trigger {\n color: rgba(255,255,255,.8) !important;\n background: transparent !important;\n border: none !important;\n}\n/* Sub-Menü mobile */\n.ast-mobile-header-content .sub-menu,\n.ast-mobile-popup-drawer .sub-menu {\n background: rgba(255,255,255,.03) !important;\n border: none !important;\n}\n.ast-mobile-header-content .sub-menu .menu-item a,\n.ast-mobile-popup-drawer .sub-menu .menu-item a {\n color: rgba(255,255,255,.6) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n\n/* ══ FOOTER FIX — weißer Balken entfernen ══ */\n.site-below-footer-wrap,\n#colophon .ast-builder-grid-row-container,\n.site-below-footer-inner-wrap {\n background: #050505 !important;\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a,\n.site-below-footer-wrap .ast-footer-copyright a {\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a:hover {\n color: rgba(249,115,22,.9) !important;\n}\n\n/* ══ CODE BOXES — lesbare Darstellung ══ */\n.hub-section code,\n.hub-section kbd {\n display: inline-block;\n background: rgba(249,115,22,.1) !important;\n color: #fb923c !important;\n border: 1px solid rgba(249,115,22,.25) !important;\n border-radius: 6px !important;\n padding: 2px 8px !important;\n font-family: \"JetBrains Mono\", \"Fira Code\", Monaco, Consolas, monospace !important;\n font-size: .875em !important;\n line-height: 1.6 !important;\n word-break: break-all;\n}\n.hub-section pre {\n background: #0d1117 !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n padding: 18px 20px !important;\n overflow-x: auto !important;\n margin: 16px 0 !important;\n}\n.hub-section pre code {\n background: transparent !important;\n border: none !important;\n padding: 0 !important;\n color: #e2e8f0 !important;\n font-size: .85rem !important;\n word-break: normal;\n}\n\n/* ══════════════════════════════════════\n MOBILE RESPONSIVE — Alle Breakpoints\n══════════════════════════════════════ */\n\n/* ─── Horizontalen Overflow global verhindern ─── */\n/* Astra ändert ast-article-post padding auf Mobile von 3em → 1.5em 1em.\n m3d-wrap margin:-3em würde dann um 2em zu weit ziehen → horizontaler Scroll.\n Fix: margin auf Mobile auf die korrekten Werte anpassen. */\nhtml {\n overflow-x: hidden;\n}\n@media (max-width: 921px) {\n .m3d-wrap {\n margin-top: -1.5em !important;\n margin-left: -1em !important;\n margin-right: -1em !important;\n margin-bottom: -1.5em !important;\n }\n}\n@media (max-width: 544px) {\n /* Auf sehr kleinen Screens Astra-padding ist noch minimal */\n .m3d-wrap {\n margin: -1em -0.75em !important;\n }\n}\n\n/* ─── Tabellen scrollbar machen ─── */\n.hub-section table {\n display: block;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n white-space: nowrap;\n}\n@media (min-width: 600px) {\n .hub-section table { display: table; white-space: normal; overflow-x: visible; }\n}\n\n/* ─── Tablet: 768px ─── */\n@media (max-width: 768px) {\n /* Hub-Section Guides */\n .hub-section { padding: 28px 16px !important; max-width: 100% !important; }\n .hub-section h2 { font-size: 1.15rem; margin: 28px 0 10px; }\n .hub-section h3 { font-size: 1rem; }\n .hub-section p, .hub-section ul li, .hub-section ol li { font-size: 14px; }\n .hub-section table { font-size: 13px; }\n .hub-section table th, .hub-section table td { padding: 9px 12px; }\n\n /* Guide-Karten Grid */\n #gg { grid-template-columns: 1fr 1fr !important; }\n\n /* Models Seite */\n .model-grid { grid-template-columns: 1fr 1fr !important; }\n .models-filter { gap: 6px; }\n .mf-btn { padding: 7px 10px; font-size: 13px; }\n\n /* CTA-Blöcke */\n .cta { padding: 40px 20px !important; }\n .cta h2 { font-size: 1.4rem !important; }\n\n /* Footer */\n .site-below-footer-wrap { text-align: center; }\n\n /* m3d-divider margin */\n .m3d-divider { margin: 0 20px !important; }\n\n /* Astra Hauptcontainer */\n .ast-container { padding-left: 16px !important; padding-right: 16px !important; }\n}\n\n/* ─── Mobil: 600px ─── */\n@media (max-width: 600px) {\n /* Tabellen auf Mobile → scroll */\n .hub-section table { white-space: nowrap; }\n\n /* Guide-Karten: 1 Spalte */\n #gg { grid-template-columns: 1fr !important; }\n\n /* Models: 1 Spalte */\n .model-grid { grid-template-columns: 1fr !important; }\n\n /* Models Filter-Buttons kleiner */\n .models-filter { gap: 5px; }\n .mf-btn { font-size: 12px; padding: 6px 9px; }\n\n /* Model-Card Bild */\n .model-card img { height: 160px; }\n\n /* Platform-Tag */\n .platform-tag { font-size: 10px; padding: 3px 8px; }\n\n /* CTA Buttons stacked */\n .cta div[style*=\"display:flex\"] { flex-direction: column !important; align-items: center !important; }\n .cta .btn { width: 100%; max-width: 280px; text-align: center; }\n .cta { padding: 32px 16px !important; }\n\n /* Hub-section noch kompakter */\n .hub-section { padding: 20px 14px !important; }\n .hub-section h1 { font-size: 1.6rem !important; }\n .hub-section h2 { font-size: 1.05rem !important; }\n .hub-section ol li { padding-left: 44px; }\n\n /* hub-intro */\n .hub-intro { font-size: 14px !important; }\n\n /* warn-box */\n .warn-box { padding: 12px 14px !important; font-size: 13px; }\n}\n\n/* ─── Klein-Mobil: 400px ─── */\n@media (max-width: 400px) {\n .hub-section { padding: 16px 12px !important; }\n .hub-section table th, .hub-section table td { padding: 7px 9px; font-size: 12px; }\n .mf-btn { font-size: 11px; padding: 5px 8px; }\n .model-card img { height: 140px; }\n}\n\n/* ─── Navigation Mobile ─── */\n@media (max-width: 921px) {\n /* Astra Hamburger Button sichtbar halten */\n .ast-mobile-popup-trigger { display: block !important; }\n /* Mobile Menu Hintergrund */\n .ast-mobile-header-wrap { background: rgba(5,5,5,.97) !important; }\n .ast-mobile-header-wrap .menu-item a { \n color: rgba(255,255,255,.8) !important; \n padding: 12px 20px !important;\n border-bottom: 1px solid rgba(255,255,255,.06) !important;\n }\n}\n\n/* ─── Überbreite SVG-Header in Guides fixen ─── */\n@media (max-width: 600px) {\n .hub-section svg[viewBox] { border-radius: 8px; }\n}\n\n/* ─── Touch-Targets: Minimum 44px ─── */\n@media (max-width: 921px) {\n .btn, .lk, .bo, .bgb,\n .m3d-cta-a, .m3d-cta-b, .m3d-wa-btn,\n #gfb button, .mf-btn {\n min-height: 44px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n /* Nav-Links ebenfalls touch-freundlich */\n .ast-mobile-header-wrap .menu-item a {\n min-height: 44px;\n display: flex !important;\n align-items: center;\n }\n}\n\n/* ─── Bilder in hub-section: nie overflow ─── */\n.hub-section img,\n.hub-section svg {\n max-width: 100%;\n height: auto;\n}\n\n/* ─── Pre/Code Blöcke: horizontaler Scroll statt Overflow ─── */\n.hub-section pre {\n max-width: 100%;\n white-space: pre;\n word-wrap: normal;\n}\n\n/* ─── Inline-Style overflow-fix für Homepage-Sections ─── */\n@media (max-width: 600px) {\n .m3d-featured, .m3d-section, .m3d-community,\n .m3d-footer-cta, .m3d-bento {\n overflow-x: hidden;\n }\n /* model-body min-height auf Mobile entfernen — spart Platz */\n .model-body p { min-height: unset !important; }\n}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 13:10:05','2026-03-25 12:10:05','',29,'http://87.106.117.190/?p=482',0,'revision','',0), +(483,0,'2026-03-25 13:10:06','2026-03-25 12:10:06',' ','','','publish','closed','closed','','483','','','2026-03-25 13:10:06','2026-03-25 12:10:06','',0,'http://87.106.117.190/483/',11,'nav_menu_item','',0), +(484,0,'2026-03-25 16:33:58','2026-03-25 15:33:58','\n\n\n
\n\n \n
\n
\n
\n
\n
3D-Druck Community
\n

Print.
Share.
Inspire.

\n

Guides, Modelle und Community — alles was du für bessere 3D-Drucke brauchst. Kostenlos. Immer aktuell.

\n \n
\n
\n
\n Scroll\n
\n
\n\n \n
\n
\n
49+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n \n
49+ Guides für alle Levels
\n
500+ Community-Mitglieder
\n
PLA · PETG · TPU · ABS/ASA
\n
Wöchentlich neue Modelle
\n
Bambu · Prusa · Ender · Voron
\n
Kostenlos · Open Community
\n
\n
\n\n \n \n\n
\n\n \n
\n
\n
\n \n

Wissen für
bessere Drucke

\n
\n Alle Guides →\n
\n
\n
\n
🧱
\n Einsteiger\n

PLA perfekt einstellen

\n

Temperatur, Kühlung, Geschwindigkeit — die komplette Parameterübersicht für makellose Ergebnisse.

\n Lesen →\n
\n
\n
🧵
\n Fortgeschritten\n

Stringing reduzieren

\n

Fäden zwischen Druckteilen? Retraction, Temperatur und Travel-Speed richtig einstellen.

\n Lesen →\n
\n
\n
🧪
\n Material\n

PETG ohne Frust

\n

Zäh, wasserfest, hitzestabil — aber tückisch. Der ultimative PETG-Einstellungs-Guide.

\n Lesen →\n
\n
\n
🔧
\n Fehleranalyse\n

Warping vermeiden

\n

Ecken heben sich ab? Betttemperatur, First-Layer und Haftungsmethoden im Vergleich.

\n Lesen →\n
\n
\n
🌊
\n Flexibel\n

TPU erfolgreich drucken

\n

Direktantrieb vs Bowden, Geschwindigkeit, Retraction — alles was du für TPU brauchst.

\n Lesen →\n
\n
\n
⚙️
\n Slicer\n

Slicer-Profil optimieren

\n

OrcaSlicer, PrusaSlicer, Bambu Studio — so baust du ein perfektes Basisprofil auf.

\n Lesen →\n
\n
\n
\n\n \n
\n
\n
\n
\n \n

Lerne mit
anderen Makern

\n

In unserer WhatsApp-Gruppe teilen wir Projekte, helfen bei Fehlern und finden jede Woche die besten neuen Modelle.

\n
\n
\n
🛠️
\n
\n

Sofortige Hilfe bei Druckfehlern

\n

Frage die Community — meistens innerhalb von Minuten eine Antwort.

\n
\n
\n
\n
🏆
\n
\n

Wöchentliche Modell-Highlights

\n

Jeden Freitag die besten neuen Drucke aus der Community.

\n
\n
\n
\n
💬
\n
\n

Filament- & Drucker-Empfehlungen

\n

Echte Erfahrungen statt Marketing — von Makern für Maker.

\n
\n
\n
\n
\n
\n \n \n WhatsApp Community beitreten\n \n
Kostenlos · Kein Spam · Jederzeit austragen
\n
\n
\n
\n\n \n \n\n
\n','Startseite','','inherit','closed','closed','','8-revision-v1','','','2026-03-25 16:33:58','2026-03-25 15:33:58','',8,'http://87.106.117.190/?p=484',0,'revision','',0), +(485,0,'2026-03-25 16:34:09','2026-03-25 15:34:09','
Community

Showcase

Echte Drucke aus der Community — mit Einstellungen, Tipps und Nachbau-Potenzial.

Druck der Woche

Community Highlight

Jeden Montag küren wir das beeindruckendste Projekt der Woche. Präzision, Kreativität oder Nützlichkeit — alles zählt. Tritt der Community bei und reiche deinen Druck ein!

Nächste Auswahl: Montag, 30.03.2026Kategorie: Alle offenEinsendeschluss: Sonntag Abend
So geht es

Ein guter Showcase-Beitrag

Diese Infos helfen anderen, dein Projekt nachzubauen und von deinen Erfahrungen zu lernen.

📸 Fotos

  • Mindestens 1 gutes Foto, besser 2–3
  • Gute Beleuchtung, neutraler Hintergrund
  • Detail-Shot zeigt Qualität besser als Ganzkörper
  • Vorher/Nachher bei Fails willkommen

⚙️ Druckeinstellungen

  • Drucker-Modell (z.B. Bambu A1 Mini)
  • Filament (Material, Marke, Farbe)
  • Schichthöhe & Drucktemperatur
  • Druckzeit & Materialverbrauch

💡 Erfahrungsbericht

  • Was hat gut funktioniert?
  • Welche Probleme gab es?
  • Was würdest du beim nächsten Mal anders machen?
  • Link zum Modell (Printables/MakerWorld)

Deinen Druck einreichen

Teile dein Projekt mit der Community! Schicke uns deine Fotos und Einstellungen — die besten Einsendungen kommen direkt auf die Startseite und ins Druck-der-Woche-Highlight.

  1. Tritt der WhatsApp-Community bei — dort läuft die aktive Diskussion und du kannst Fotos direkt teilen.
  2. Poste dein Projekt mit Fotos, Drucker, Material und deinen Einstellungen im Community-Chat.
  3. Nutze den Hashtag #showcase damit wir deinen Beitrag schnell finden und featuren können.
  4. Optional: Link zum Modell auf Printables oder MakerWorld hinzufügen, damit andere es nachdrucken können.
Zur Community
','Showcase','','inherit','closed','closed','','58-revision-v1','','','2026-03-25 16:34:09','2026-03-25 15:34:09','',58,'http://87.106.117.190/?p=485',0,'revision','',0), +(486,0,'2026-03-25 18:15:03','2026-03-25 17:15:03','\n
\n\n\n\n
\n

Stringing reduzieren

\n

Retraction, Temperatur und Travel-Strategien im Praxischeck.

\n

Schnellstart

\n
    \n
  • Mit Standardprofil starten und nur 1\\\\u20132 Parameter pro Test \\\\u00e4ndern.
  • \n
  • Kurzen Testdruck verwenden (Kalibrierw\\\\u00fcrfel / kleines Funktionsteil).
  • \n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \n
\n

Praxis-Workflow

\n
    \n
  1. Baseline-Druck mit aktuellem Profil.
  2. \n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\\\u00dfhaltigkeit).
  4. \n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \n
  7. Erneut testen und mit Baseline vergleichen.
  8. \n
\n

Typische Fehler

\n
    \n
  • Zu viele Parameter gleichzeitig ver\\\\u00e4ndern.
  • \n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \n
  • Ungeeignete Testobjekte nutzen.
  • \n
\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\\\u00e4glichen Wissens-Serie.

\n
\n\n\n
','Guide #2: Stringing reduzieren (2026-03-25)','','publish','closed','closed','','guide-2-stringing-reduzieren-2026-03-25','','','2026-03-27 07:15:56','2026-03-25 21:22:49','',0,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-25/',0,'post','',0), +(487,0,'2026-03-25 18:15:06','2026-03-25 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 25.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-25 18:15:06','2026-03-25 17:15:06','',9,'http://87.106.117.190/?p=487',0,'revision','',0), +(488,0,'2026-03-25 19:10:05','2026-03-25 18:10:05','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 540 Likes und 983 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2640 Likes und 6749 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1561 Likes und 2576 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 979 Likes und 1346 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 1141 Likes und 3114 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Bambulab
Sitemap Pick

Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Z

Z Motor Cover Blv Mgn Cube

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Low

Low Poly Bowl Trinket Tray

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"No

No Smoking Table

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Ams

Ams Silica Holder Full Drilled

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-25 19:10:05','2026-03-25 18:10:05','',10,'http://87.106.117.190/?p=488',0,'revision','',0), +(489,0,'2026-03-25 19:10:06','2026-03-25 18:10:06','@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap\");\n\n/* ══════════════════════════════════════\n GLOBAL SITE BACKGROUND — #050505\n══════════════════════════════════════ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml, body {\n background: #050505 !important;\n color: #fff !important;\n font-family: \"Inter\", -apple-system, BlinkMacSystemFont, sans-serif !important;\n}\n\n/* ══ HEADER ══ */\n.main-header-bar, #masthead, .site-header,\n.ast-primary-header-bar, .ast-above-header-bar {\n background: rgba(5,5,5,.92) !important;\n backdrop-filter: blur(12px) !important;\n -webkit-backdrop-filter: blur(12px) !important;\n border-bottom: 1px solid rgba(255,255,255,.07) !important;\n}\n\n/* ══ NAV LINKS (Top-Level) ══ */\n.main-header-menu .menu-item > a,\n.main-navigation .menu-item > a,\n.ast-primary-header-bar .menu-item > a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n transition: color .2s !important;\n}\n.main-header-menu .menu-item > a:hover,\n.main-navigation .menu-item > a:hover,\n.main-header-menu .current-menu-item > a,\n.main-navigation .current-menu-item > a {\n color: #f97316 !important;\n}\n\n/* ══ DROPDOWN SUBMENÜ ══ */\n.main-header-menu .sub-menu,\n.main-navigation .sub-menu,\n.ast-header-break-point .sub-menu,\nnav .sub-menu {\n background: rgba(8,8,8,.97) !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n box-shadow: 0 16px 40px rgba(0,0,0,.6) !important;\n padding: 6px !important;\n}\n.main-header-menu .sub-menu .menu-item a,\n.main-navigation .sub-menu .menu-item a,\nnav .sub-menu .menu-item a {\n color: rgba(255,255,255,.75) !important;\n font-size: 14px !important;\n font-weight: 500 !important;\n border-radius: 6px !important;\n padding: 8px 14px !important;\n display: block !important;\n transition: background .15s, color .15s !important;\n}\n.main-header-menu .sub-menu .menu-item a:hover,\n.main-navigation .sub-menu .menu-item a:hover,\nnav .sub-menu .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.08) !important;\n}\n\n/* ══ MOBILE NAV ══ */\n.ast-mobile-popup-drawer,\n.ast-header-break-point .main-header-bar {\n background: rgba(5,5,5,.98) !important;\n}\n/* Astra setzt .ast-mobile-popup-inner + .ast-mobile-header-content auf #ffffff — überschreiben */\n.ast-mobile-popup-drawer.active .ast-mobile-popup-inner,\n.ast-mobile-popup-drawer .ast-mobile-popup-inner {\n background-color: #050505 !important;\n background: #050505 !important;\n}\n.ast-mobile-header-wrap .ast-mobile-header-content,\n.ast-desktop-header-content,\n.ast-mobile-header-content {\n background-color: #050505 !important;\n background: #050505 !important;\n}\n.ast-mobile-popup-drawer .menu-item a,\n.ast-mobile-header-wrap .ast-mobile-header-content .menu-item a,\n.ast-mobile-header-content .menu-item a {\n color: rgba(255,255,255,.8) !important;\n background: transparent !important;\n}\n.ast-mobile-popup-drawer .menu-item a:hover,\n.ast-mobile-header-content .menu-item a:hover {\n color: #f97316 !important;\n background: rgba(249,115,22,.06) !important;\n}\n/* Toggle-Button (Hamburger) — Farbe */\n.ast-mobile-menu-trigger-minimal,\n.menu-toggle,\n.ast-mobile-menu-trigger {\n color: rgba(255,255,255,.8) !important;\n background: transparent !important;\n border: none !important;\n}\n/* Sub-Menü mobile */\n.ast-mobile-header-content .sub-menu,\n.ast-mobile-popup-drawer .sub-menu {\n background: rgba(255,255,255,.03) !important;\n border: none !important;\n}\n.ast-mobile-header-content .sub-menu .menu-item a,\n.ast-mobile-popup-drawer .sub-menu .menu-item a {\n color: rgba(255,255,255,.6) !important;\n}\n\n/* ══ SITE TITLE / LOGO ══ */\n.ast-site-identity .site-title a,\n.site-title a,\n.site-title {\n color: #fff !important;\n}\n\n/* ══ HEADING FARBEN — Astra-Override ══ */\n/* Astra setzt #1e293b (dunkel navy) auf alle Headings — hier überschreiben */\nh1, h2, h3, h4, h5, h6 {\n color: #fff !important;\n}\n/* Paragraph-Farbe: etwas gedämpft für Lesbarkeit */\np {\n color: rgba(255,255,255,.7) !important;\n}\n/* Inhalts-Links */\n.entry-content a:not(.btn):not(.lk):not(.bo):not(.bgb) {\n color: #58a6ff !important;\n}\n/* Guide-Karten \"Guide lesen →\" Link — explizit orange halten */\n.lk, a.lk { color: #f97316 !important; }\n.lk:hover, a.lk:hover { color: #fb923c !important; }\n\n/* ══ ENTRY-TITLE / SEITEN-ÜBERSCHRIFT VERSTECKEN ══ */\n/* Astra zeigt standardmäßig den WP-Seitentitel über dem Inhalt.\n Da unsere Pages eigene Headings haben, blenden wir den Titel aus. */\n.entry-header { display: none !important; }\n.ast-above-header-bar { display: none !important; }\n/* Falls Astra\'s \"normal title\" aktiv ist: */\n.ast-single-post .entry-header,\n.page .entry-header,\n.ast-page-builder-template .entry-header { display: none !important; }\n\n/* ══ WHATSAPP NAV-BUTTON ══ */\n/* WhatsApp-Link in der Dropdown-Community optisch hervorheben */\n.sub-menu .menu-item a[href*=\"whatsapp\"],\n.sub-menu .menu-item a[href*=\"chat.whatsapp\"] {\n color: #25D366 !important;\n font-weight: 600 !important;\n}\n.sub-menu .menu-item a[href*=\"whatsapp\"]:hover {\n background: rgba(37,211,102,.08) !important;\n color: #25D366 !important;\n}\n\n/* ══ CONTENT BEREICHE ══ */\n.site-content, #content, .content-area,\n.ast-container, .site-main,\n.ast-page-builder-template .site-content {\n background: #050505 !important;\n}\n\n.entry-content, .page-content,\n.ast-page-builder-template .entry-content,\n.single .entry-content, .page .entry-content {\n background: #050505 !important;\n padding: 0 !important;\n color: #fff !important;\n}\n\n/* Post/Seiten-Titel — nicht verdecken */\n.entry-title, .page-title, .ast-archive-title,\nh1.entry-title, h2.entry-title {\n color: #fff !important;\n}\n\n/* ══ ARTICLE BOX (Astra Standard-Karte) ══ */\n.ast-article-post, .ast-article-inner,\n.ast-single-post, article.post, article.page {\n background: #050505 !important;\n box-shadow: none !important;\n border: none !important;\n}\n\n/* ══ SIDEBAR ══ */\n.widget-area, .secondary { display: none !important; }\n\n/* ══ FOOTER ══ */\n.site-footer, #colophon, .footer-widget-area,\n.ast-small-footer, .ast-footer-copyright {\n background: #050505 !important;\n border-top: 1px solid rgba(255,255,255,.07) !important;\n color: rgba(255,255,255,.35) !important;\n}\n.ast-footer-copyright a { color: rgba(255,255,255,.5) !important; }\n.ast-footer-copyright a:hover { color: #f97316 !important; }\n\n/* ══ META (Datum etc.) ══ */\n.entry-meta, .ast-post-format-icon,\n.entry-footer .tags-links { display: none !important; }\n\n/* ══ BREADCRUMBS ══ */\n.ast-breadcrumbs-wrapper { background: #050505 !important; }\n.ast-breadcrumbs, .ast-breadcrumbs a { color: rgba(255,255,255,.4) !important; }\n\n/* ══ SCROLLBAR ══ */\n::-webkit-scrollbar { width: 6px; background: #0a0a0a; }\n::-webkit-scrollbar-thumb { background: rgba(249,115,22,.3); border-radius: 3px; }\n::-webkit-scrollbar-thumb:hover { background: rgba(249,115,22,.6); }\n\n/* ══ SINGLE POST / GUIDE — Abstand reduzieren ══ */\n/* Auf einzelnen Guide-Posts (type=post) weniger Astra-Wrapper-Padding */\n.single .ast-article-post,\n.single article.post {\n padding-top: 0 !important;\n margin-top: 0 !important;\n}\n.single .entry-content,\n.single .page-content {\n margin-top: 0 !important;\n}\n/* Astra single-post container top-padding */\n.single .ast-container,\n.single .site-main {\n padding-top: 0 !important;\n}\n/* Ast-Content-Area extra margin */\n.ast-separate-container .ast-article-post {\n padding: 0 !important;\n margin: 0 !important;\n}\n\n/* ══ DROPDOWN PFEIL — Farbe ══ */\n/* Dropdown-Pfeil in Nav passt zur Schriftfarbe */\n.ast-header-navigation-arrow svg path,\n.ast-menu-toggle svg path {\n fill: rgba(255,255,255,.5) !important;\n}\n\n/* ══════════════════════════════════════\n HUB-SECTION — Guide-Posts\n══════════════════════════════════════ */\n.hub-section {\n background: #050505;\n color: #fff;\n font-family: \"Inter\", -apple-system, sans-serif;\n max-width: 860px;\n margin: 0 auto;\n padding: 60px 48px;\n}\n.hub-section .lead {\n font-size: 1.1rem;\n color: rgba(255,255,255,.55);\n line-height: 1.7;\n margin-bottom: 2rem;\n}\n.hub-section h1 {\n font-size: clamp(2rem,5vw,3.5rem);\n font-weight: 900;\n letter-spacing: -.04em;\n line-height: 1.05;\n margin-bottom: 16px;\n color: #fff;\n}\n.hub-section h2 {\n font-size: 1.3rem;\n font-weight: 700;\n margin: 36px 0 12px;\n color: rgba(255,255,255,.85) !important;\n}\n.hub-section h3 {\n font-size: 1.1rem;\n font-weight: 700;\n margin: 24px 0 8px;\n color: #f97316 !important;\n}\n.hub-section h4 {\n font-size: 1rem;\n font-weight: 700;\n margin: 16px 0 6px;\n color: rgba(255,255,255,.8) !important;\n}\n.hub-section p {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n margin-bottom: 16px;\n}\n.hub-section ul, .hub-section ol {\n padding-left: 0;\n list-style: none;\n margin-bottom: 24px;\n}\n.hub-section ul li {\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n padding: 10px 0 10px 24px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n position: relative;\n}\n.hub-section ul li::before {\n content: \"›\";\n position: absolute;\n left: 0;\n color: #f97316;\n font-size: 18px;\n line-height: 1.6;\n}\n.hub-section ol { counter-reset: ol-steps; }\n.hub-section ol li {\n counter-increment: ol-steps;\n padding: 12px 0 12px 52px;\n border-bottom: 1px solid rgba(255,255,255,.05);\n font-size: 15px;\n color: rgba(255,255,255,.6);\n line-height: 1.8;\n position: relative;\n}\n.hub-section ol li::before {\n content: counter(ol-steps);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 32px;\n height: 32px;\n background: rgba(249,115,22,.1);\n border: 1px solid rgba(249,115,22,.3);\n border-radius: 50%;\n display: grid;\n place-items: center;\n font-size: 13px;\n font-weight: 800;\n color: #f97316;\n}\n.hub-section strong { color: rgba(255,255,255,.9); font-weight: 700; }\n.hub-section em { color: rgba(255,255,255,.4); font-style: italic; }\n.hub-section a { color: #58a6ff; text-decoration: underline; text-underline-offset: 3px; }\n.hub-section a:hover { color: #79b8ff; }\n.hub-section table {\n width: 100%;\n border-collapse: collapse;\n margin: 24px 0;\n font-size: 14px;\n}\n.hub-section table th {\n background: rgba(255,255,255,.06);\n padding: 12px 16px;\n text-align: left;\n font-weight: 700;\n color: rgba(255,255,255,.8);\n border-bottom: 1px solid rgba(255,255,255,.1);\n}\n.hub-section table td {\n padding: 12px 16px;\n border-bottom: 1px solid rgba(255,255,255,.06);\n color: rgba(255,255,255,.6);\n}\n.hub-section table tr:hover td { background: rgba(255,255,255,.02); }\n\n/* ══ RESPONSIVE ══ */\n@media (max-width: 768px) {\n .hub-section { padding: 32px 20px; }\n .hub-section h1 { font-size: 2rem; }\n}\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n\n/* ══ FOOTER FIX — weißer Balken entfernen ══ */\n.site-below-footer-wrap,\n#colophon .ast-builder-grid-row-container,\n.site-below-footer-inner-wrap {\n background: #050505 !important;\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a,\n.site-below-footer-wrap .ast-footer-copyright a {\n color: rgba(255,255,255,.45) !important;\n}\n.site-below-footer-wrap a:hover {\n color: rgba(249,115,22,.9) !important;\n}\n\n/* ══ CODE BOXES — lesbare Darstellung ══ */\n.hub-section code,\n.hub-section kbd {\n display: inline-block;\n background: rgba(249,115,22,.1) !important;\n color: #fb923c !important;\n border: 1px solid rgba(249,115,22,.25) !important;\n border-radius: 6px !important;\n padding: 2px 8px !important;\n font-family: \"JetBrains Mono\", \"Fira Code\", Monaco, Consolas, monospace !important;\n font-size: .875em !important;\n line-height: 1.6 !important;\n word-break: break-all;\n}\n.hub-section pre {\n background: #0d1117 !important;\n border: 1px solid rgba(255,255,255,.1) !important;\n border-radius: 10px !important;\n padding: 18px 20px !important;\n overflow-x: auto !important;\n margin: 16px 0 !important;\n}\n.hub-section pre code {\n background: transparent !important;\n border: none !important;\n padding: 0 !important;\n color: #e2e8f0 !important;\n font-size: .85rem !important;\n word-break: normal;\n}\n\n/* ══════════════════════════════════════\n MOBILE RESPONSIVE — Alle Breakpoints\n══════════════════════════════════════ */\n\n/* ─── Horizontalen Overflow global verhindern ─── */\n/* Astra ändert ast-article-post padding auf Mobile von 3em → 1.5em 1em.\n m3d-wrap margin:-3em würde dann um 2em zu weit ziehen → horizontaler Scroll.\n Fix: margin auf Mobile auf die korrekten Werte anpassen. */\nhtml {\n overflow-x: hidden;\n}\n@media (max-width: 921px) {\n .m3d-wrap {\n margin-top: -1.5em !important;\n margin-left: -1em !important;\n margin-right: -1em !important;\n margin-bottom: -1.5em !important;\n }\n}\n@media (max-width: 544px) {\n /* Auf sehr kleinen Screens Astra-padding ist noch minimal */\n .m3d-wrap {\n margin: -1em -0.75em !important;\n }\n}\n\n/* ─── Tabellen scrollbar machen ─── */\n.hub-section table {\n display: block;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n white-space: nowrap;\n}\n@media (min-width: 600px) {\n .hub-section table { display: table; white-space: normal; overflow-x: visible; }\n}\n\n/* ─── Tablet: 768px ─── */\n@media (max-width: 768px) {\n /* Hub-Section Guides */\n .hub-section { padding: 28px 16px !important; max-width: 100% !important; }\n .hub-section h2 { font-size: 1.15rem; margin: 28px 0 10px; }\n .hub-section h3 { font-size: 1rem; }\n .hub-section p, .hub-section ul li, .hub-section ol li { font-size: 14px; }\n .hub-section table { font-size: 13px; }\n .hub-section table th, .hub-section table td { padding: 9px 12px; }\n\n /* Guide-Karten Grid */\n #gg { grid-template-columns: 1fr 1fr !important; }\n\n /* Models Seite */\n .model-grid { grid-template-columns: 1fr 1fr !important; }\n .models-filter { gap: 6px; }\n .mf-btn { padding: 7px 10px; font-size: 13px; }\n\n /* CTA-Blöcke */\n .cta { padding: 40px 20px !important; }\n .cta h2 { font-size: 1.4rem !important; }\n\n /* Footer */\n .site-below-footer-wrap { text-align: center; }\n\n /* m3d-divider margin */\n .m3d-divider { margin: 0 20px !important; }\n\n /* Astra Hauptcontainer */\n .ast-container { padding-left: 16px !important; padding-right: 16px !important; }\n}\n\n/* ─── Mobil: 600px ─── */\n@media (max-width: 600px) {\n /* Tabellen auf Mobile → scroll */\n .hub-section table { white-space: nowrap; }\n\n /* Guide-Karten: 1 Spalte */\n #gg { grid-template-columns: 1fr !important; }\n\n /* Models: 1 Spalte */\n .model-grid { grid-template-columns: 1fr !important; }\n\n /* Models Filter-Buttons kleiner */\n .models-filter { gap: 5px; }\n .mf-btn { font-size: 12px; padding: 6px 9px; }\n\n /* Model-Card Bild */\n .model-card img { height: 160px; }\n\n /* Platform-Tag */\n .platform-tag { font-size: 10px; padding: 3px 8px; }\n\n /* CTA Buttons stacked */\n .cta div[style*=\"display:flex\"] { flex-direction: column !important; align-items: center !important; }\n .cta .btn { width: 100%; max-width: 280px; text-align: center; }\n .cta { padding: 32px 16px !important; }\n\n /* Hub-section noch kompakter */\n .hub-section { padding: 20px 14px !important; }\n .hub-section h1 { font-size: 1.6rem !important; }\n .hub-section h2 { font-size: 1.05rem !important; }\n .hub-section ol li { padding-left: 44px; }\n\n /* hub-intro */\n .hub-intro { font-size: 14px !important; }\n\n /* warn-box */\n .warn-box { padding: 12px 14px !important; font-size: 13px; }\n}\n\n/* ─── Klein-Mobil: 400px ─── */\n@media (max-width: 400px) {\n .hub-section { padding: 16px 12px !important; }\n .hub-section table th, .hub-section table td { padding: 7px 9px; font-size: 12px; }\n .mf-btn { font-size: 11px; padding: 5px 8px; }\n .model-card img { height: 140px; }\n}\n\n/* ─── Navigation Mobile ─── */\n@media (max-width: 921px) {\n /* Astra Hamburger Button sichtbar halten */\n .ast-mobile-popup-trigger { display: block !important; }\n /* Mobile Menu Hintergrund */\n .ast-mobile-header-wrap { background: rgba(5,5,5,.97) !important; }\n .ast-mobile-header-wrap .menu-item a { \n color: rgba(255,255,255,.8) !important; \n padding: 12px 20px !important;\n border-bottom: 1px solid rgba(255,255,255,.06) !important;\n }\n}\n\n/* ─── Überbreite SVG-Header in Guides fixen ─── */\n@media (max-width: 600px) {\n .hub-section svg[viewBox] { border-radius: 8px; }\n}\n\n/* ─── Touch-Targets: Minimum 44px ─── */\n@media (max-width: 921px) {\n .btn, .lk, .bo, .bgb,\n .m3d-cta-a, .m3d-cta-b, .m3d-wa-btn,\n #gfb button, .mf-btn {\n min-height: 44px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n /* Nav-Links ebenfalls touch-freundlich */\n .ast-mobile-header-wrap .menu-item a {\n min-height: 44px;\n display: flex !important;\n align-items: center;\n }\n}\n\n/* ─── Bilder in hub-section: nie overflow ─── */\n.hub-section img,\n.hub-section svg {\n max-width: 100%;\n height: auto;\n}\n\n/* ─── Pre/Code Blöcke: horizontaler Scroll statt Overflow ─── */\n.hub-section pre {\n max-width: 100%;\n white-space: pre;\n word-wrap: normal;\n}\n\n/* ─── Inline-Style overflow-fix für Homepage-Sections ─── */\n@media (max-width: 600px) {\n .m3d-featured, .m3d-section, .m3d-community,\n .m3d-footer-cta, .m3d-bento {\n overflow-x: hidden;\n }\n /* model-body min-height auf Mobile entfernen — spart Platz */\n .model-body p { min-height: unset !important; }\n}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-25 19:10:06','2026-03-25 18:10:06','',29,'http://87.106.117.190/?p=489',0,'revision','',0), +(490,0,'2026-03-26 07:10:04','2026-03-26 06:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 560 Likes und 1030 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2686 Likes und 6876 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1583 Likes und 2619 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 1017 Likes und 1403 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 1178 Likes und 3211 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Bambulab
Sitemap Pick

Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Z

Z Motor Cover Blv Mgn Cube

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Low

Low Poly Bowl Trinket Tray

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"No

No Smoking Table

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Ams

Ams Silica Holder Full Drilled

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-26 07:10:04','2026-03-26 06:10:04','',10,'http://87.106.117.190/?p=490',0,'revision','',0), +(491,0,'2026-03-26 07:10:05','2026-03-26 06:10:05','@import url(\'https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700;900&family=Exo+2:wght@300;400;500;600;700&display=swap\');\n\n/* ═══════════════════════════════════════\n V2 DESIGN SYSTEM — GLOBAL OVERRIDES\n Accent: #00AE42 (Bambu Green)\n ═══════════════════════════════════════ */\n\n:root {\n --v2-bg: #07090F;\n --v2-s1: #0B0E1A;\n --v2-s2: #101525;\n --v2-bd: #1A2140;\n --v2-txt: #DCE4F5;\n --v2-muted: #5A6A90;\n --v2-acc: #00AE42;\n --v2-acc-dim: rgba(0,174,66,0.1);\n --v2-f-hud: \'Orbitron\', monospace;\n --v2-f-body: \'Exo 2\', sans-serif;\n}\n\n/* ── ASTRA LAYOUT RESET ─────────────────\n Remove ALL Astra spacing that breaks\n full-bleed v2 layouts.\n ─────────────────────────────────────── */\n\nhtml, body {\n background: var(--v2-bg) !important;\n overflow-x: hidden;\n}\n\n/* Hide Astra page title above our content */\n.entry-header,\n.entry-header .entry-title,\nh1.entry-title,\n.ast-page-title {\n display: none !important;\n}\n\n/* Kill all Astra container padding/margin */\n#main.site-main,\n.site-main,\n#primary,\n.content-area,\n#content,\n.ast-container,\n.ast-separate-container,\n.ast-separate-container .ast-article-single,\narticle.ast-article-single,\narticle.page,\narticle.post,\n.entry-content,\n.ast-separate-container .entry-content,\ndiv[data-ast-blocks-layout] {\n padding: 0 !important;\n margin: 0 !important;\n max-width: 100% !important;\n width: 100% !important;\n background: transparent !important;\n box-shadow: none !important;\n}\n\n/* Remove Astra header & footer entirely */\n#masthead,\n.site-header,\n.main-header-bar,\n.ast-header-sticker,\n.header-main-layout-1,\n#colophon,\n.site-footer,\n.ast-footer-overlay,\n.footer-widget-area {\n display: none !important;\n}\n\n/* Remove WP admin bar space */\n#wpadminbar { position: fixed !important; }\nhtml.admin-bar .v2-nav { top: 32px !important; }\n@media screen and (max-width: 782px) {\n html.admin-bar .v2-nav { top: 46px !important; }\n}\n\n/* Breadcrumbs, post-nav, comments */\n.ast-breadcrumbs-wrapper,\n.post-navigation,\n.comments-area,\n.ast-comment-formwrap,\n.ast-related-posts-section,\n.related-posts-inner {\n display: none !important;\n}\n\n/* ── V2 BASE ────────────────────────────── */\n\n.v2, .m3d-wrap {\n font-family: var(--v2-f-body) !important;\n background: var(--v2-bg) !important;\n color: var(--v2-txt) !important;\n}\n\n/* Negative margin trick for old pages that\n relied on m3d-wrap\'s -3em offset */\n.m3d-wrap {\n margin: 0 !important;\n overflow-x: hidden;\n}\n\n/* ── ARTICLE HEADERS (guide pages) ──────── */\n\n.gh, .m3d-ph {\n background: var(--v2-bg) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gh::before, .m3d-ph::before {\n background: radial-gradient(\n ellipse 70% 60% at 50% 0%,\n rgba(0,174,66,0.08), transparent 60%\n ) !important;\n}\n.gh h1, .m3d-ph h1 {\n font-family: var(--v2-f-hud) !important;\n font-weight: 900 !important;\n font-size: clamp(2rem,5vw,3.5rem) !important;\n letter-spacing: 0.04em !important;\n color: var(--v2-txt) !important;\n line-height: 0.95 !important;\n}\n.gh p, .m3d-ph p {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n}\n\n/* ── EYEBROW / LABELS ───────────────────── */\n\n.ew, .sl {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n letter-spacing: 0.18em !important;\n font-size: 0.6rem !important;\n font-weight: 700 !important;\n text-transform: uppercase !important;\n display: inline-flex !important;\n align-items: center !important;\n}\n/* Replace the old line-decoration with brackets */\n.ew::before {\n content: \'[\' !important;\n display: inline !important;\n width: auto !important;\n height: auto !important;\n background: none !important;\n border: none !important;\n opacity: 0.6;\n}\n.ew::after {\n content: \']\';\n opacity: 0.6;\n}\n\n/* ── CONTENT SECTIONS ───────────────────── */\n\n.gsec, .sec {\n padding: 2.5rem 48px !important;\n}\n.gsec h2, .sec h2, .sh {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n font-size: 1.3rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.04em !important;\n margin: 2.5rem 0 1rem !important;\n}\n.gsec h2:first-child, .sec h2:first-child { margin-top: 0 !important; }\n.gsec h3, .sec h3 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n font-size: 0.85rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.06em !important;\n}\n.gsec p, .sec p {\n font-size: 0.9rem !important;\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n line-height: 1.8 !important;\n}\n.gsec strong, .sec strong { color: var(--v2-txt) !important; }\n.gsec a, .sec a { color: var(--v2-acc) !important; }\n\n/* ── LISTS ──────────────────────────────── */\n\n.gsec ul li, .sec ul li {\n color: var(--v2-muted) !important;\n font-size: 0.88rem !important;\n font-weight: 300 !important;\n border-bottom-color: var(--v2-bd) !important;\n}\n.gsec ul li::before, .sec ul li::before {\n content: \'>\' !important;\n color: var(--v2-acc) !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.8rem !important;\n}\n.gsec ol li, .sec ol li {\n color: var(--v2-muted) !important;\n font-size: 0.88rem !important;\n font-weight: 300 !important;\n border-bottom-color: var(--v2-bd) !important;\n}\n.gsec ol li::before, .sec ol li::before {\n background: var(--v2-acc-dim) !important;\n border: 1px solid rgba(0,174,66,0.3) !important;\n border-radius: 0 !important;\n color: var(--v2-acc) !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.6rem !important;\n}\n\n/* ── TABLES ─────────────────────────────── */\n\n.gsec table th, .sec table th {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.1em !important;\n text-transform: uppercase !important;\n background: var(--v2-s1) !important;\n color: var(--v2-acc) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gsec table td, .sec table td {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gsec table tr:hover td, .sec table tr:hover td {\n background: var(--v2-s1) !important;\n}\n\n/* ── CALLOUT BOXES ──────────────────────── */\n\n.tip {\n background: rgba(0,174,66,0.06) !important;\n border: 1px solid rgba(0,174,66,0.2) !important;\n border-radius: 0 !important;\n padding: 1.2rem 1.5rem !important;\n}\n.tip strong { color: var(--v2-acc) !important; }\n.info {\n background: rgba(88,166,255,0.06) !important;\n border: 1px solid rgba(88,166,255,0.2) !important;\n border-radius: 0 !important;\n padding: 1.2rem 1.5rem !important;\n}\n.info strong { color: #58a6ff !important; }\n\n/* ── BUTTONS ────────────────────────────── */\n\n.btn { border-radius: 0 !important; font-family: var(--v2-f-hud) !important; }\n.bo {\n background: var(--v2-acc) !important;\n color: #000 !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.14em !important;\n text-transform: uppercase !important;\n}\n.bo:hover { opacity: 0.85 !important; transform: none !important; }\n.bgb {\n border: 1px solid var(--v2-bd) !important;\n color: var(--v2-muted) !important;\n background: transparent !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.14em !important;\n text-transform: uppercase !important;\n}\n.bgb:hover {\n border-color: var(--v2-acc) !important;\n color: var(--v2-acc) !important;\n}\n\n/* ── CARDS ──────────────────────────────── */\n\n.cd {\n background: var(--v2-bg) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n transition: background 0.15s !important;\n}\n.cd:hover {\n background: var(--v2-s1) !important;\n border-color: rgba(0,174,66,0.3) !important;\n transform: none !important;\n}\n.cd::before {\n background: var(--v2-acc) !important;\n border-radius: 0 !important;\n}\n.cd h3 { color: var(--v2-txt) !important; }\n.cd p { color: var(--v2-muted) !important; }\n\n/* Tags */\n.tg, .to, .tg2, .tb, .tp, .tm { border-radius: 0 !important; }\n.to {\n background: var(--v2-acc-dim) !important;\n color: var(--v2-acc) !important;\n border: 1px solid rgba(0,174,66,0.25) !important;\n}\n.lk {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.1em !important;\n text-transform: uppercase !important;\n}\n\n/* ── FILTER BUTTONS (Guides page) ───────── */\n\n#gfb button {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.52rem !important;\n letter-spacing: 0.12em !important;\n text-transform: uppercase !important;\n border-radius: 0 !important;\n background: var(--v2-s2) !important;\n color: var(--v2-muted) !important;\n border: 1px solid var(--v2-bd) !important;\n padding: 0.5rem 1rem !important;\n}\n#gfb button.active {\n background: var(--v2-acc-dim) !important;\n color: var(--v2-acc) !important;\n border-color: var(--v2-acc) !important;\n}\n\n/* ── CTA SECTION ────────────────────────── */\n\n.cta {\n background: none !important;\n border-top: 1px solid var(--v2-bd) !important;\n}\n.cta::before { display: none !important; }\n.cta h2 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n font-size: 1.5rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.04em !important;\n}\n.cta p { color: var(--v2-muted) !important; }\n.dv {\n height: 1px !important;\n background: var(--v2-bd) !important;\n position: relative;\n}\n\n/* ── RECHNER TOOL ───────────────────────── */\n\n.cw {\n background: var(--v2-s1) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n}\n.fld label {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.5rem !important;\n letter-spacing: 0.12em !important;\n color: var(--v2-muted) !important;\n}\n.fld input {\n background: var(--v2-s2) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n color: var(--v2-txt) !important;\n font-family: var(--v2-f-hud) !important;\n}\n.fld input:focus { border-color: var(--v2-acc) !important; }\n.cbtn {\n background: var(--v2-acc) !important;\n color: #000 !important;\n border-radius: 0 !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.6rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.14em !important;\n}\n.cbtn:hover { opacity: 0.85 !important; transform: none !important; }\n.cr {\n background: var(--v2-acc-dim) !important;\n border: 1px solid rgba(0,174,66,0.2) !important;\n border-radius: 0 !important;\n}\n.cr-val {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n}\n.cr-label { font-family: var(--v2-f-hud) !important; color: var(--v2-muted) !important; }\n.sl, .sh { font-family: var(--v2-f-hud) !important; }\n.sh { color: var(--v2-txt) !important; }\n\n/* ── HUB-SECTION (simple pages) ─────────── */\n\n.hub-section {\n background: var(--v2-bg) !important;\n color: var(--v2-txt) !important;\n font-family: var(--v2-f-body) !important;\n padding: 2rem !important;\n margin: 0 !important;\n}\n.hub-section h1, .hub-section h2, .hub-section h3 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n}\n.hub-section p, .hub-section li {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n}\n.hub-section a { color: var(--v2-acc) !important; }\n.hub-section th {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n background: var(--v2-s1) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.hub-section td {\n color: var(--v2-muted) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n\n/* ── RESPONSIVE ─────────────────────────── */\n\n@media (max-width: 600px) {\n .gsec, .sec { padding: 1.5rem 1rem !important; }\n}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-26 07:10:05','2026-03-26 06:10:05','',29,'http://87.106.117.190/?p=491',0,'revision','',0), +(492,0,'2026-03-26 10:15:03','2026-03-26 09:15:03','\n\n\n\n\n
\n\\n
\\n

Warping vermeiden

\\n

First Layer, Bett-Haftung, Brim und Geh\\u00e4use sinnvoll einsetzen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n\n
\n\n\n','Guide #1: Warping vermeiden (2026-03-26)','','publish','closed','closed','','guide-1-warping-vermeiden-2026-03-26','','','2026-03-27 07:15:56','2026-03-26 09:15:03','',0,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-26/',0,'post','',0), +(493,0,'2026-03-26 10:15:06','2026-03-26 09:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 26.03.2026 09:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-26 10:15:06','2026-03-26 09:15:06','',9,'http://87.106.117.190/?p=493',0,'revision','',0), +(494,0,'2026-03-26 13:10:04','2026-03-26 12:10:04','

Models

Top 5 je Kategorie (Printables + MakerWorld) mit Bild, Kurzbeschreibung und Direktlink.

\n
\n

Top 5 Printables (Auto-Update)

\"Stargate

Stargate with a working Iris

Beliebtes Community-Modell mit 567 Likes und 1055 Downloads.

Zum Modell
\n
\"Folding
Most Downloaded Community Favorite

Folding Wall Hook

Beliebtes Community-Modell mit 2702 Likes und 6948 Downloads.

Zum Modell
\n
\"Full

Full Desk Organizer & Monitor Stand + Stackable Drawers

Beliebtes Community-Modell mit 1597 Likes und 2650 Downloads.

Zum Modell
\n
\"Any

Any Box Generator

Beliebtes Community-Modell mit 1032 Likes und 1434 Downloads.

Zum Modell
\n
\"Tiny

Tiny Table Vise

Beliebtes Community-Modell mit 1195 Likes und 3259 Downloads.

Zum Modell
\n

Top 5 MakerWorld

\"Bambulab
Sitemap Pick

Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Z

Z Motor Cover Blv Mgn Cube

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Low

Low Poly Bowl Trinket Tray

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"No

No Smoking Table

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n
\"Ams

Ams Silica Holder Full Drilled

Beliebtes Modell auf MakerWorld - direkt öffnen für Details und Download.

Bei MakerWorld öffnen
\n

Zum Model-Archiv

MakerWorld wird über Sitemap-Model-Links mit Vorschaubildern aktualisiert.

\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-26 13:10:04','2026-03-26 12:10:04','',10,'http://87.106.117.190/?p=494',0,'revision','',0), +(495,0,'2026-03-26 13:10:05','2026-03-26 12:10:05','@import url(\'https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700;900&family=Exo+2:wght@300;400;500;600;700&display=swap\');\n\n/* ═══════════════════════════════════════\n V2 DESIGN SYSTEM — GLOBAL OVERRIDES\n Accent: #00AE42 (Bambu Green)\n ═══════════════════════════════════════ */\n\n:root {\n --v2-bg: #07090F;\n --v2-s1: #0B0E1A;\n --v2-s2: #101525;\n --v2-bd: #1A2140;\n --v2-txt: #DCE4F5;\n --v2-muted: #5A6A90;\n --v2-acc: #00AE42;\n --v2-acc-dim: rgba(0,174,66,0.1);\n --v2-f-hud: \'Orbitron\', monospace;\n --v2-f-body: \'Exo 2\', sans-serif;\n}\n\n/* ── ASTRA LAYOUT RESET ─────────────────\n Remove ALL Astra spacing that breaks\n full-bleed v2 layouts.\n ─────────────────────────────────────── */\n\nhtml, body {\n background: var(--v2-bg) !important;\n overflow-x: hidden;\n}\n\n/* Hide Astra page title above our content */\n.entry-header,\n.entry-header .entry-title,\nh1.entry-title,\n.ast-page-title {\n display: none !important;\n}\n\n/* Kill all Astra container padding/margin */\n#main.site-main,\n.site-main,\n#primary,\n.content-area,\n#content,\n.ast-container,\n.ast-separate-container,\n.ast-separate-container .ast-article-single,\narticle.ast-article-single,\narticle.page,\narticle.post,\n.entry-content,\n.ast-separate-container .entry-content,\ndiv[data-ast-blocks-layout] {\n padding: 0 !important;\n margin: 0 !important;\n max-width: 100% !important;\n width: 100% !important;\n background: transparent !important;\n box-shadow: none !important;\n}\n\n/* Remove Astra header & footer entirely */\n#masthead,\n.site-header,\n.main-header-bar,\n.ast-header-sticker,\n.header-main-layout-1,\n#colophon,\n.site-footer,\n.ast-footer-overlay,\n.footer-widget-area {\n display: none !important;\n}\n\n/* Remove WP admin bar space */\n#wpadminbar { position: fixed !important; }\nhtml.admin-bar .v2-nav { top: 32px !important; }\n@media screen and (max-width: 782px) {\n html.admin-bar .v2-nav { top: 46px !important; }\n}\n\n/* Breadcrumbs, post-nav, comments */\n.ast-breadcrumbs-wrapper,\n.post-navigation,\n.comments-area,\n.ast-comment-formwrap,\n.ast-related-posts-section,\n.related-posts-inner {\n display: none !important;\n}\n\n/* ── V2 BASE ────────────────────────────── */\n\n.v2, .m3d-wrap {\n font-family: var(--v2-f-body) !important;\n background: var(--v2-bg) !important;\n color: var(--v2-txt) !important;\n}\n\n/* Negative margin trick for old pages that\n relied on m3d-wrap\'s -3em offset */\n.m3d-wrap {\n margin: 0 !important;\n overflow-x: hidden;\n}\n\n/* ── ARTICLE HEADERS (guide pages) ──────── */\n\n.gh, .m3d-ph {\n background: var(--v2-bg) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gh::before, .m3d-ph::before {\n background: radial-gradient(\n ellipse 70% 60% at 50% 0%,\n rgba(0,174,66,0.08), transparent 60%\n ) !important;\n}\n.gh h1, .m3d-ph h1 {\n font-family: var(--v2-f-hud) !important;\n font-weight: 900 !important;\n font-size: clamp(2rem,5vw,3.5rem) !important;\n letter-spacing: 0.04em !important;\n color: var(--v2-txt) !important;\n line-height: 0.95 !important;\n}\n.gh p, .m3d-ph p {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n}\n\n/* ── EYEBROW / LABELS ───────────────────── */\n\n.ew, .sl {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n letter-spacing: 0.18em !important;\n font-size: 0.6rem !important;\n font-weight: 700 !important;\n text-transform: uppercase !important;\n display: inline-flex !important;\n align-items: center !important;\n}\n/* Replace the old line-decoration with brackets */\n.ew::before {\n content: \'[\' !important;\n display: inline !important;\n width: auto !important;\n height: auto !important;\n background: none !important;\n border: none !important;\n opacity: 0.6;\n}\n.ew::after {\n content: \']\';\n opacity: 0.6;\n}\n\n/* ── CONTENT SECTIONS ───────────────────── */\n\n.gsec, .sec {\n padding: 2.5rem 48px !important;\n}\n.gsec h2, .sec h2, .sh {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n font-size: 1.3rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.04em !important;\n margin: 2.5rem 0 1rem !important;\n}\n.gsec h2:first-child, .sec h2:first-child { margin-top: 0 !important; }\n.gsec h3, .sec h3 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n font-size: 0.85rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.06em !important;\n}\n.gsec p, .sec p {\n font-size: 0.9rem !important;\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n line-height: 1.8 !important;\n}\n.gsec strong, .sec strong { color: var(--v2-txt) !important; }\n.gsec a, .sec a { color: var(--v2-acc) !important; }\n\n/* ── LISTS ──────────────────────────────── */\n\n.gsec ul li, .sec ul li {\n color: var(--v2-muted) !important;\n font-size: 0.88rem !important;\n font-weight: 300 !important;\n border-bottom-color: var(--v2-bd) !important;\n}\n.gsec ul li::before, .sec ul li::before {\n content: \'>\' !important;\n color: var(--v2-acc) !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.8rem !important;\n}\n.gsec ol li, .sec ol li {\n color: var(--v2-muted) !important;\n font-size: 0.88rem !important;\n font-weight: 300 !important;\n border-bottom-color: var(--v2-bd) !important;\n}\n.gsec ol li::before, .sec ol li::before {\n background: var(--v2-acc-dim) !important;\n border: 1px solid rgba(0,174,66,0.3) !important;\n border-radius: 0 !important;\n color: var(--v2-acc) !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.6rem !important;\n}\n\n/* ── TABLES ─────────────────────────────── */\n\n.gsec table th, .sec table th {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.1em !important;\n text-transform: uppercase !important;\n background: var(--v2-s1) !important;\n color: var(--v2-acc) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gsec table td, .sec table td {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.gsec table tr:hover td, .sec table tr:hover td {\n background: var(--v2-s1) !important;\n}\n\n/* ── CALLOUT BOXES ──────────────────────── */\n\n.tip {\n background: rgba(0,174,66,0.06) !important;\n border: 1px solid rgba(0,174,66,0.2) !important;\n border-radius: 0 !important;\n padding: 1.2rem 1.5rem !important;\n}\n.tip strong { color: var(--v2-acc) !important; }\n.info {\n background: rgba(88,166,255,0.06) !important;\n border: 1px solid rgba(88,166,255,0.2) !important;\n border-radius: 0 !important;\n padding: 1.2rem 1.5rem !important;\n}\n.info strong { color: #58a6ff !important; }\n\n/* ── BUTTONS ────────────────────────────── */\n\n.btn { border-radius: 0 !important; font-family: var(--v2-f-hud) !important; }\n.bo {\n background: var(--v2-acc) !important;\n color: #000 !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.14em !important;\n text-transform: uppercase !important;\n}\n.bo:hover { opacity: 0.85 !important; transform: none !important; }\n.bgb {\n border: 1px solid var(--v2-bd) !important;\n color: var(--v2-muted) !important;\n background: transparent !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.14em !important;\n text-transform: uppercase !important;\n}\n.bgb:hover {\n border-color: var(--v2-acc) !important;\n color: var(--v2-acc) !important;\n}\n\n/* ── CARDS ──────────────────────────────── */\n\n.cd {\n background: var(--v2-bg) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n transition: background 0.15s !important;\n}\n.cd:hover {\n background: var(--v2-s1) !important;\n border-color: rgba(0,174,66,0.3) !important;\n transform: none !important;\n}\n.cd::before {\n background: var(--v2-acc) !important;\n border-radius: 0 !important;\n}\n.cd h3 { color: var(--v2-txt) !important; }\n.cd p { color: var(--v2-muted) !important; }\n\n/* Tags */\n.tg, .to, .tg2, .tb, .tp, .tm { border-radius: 0 !important; }\n.to {\n background: var(--v2-acc-dim) !important;\n color: var(--v2-acc) !important;\n border: 1px solid rgba(0,174,66,0.25) !important;\n}\n.lk {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n font-size: 0.55rem !important;\n letter-spacing: 0.1em !important;\n text-transform: uppercase !important;\n}\n\n/* ── FILTER BUTTONS (Guides page) ───────── */\n\n#gfb button {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.52rem !important;\n letter-spacing: 0.12em !important;\n text-transform: uppercase !important;\n border-radius: 0 !important;\n background: var(--v2-s2) !important;\n color: var(--v2-muted) !important;\n border: 1px solid var(--v2-bd) !important;\n padding: 0.5rem 1rem !important;\n}\n#gfb button.active {\n background: var(--v2-acc-dim) !important;\n color: var(--v2-acc) !important;\n border-color: var(--v2-acc) !important;\n}\n\n/* ── CTA SECTION ────────────────────────── */\n\n.cta {\n background: none !important;\n border-top: 1px solid var(--v2-bd) !important;\n}\n.cta::before { display: none !important; }\n.cta h2 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n font-size: 1.5rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.04em !important;\n}\n.cta p { color: var(--v2-muted) !important; }\n.dv {\n height: 1px !important;\n background: var(--v2-bd) !important;\n position: relative;\n}\n\n/* ── RECHNER TOOL ───────────────────────── */\n\n.cw {\n background: var(--v2-s1) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n}\n.fld label {\n font-family: var(--v2-f-hud) !important;\n font-size: 0.5rem !important;\n letter-spacing: 0.12em !important;\n color: var(--v2-muted) !important;\n}\n.fld input {\n background: var(--v2-s2) !important;\n border: 1px solid var(--v2-bd) !important;\n border-radius: 0 !important;\n color: var(--v2-txt) !important;\n font-family: var(--v2-f-hud) !important;\n}\n.fld input:focus { border-color: var(--v2-acc) !important; }\n.cbtn {\n background: var(--v2-acc) !important;\n color: #000 !important;\n border-radius: 0 !important;\n font-family: var(--v2-f-hud) !important;\n font-size: 0.6rem !important;\n font-weight: 700 !important;\n letter-spacing: 0.14em !important;\n}\n.cbtn:hover { opacity: 0.85 !important; transform: none !important; }\n.cr {\n background: var(--v2-acc-dim) !important;\n border: 1px solid rgba(0,174,66,0.2) !important;\n border-radius: 0 !important;\n}\n.cr-val {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n}\n.cr-label { font-family: var(--v2-f-hud) !important; color: var(--v2-muted) !important; }\n.sl, .sh { font-family: var(--v2-f-hud) !important; }\n.sh { color: var(--v2-txt) !important; }\n\n/* ── HUB-SECTION (simple pages) ─────────── */\n\n.hub-section {\n background: var(--v2-bg) !important;\n color: var(--v2-txt) !important;\n font-family: var(--v2-f-body) !important;\n padding: 2rem !important;\n margin: 0 !important;\n}\n.hub-section h1, .hub-section h2, .hub-section h3 {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-txt) !important;\n}\n.hub-section p, .hub-section li {\n color: var(--v2-muted) !important;\n font-weight: 300 !important;\n}\n.hub-section a { color: var(--v2-acc) !important; }\n.hub-section th {\n font-family: var(--v2-f-hud) !important;\n color: var(--v2-acc) !important;\n background: var(--v2-s1) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n.hub-section td {\n color: var(--v2-muted) !important;\n border-bottom: 1px solid var(--v2-bd) !important;\n}\n\n/* ── RESPONSIVE ─────────────────────────── */\n\n@media (max-width: 600px) {\n .gsec, .sec { padding: 1.5rem 1rem !important; }\n}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n\n.models-filter{display:flex;gap:8px;flex-wrap:wrap}.mf-btn{background:#1d2940;color:#d9e8ff;border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700}.mf-btn.active{background:linear-gradient(90deg,#00d2ff,#ff6a00);color:#0b1020;border:none}.model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.model-card{background:linear-gradient(180deg,#131a28,#182136);border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.25)}.model-card img{width:100%;height:170px;object-fit:cover;display:block}.model-card.no-image .mw-placeholder{height:170px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2540,#2a1f4a);color:#c9d8ff;font-weight:800}.model-body{padding:12px}.model-body h3{font-size:1rem;margin:0 0 8px;color:#f3f6fc}.model-body p{font-size:.92rem;color:#c8d3e6;min-height:54px}.model-body a{font-weight:700;color:#6fdfff;text-decoration:none}.m-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.m-badge{font-size:.72rem;padding:4px 8px;border-radius:999px;font-weight:700}.m-badge.hot{background:rgba(255,106,0,.2);color:#ffb07a;border:1px solid rgba(255,106,0,.35)}.m-badge.fav{background:rgba(0,210,255,.2);color:#9defff;border:1px solid rgba(0,210,255,.35)}.m-badge.info{background:rgba(124,102,255,.2);color:#c8c0ff;border:1px solid rgba(124,102,255,.35)}\n','astra','','inherit','closed','closed','','29-revision-v1','','','2026-03-26 13:10:05','2026-03-26 12:10:05','',29,'http://87.106.117.190/?p=495',0,'revision','',0), +(496,0,'2026-03-26 13:15:22','2026-03-26 12:15:22','\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
567 Likes · 1055 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_02 // OTHER\n
Folding Wall Hook
\n
2702 Likes · 6948 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Full\n
\n P_03 // FUNCTIONAL\n
Full Desk Organizer & Monitor Stand + Stackable Drawers
\n
1597 Likes · 2650 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_04 // OTHER\n
Any Box Generator
\n
1033 Likes · 1434 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Tiny\n
\n P_05 // OTHER\n
Tiny Table Vise
\n
1195 Likes · 3259 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"Bambulab\n
\n MW_01 // MAKERWORLD\n
Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Z\n
\n MW_02 // MAKERWORLD\n
Z Motor Cover Blv Mgn Cube
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Low\n
\n MW_03 // MAKERWORLD\n
Low Poly Bowl Trinket Tray
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"No\n
\n MW_04 // MAKERWORLD\n
No Smoking Table
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ams\n
\n MW_05 // MAKERWORLD\n
Ams Silica Holder Full Drilled
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-26 13:15:22','2026-03-26 12:15:22','',10,'http://87.106.117.190/?p=496',0,'revision','',0), +(497,0,'2026-03-26 13:15:22','2026-03-26 12:15:22','\n\n\n\n\n
\n
\n
\n MODEL_ARCHIVE\n

ARCHIV.

\n

Historie der wöchentlichen Top-Modelle.

\n
\n
\n\n
\n
2026-W13
Printables: Stargate with a working Iris
Printables: Folding Wall Hook
Printables: Full Desk Organizer & Monitor Stand + Stackable Drawers
\n
2026-W12
Printables: Wall Hook - Invisible Mounting
Printables: Folding Wall Hook
Printables: Dragon Egg Twist Fidget
\n
2026-W11
Printables: Wall Hook - Invisible Mounting
Printables: Folding Wall Hook
Printables: Parcel Opener – Safe, Durable & Blade-Free
\n
2026-W10
Printables: Flexi Baby Snake - Print in place - No Supports
Printables: Parcel Opener – Safe, Durable & Blade-Free
Printables: Filament Storage 2026
\n\n
\n\n\n','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-26 13:15:22','2026-03-26 12:15:22','',72,'http://87.106.117.190/?p=497',0,'revision','',0), +(498,0,'2026-03-26 13:46:24','2026-03-26 12:46:24','\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
567 Likes · 1056 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_02 // OTHER\n
Folding Wall Hook
\n
2703 Likes · 6952 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Full\n
\n P_03 // FUNCTIONAL\n
Full Desk Organizer & Monitor Stand + Stackable Drawers
\n
1597 Likes · 2653 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_04 // OTHER\n
Any Box Generator
\n
1035 Likes · 1440 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Tiny\n
\n P_05 // OTHER\n
Tiny Table Vise
\n
1196 Likes · 3268 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"Bambulab\n
\n MW_01 // MAKERWORLD\n
Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Z\n
\n MW_02 // MAKERWORLD\n
Z Motor Cover Blv Mgn Cube
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Low\n
\n MW_03 // MAKERWORLD\n
Low Poly Bowl Trinket Tray
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"No\n
\n MW_04 // MAKERWORLD\n
No Smoking Table
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ams\n
\n MW_05 // MAKERWORLD\n
Ams Silica Holder Full Drilled
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-26 13:46:24','2026-03-26 12:46:24','',10,'http://87.106.117.190/?p=498',0,'revision','',0), +(499,0,'2026-03-26 18:15:03','2026-03-26 17:15:03','\n\n\n\n\n
\n\\n
\\n

PETG ohne Frust

\\n

Startwerte, typische Fehler und schnelle Korrekturen.

\\n

Schnellstart

\\n
    \\n
  • Mit Standardprofil starten und nur 1\\u20132 Parameter pro Test \\u00e4ndern.
  • \\n
  • Kurzen Testdruck verwenden (Kalibrierw\\u00fcrfel / kleines Funktionsteil).
  • \\n
  • Ergebnisse dokumentieren (Temperatur, Speed, Retraction, Material).
  • \\n
\\n

Praxis-Workflow

\\n
    \\n
  1. Baseline-Druck mit aktuellem Profil.
  2. \\n
  3. Ein Problem priorisieren (z. B. Stringing, Warping, Ma\\u00dfhaltigkeit).
  4. \\n
  5. Gezielte Korrektur in kleinen Schritten.
  6. \\n
  7. Erneut testen und mit Baseline vergleichen.
  8. \\n
\\n

Typische Fehler

\\n
    \\n
  • Zu viele Parameter gleichzeitig ver\\u00e4ndern.
  • \\n
  • Filamentzustand ignorieren (Feuchtigkeit).
  • \\n
  • Ungeeignete Testobjekte nutzen.
  • \\n
\\n

Mehr Inhalte folgen laufend. Dieser Guide ist Teil der t\\u00e4glichen Wissens-Serie.

\\n
\\n\n
\n\n\n','Guide #2: PETG ohne Frust (2026-03-26)','','publish','closed','closed','','guide-2-petg-ohne-frust-2026-03-26','','','2026-03-27 07:15:56','2026-03-26 17:15:03','',0,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-26/',0,'post','',0), +(500,0,'2026-03-26 18:15:06','2026-03-26 17:15:06','\\n
\\n

News

\\n

Aktuelle Neuigkeiten rund um 3D-Druck, inklusive Release Notes und Patchnotes zu wichtigen Firmware-/Slicer-Projekten.

\\n

Aktuelle Release Notes (automatisch aktualisiert)

\\n\\n

Letztes Update: 26.03.2026 17:15

\\n
\\n','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-26 18:15:06','2026-03-26 17:15:06','',9,'http://87.106.117.190/?p=500',0,'revision','',0); +INSERT INTO `wp_posts` VALUES +(501,0,'2026-03-26 19:10:05','2026-03-26 18:10:05','\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
583 Likes · 1081 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_02 // OTHER\n
Folding Wall Hook
\n
2732 Likes · 7037 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Full\n
\n P_03 // FUNCTIONAL\n
Full Desk Organizer & Monitor Stand + Stackable Drawers
\n
1619 Likes · 2685 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_04 // OTHER\n
Any Box Generator
\n
1054 Likes · 1486 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Tiny\n
\n P_05 // OTHER\n
Tiny Table Vise
\n
1213 Likes · 3333 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"Bambulab\n
\n MW_01 // MAKERWORLD\n
Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Z\n
\n MW_02 // MAKERWORLD\n
Z Motor Cover Blv Mgn Cube
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Low\n
\n MW_03 // MAKERWORLD\n
Low Poly Bowl Trinket Tray
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"No\n
\n MW_04 // MAKERWORLD\n
No Smoking Table
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ams\n
\n MW_05 // MAKERWORLD\n
Ams Silica Holder Full Drilled
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-26 19:10:05','2026-03-26 18:10:05','',10,'http://87.106.117.190/?p=501',0,'revision','',0), +(502,0,'2026-03-26 21:17:33','2026-03-26 20:17:33','','Trends & News','','inherit','closed','closed','','9-revision-v1','','','2026-03-26 21:17:33','2026-03-26 20:17:33','',9,'http://87.106.117.190/?p=502',0,'revision','',0), +(503,0,'2026-03-26 21:17:34','2026-03-26 20:17:34','','Ressourcen & Tools','','inherit','closed','closed','','11-revision-v1','','','2026-03-26 21:17:34','2026-03-26 20:17:34','',11,'http://87.106.117.190/?p=503',0,'revision','',0), +(504,0,'2026-03-26 21:42:06','2026-03-26 20:42:06','\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
588 Likes · 1093 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_02 // OTHER\n
Folding Wall Hook
\n
2746 Likes · 7084 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Full\n
\n P_03 // FUNCTIONAL\n
Full Desk Organizer & Monitor Stand + Stackable Drawers
\n
1630 Likes · 2704 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_04 // OTHER\n
Any Box Generator
\n
1063 Likes · 1495 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Tiny\n
\n P_05 // OTHER\n
Tiny Table Vise
\n
1221 Likes · 3366 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"Bambulab\n
\n MW_01 // MAKERWORLD\n
Bambulab Xxl Waste Purge Flush Pop Bucket For X1 W
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Z\n
\n MW_02 // MAKERWORLD\n
Z Motor Cover Blv Mgn Cube
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Low\n
\n MW_03 // MAKERWORLD\n
Low Poly Bowl Trinket Tray
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"No\n
\n MW_04 // MAKERWORLD\n
No Smoking Table
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ams\n
\n MW_05 // MAKERWORLD\n
Ams Silica Holder Full Drilled
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-26 21:42:06','2026-03-26 20:42:06','',10,'http://87.106.117.190/?p=504',0,'revision','',0), +(505,0,'2026-03-26 21:42:07','2026-03-26 20:42:07','\n\n\n\n\n\n
\n
\n
\n MODEL_ARCHIVE\n

ARCHIV.

\n

Historie der wöchentlichen Top-Modelle.

\n
\n
\n\n
\n
2026-W13
Printables: Stargate with a working Iris
Printables: Folding Wall Hook
Printables: Full Desk Organizer & Monitor Stand + Stackable Drawers
\n
2026-W12
Printables: Wall Hook - Invisible Mounting
Printables: Folding Wall Hook
Printables: Dragon Egg Twist Fidget
\n
2026-W11
Printables: Wall Hook - Invisible Mounting
Printables: Folding Wall Hook
Printables: Parcel Opener – Safe, Durable & Blade-Free
\n
2026-W10
Printables: Flexi Baby Snake - Print in place - No Supports
Printables: Parcel Opener – Safe, Durable & Blade-Free
Printables: Filament Storage 2026
\n\n
\n\n\n','Model-Archiv','','inherit','closed','closed','','72-revision-v1','','','2026-03-26 21:42:07','2026-03-26 20:42:07','',72,'http://87.106.117.190/?p=505',0,'revision','',0), +(506,0,'2026-03-27 07:10:24','2026-03-27 06:10:24','\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
615 Likes · 1135 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Dupont\n
\n P_02 // OTHER\n
Dupont connector bridge
\n
361 Likes · 458 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_03 // OTHER\n
Folding Wall Hook
\n
2767 Likes · 7164 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Knurled\n
\n P_04 // OTHER\n
Knurled knobs for M2.5 to M8 internal hex screw
\n
534 Likes · 608 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_05 // OTHER\n
Any Box Generator
\n
1082 Likes · 1526 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"No\n
\n MW_01 // MAKERWORLD\n
No Smoking Table
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ams\n
\n MW_02 // MAKERWORLD\n
Ams Silica Holder Full Drilled
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Rubber\n
\n MW_03 // MAKERWORLD\n
Rubber Loom Band Handel Pin
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Wallart\n
\n MW_04 // MAKERWORLD\n
Wallart Fist And Bricks
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ikea\n
\n MW_05 // MAKERWORLD\n
Ikea Hook
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-27 07:10:24','2026-03-27 06:10:24','',10,'http://87.106.117.190/?p=506',0,'revision','',0), +(507,0,'2026-03-27 13:10:20','2026-03-27 12:10:20','\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
622 Likes · 1155 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Dupont\n
\n P_02 // OTHER\n
Dupont connector bridge
\n
392 Likes · 497 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_03 // OTHER\n
Folding Wall Hook
\n
2783 Likes · 7224 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Knurled\n
\n P_04 // OTHER\n
Knurled knobs for M2.5 to M8 internal hex screw
\n
552 Likes · 633 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_05 // OTHER\n
Any Box Generator
\n
1094 Likes · 1551 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"No\n
\n MW_01 // MAKERWORLD\n
No Smoking Table
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ams\n
\n MW_02 // MAKERWORLD\n
Ams Silica Holder Full Drilled
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Rubber\n
\n MW_03 // MAKERWORLD\n
Rubber Loom Band Handel Pin
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Wallart\n
\n MW_04 // MAKERWORLD\n
Wallart Fist And Bricks
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ikea\n
\n MW_05 // MAKERWORLD\n
Ikea Hook
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-27 13:10:20','2026-03-27 12:10:20','',10,'http://87.106.117.190/?p=507',0,'revision','',0), +(508,0,'2026-03-27 19:10:38','2026-03-27 18:10:38','\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
647 Likes · 1190 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Dupont\n
\n P_02 // OTHER\n
Dupont connector bridge
\n
432 Likes · 547 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_03 // OTHER\n
Folding Wall Hook
\n
2811 Likes · 7330 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Knurled\n
\n P_04 // OTHER\n
Knurled knobs for M2.5 to M8 internal hex screw
\n
575 Likes · 662 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_05 // OTHER\n
Any Box Generator
\n
1117 Likes · 1606 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"No\n
\n MW_01 // MAKERWORLD\n
No Smoking Table
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ams\n
\n MW_02 // MAKERWORLD\n
Ams Silica Holder Full Drilled
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Rubber\n
\n MW_03 // MAKERWORLD\n
Rubber Loom Band Handel Pin
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Wallart\n
\n MW_04 // MAKERWORLD\n
Wallart Fist And Bricks
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ikea\n
\n MW_05 // MAKERWORLD\n
Ikea Hook
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-27 19:10:38','2026-03-27 18:10:38','',10,'http://87.106.117.190/?p=508',0,'revision','',0), +(509,0,'2026-03-28 07:10:55','2026-03-28 06:10:55','\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
679 Likes · 1231 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Dupont\n
\n P_02 // OTHER\n
Dupont connector bridge
\n
474 Likes · 596 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_03 // OTHER\n
Folding Wall Hook
\n
2853 Likes · 7458 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Knurled\n
\n P_04 // OTHER\n
Knurled knobs for M2.5 to M8 internal hex screw
\n
597 Likes · 706 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_05 // OTHER\n
Any Box Generator
\n
1164 Likes · 1674 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"2024\n
\n MW_01 // MAKERWORLD\n
2024 Earring
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Plato\n
\n MW_02 // MAKERWORLD\n
Plato Award
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Arborcycle\n
\n MW_03 // MAKERWORLD\n
Arborcycle Calendar
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ballerina\n
\n MW_04 // MAKERWORLD\n
Ballerina Silhouette Figure Decoration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Bento\n
\n MW_05 // MAKERWORLD\n
Bento Smoke Stack Stage 2 Air Filtration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-28 07:10:55','2026-03-28 06:10:55','',10,'http://87.106.117.190/?p=509',0,'revision','',0), +(510,0,'2026-03-28 13:10:38','2026-03-28 12:10:38','\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
694 Likes · 1249 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Dupont\n
\n P_02 // OTHER\n
Dupont connector bridge
\n
507 Likes · 630 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_03 // OTHER\n
Folding Wall Hook
\n
2878 Likes · 7538 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Knurled\n
\n P_04 // OTHER\n
Knurled knobs for M2.5 to M8 internal hex screw
\n
615 Likes · 728 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_05 // OTHER\n
Any Box Generator
\n
1193 Likes · 1703 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"2024\n
\n MW_01 // MAKERWORLD\n
2024 Earring
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Plato\n
\n MW_02 // MAKERWORLD\n
Plato Award
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Arborcycle\n
\n MW_03 // MAKERWORLD\n
Arborcycle Calendar
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ballerina\n
\n MW_04 // MAKERWORLD\n
Ballerina Silhouette Figure Decoration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Bento\n
\n MW_05 // MAKERWORLD\n
Bento Smoke Stack Stage 2 Air Filtration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-28 13:10:38','2026-03-28 12:10:38','',10,'http://87.106.117.190/?p=510',0,'revision','',0), +(511,0,'2026-03-28 19:10:39','2026-03-28 18:10:39','\n\n\n\n\n\n
\n
\n
\n MODEL_DATABASE\n

TRENDING
PRINTS.

\n

Top-Modelle von Printables & MakerWorld — automatisch aktualisiert.

\n
\n
\n\n
\n\n

PRINTABLES // TOP 5

\n
\n
\n \"Stargate\n
\n P_01 // TRENDING\n
Stargate with a working Iris
\n
716 Likes · 1282 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Dupont\n
\n P_02 // OTHER\n
Dupont connector bridge
\n
536 Likes · 677 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Folding\n
\n P_03 // OTHER\n
Folding Wall Hook
\n
2906 Likes · 7652 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Knurled\n
\n P_04 // OTHER\n
Knurled knobs for M2.5 to M8 internal hex screw
\n
635 Likes · 754 Downloads
\n AUF PRINTABLES →\n
\n
\n \"Any\n
\n P_05 // OTHER\n
Any Box Generator
\n
1212 Likes · 1773 Downloads
\n AUF PRINTABLES →\n
\n
\n
\n\n

MAKERWORLD // TOP 5

\n
\n
\n \"2024\n
\n MW_01 // MAKERWORLD\n
2024 Earring
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Plato\n
\n MW_02 // MAKERWORLD\n
Plato Award
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Arborcycle\n
\n MW_03 // MAKERWORLD\n
Arborcycle Calendar
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Ballerina\n
\n MW_04 // MAKERWORLD\n
Ballerina Silhouette Figure Decoration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n \"Bento\n
\n MW_05 // MAKERWORLD\n
Bento Smoke Stack Stage 2 Air Filtration
\n
MakerWorld Modell — direkt öffnen für Details.
\n BEI MAKERWORLD →\n
\n
\n
\n\n

\n [MODEL_ARCHIV →]\n

\n

Automatisch aktualisiert — Daten von Printables & MakerWorld.

\n\n
\n\n\n','Inspiration','','inherit','closed','closed','','10-revision-v1','','','2026-03-28 19:10:39','2026-03-28 18:10:39','',10,'http://87.106.117.190/?p=511',0,'revision','',0); +/*!40000 ALTER TABLE `wp_posts` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_term_relationships` +-- + +DROP TABLE IF EXISTS `wp_term_relationships`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_term_relationships` ( + `object_id` bigint(20) unsigned NOT NULL DEFAULT 0, + `term_taxonomy_id` bigint(20) unsigned NOT NULL DEFAULT 0, + `term_order` int(11) NOT NULL DEFAULT 0, + PRIMARY KEY (`object_id`,`term_taxonomy_id`), + KEY `term_taxonomy_id` (`term_taxonomy_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_term_relationships` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_term_relationships` WRITE; +/*!40000 ALTER TABLE `wp_term_relationships` DISABLE KEYS */; +INSERT INTO `wp_term_relationships` VALUES +(111,2,0), +(113,2,0), +(114,2,0), +(115,2,0), +(128,3,0), +(133,3,0), +(141,3,0), +(145,3,0), +(151,3,0), +(155,3,0), +(161,3,0), +(165,3,0), +(172,3,0), +(176,3,0), +(182,3,0), +(186,3,0), +(192,3,0), +(196,3,0), +(202,3,0), +(206,3,0), +(212,3,0), +(216,3,0), +(222,3,0), +(226,3,0), +(232,3,0), +(236,3,0), +(243,3,0), +(253,3,0), +(260,3,0), +(264,3,0), +(270,3,0), +(274,3,0), +(280,3,0), +(284,3,0), +(290,3,0), +(294,3,0), +(300,3,0), +(304,3,0), +(310,3,0), +(314,3,0), +(321,3,0), +(325,3,0), +(331,3,0), +(335,3,0), +(339,3,0), +(340,3,0), +(367,2,0), +(368,2,0), +(369,2,0), +(370,2,0), +(371,2,0), +(374,2,0), +(375,1,0), +(376,1,0), +(377,1,0), +(394,1,0), +(397,1,0), +(398,1,0), +(401,1,0), +(403,1,0), +(404,1,0), +(406,1,0), +(407,1,0), +(409,1,0), +(411,1,0), +(412,1,0), +(413,1,0), +(417,1,0), +(418,1,0), +(420,1,0), +(421,1,0), +(422,1,0), +(436,3,0), +(442,3,0), +(446,3,0), +(449,3,0), +(450,3,0), +(454,3,0), +(455,3,0), +(459,1,0), +(460,1,0), +(463,1,0), +(464,1,0), +(465,1,0), +(469,3,0), +(483,2,0), +(486,3,0), +(492,3,0), +(499,3,0); +/*!40000 ALTER TABLE `wp_term_relationships` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_term_taxonomy` +-- + +DROP TABLE IF EXISTS `wp_term_taxonomy`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_term_taxonomy` ( + `term_taxonomy_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `term_id` bigint(20) unsigned NOT NULL DEFAULT 0, + `taxonomy` varchar(32) NOT NULL DEFAULT '', + `description` longtext NOT NULL, + `parent` bigint(20) unsigned NOT NULL DEFAULT 0, + `count` bigint(20) NOT NULL DEFAULT 0, + PRIMARY KEY (`term_taxonomy_id`), + UNIQUE KEY `term_id_taxonomy` (`term_id`,`taxonomy`), + KEY `taxonomy` (`taxonomy`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_term_taxonomy` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_term_taxonomy` WRITE; +/*!40000 ALTER TABLE `wp_term_taxonomy` DISABLE KEYS */; +INSERT INTO `wp_term_taxonomy` VALUES +(1,1,'category','',0,25), +(2,2,'nav_menu','',0,11), +(3,3,'category','',0,23), +(4,4,'category','',0,0); +/*!40000 ALTER TABLE `wp_term_taxonomy` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_termmeta` +-- + +DROP TABLE IF EXISTS `wp_termmeta`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_termmeta` ( + `meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `term_id` bigint(20) unsigned NOT NULL DEFAULT 0, + `meta_key` varchar(255) DEFAULT NULL, + `meta_value` longtext DEFAULT NULL, + PRIMARY KEY (`meta_id`), + KEY `term_id` (`term_id`), + KEY `meta_key` (`meta_key`(191)) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_termmeta` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_termmeta` WRITE; +/*!40000 ALTER TABLE `wp_termmeta` DISABLE KEYS */; +/*!40000 ALTER TABLE `wp_termmeta` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_terms` +-- + +DROP TABLE IF EXISTS `wp_terms`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_terms` ( + `term_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(200) NOT NULL DEFAULT '', + `slug` varchar(200) NOT NULL DEFAULT '', + `term_group` bigint(10) NOT NULL DEFAULT 0, + PRIMARY KEY (`term_id`), + KEY `slug` (`slug`(191)), + KEY `name` (`name`(191)) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_terms` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_terms` WRITE; +/*!40000 ALTER TABLE `wp_terms` DISABLE KEYS */; +INSERT INTO `wp_terms` VALUES +(1,'Uncategorized','uncategorized',0), +(2,'Hauptmenü','hauptmenu',0), +(3,'Guides','guides',0), +(4,'News','news',0); +/*!40000 ALTER TABLE `wp_terms` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_usermeta` +-- + +DROP TABLE IF EXISTS `wp_usermeta`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_usermeta` ( + `umeta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `user_id` bigint(20) unsigned NOT NULL DEFAULT 0, + `meta_key` varchar(255) DEFAULT NULL, + `meta_value` longtext DEFAULT NULL, + PRIMARY KEY (`umeta_id`), + KEY `user_id` (`user_id`), + KEY `meta_key` (`meta_key`(191)) +) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_usermeta` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_usermeta` WRITE; +/*!40000 ALTER TABLE `wp_usermeta` DISABLE KEYS */; +INSERT INTO `wp_usermeta` VALUES +(1,1,'nickname','admin'), +(2,1,'first_name',''), +(3,1,'last_name',''), +(4,1,'description',''), +(5,1,'rich_editing','true'), +(6,1,'syntax_highlighting','true'), +(7,1,'comment_shortcuts','false'), +(8,1,'admin_color','fresh'), +(9,1,'use_ssl','0'), +(10,1,'show_admin_bar_front','true'), +(11,1,'locale',''), +(12,1,'wp_capabilities','a:1:{s:13:\"administrator\";b:1;}'), +(13,1,'wp_user_level','10'), +(14,1,'dismissed_wp_pointers',''), +(15,1,'show_welcome_panel','1'), +(16,1,'session_tokens','a:2:{s:64:\"a21d974a4253ad290bce95960e7dab841b44dddab334bca03aa0e72223de2055\";a:4:{s:10:\"expiration\";i:1772866945;s:2:\"ip\";s:11:\"93.241.53.3\";s:2:\"ua\";s:117:\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36\";s:5:\"login\";i:1772694145;}s:64:\"fbf829a4a1e22edcdc49196602a235d8dc5c0383ddb5a51dd44d76c0a09db287\";a:4:{s:10:\"expiration\";i:1772893615;s:2:\"ip\";s:11:\"93.241.53.3\";s:2:\"ua\";s:117:\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36\";s:5:\"login\";i:1772720815;}}'), +(17,1,'wp_dashboard_quick_press_last_post_id','6'), +(18,1,'community-events-location','a:1:{s:2:\"ip\";s:11:\"93.241.53.0\";}'), +(19,1,'elementor_introduction','a:1:{s:27:\"e-editor-one-notice-pointer\";b:1;}'), +(20,1,'_yoast_wpseo_introductions','a:0:{}'), +(21,1,'wp_yoast_notifications','a:2:{i:0;a:2:{s:7:\"message\";s:195:\"You've added a new type of content. We recommend that you review the corresponding Search appearance settings.\";s:7:\"options\";a:11:{s:4:\"type\";s:7:\"warning\";s:2:\"id\";s:25:\"content-types-made-public\";s:7:\"user_id\";i:1;s:5:\"nonce\";N;s:8:\"priority\";d:0.8;s:9:\"data_json\";a:0:{}s:13:\"dismissal_key\";N;s:12:\"capabilities\";s:20:\"wpseo_manage_options\";s:16:\"capability_check\";s:3:\"all\";s:14:\"yoast_branding\";b:0;s:13:\"resolve_nonce\";s:0:\"\";}}i:1;a:2:{s:7:\"message\";O:61:\"Yoast\\WP\\SEO\\Presenters\\Admin\\Indexing_Notification_Presenter\":3:{s:18:\"\0*\0total_unindexed\";i:8;s:9:\"\0*\0reason\";s:21:\"post_type_made_public\";s:20:\"\0*\0short_link_helper\";O:38:\"Yoast\\WP\\SEO\\Helpers\\Short_Link_Helper\":2:{s:17:\"\0*\0options_helper\";O:35:\"Yoast\\WP\\SEO\\Helpers\\Options_Helper\":0:{}s:17:\"\0*\0product_helper\";O:35:\"Yoast\\WP\\SEO\\Helpers\\Product_Helper\":0:{}}}s:7:\"options\";a:11:{s:4:\"type\";s:7:\"warning\";s:2:\"id\";s:13:\"wpseo-reindex\";s:7:\"user_id\";i:1;s:5:\"nonce\";N;s:8:\"priority\";d:0.8;s:9:\"data_json\";a:0:{}s:13:\"dismissal_key\";N;s:12:\"capabilities\";s:20:\"wpseo_manage_options\";s:16:\"capability_check\";s:3:\"all\";s:14:\"yoast_branding\";b:0;s:13:\"resolve_nonce\";s:0:\"\";}}}'), +(22,1,'_yoast_wpseo_profile_updated','1773163843'); +/*!40000 ALTER TABLE `wp_usermeta` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_users` +-- + +DROP TABLE IF EXISTS `wp_users`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_users` ( + `ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `user_login` varchar(60) NOT NULL DEFAULT '', + `user_pass` varchar(255) NOT NULL DEFAULT '', + `user_nicename` varchar(50) NOT NULL DEFAULT '', + `user_email` varchar(100) NOT NULL DEFAULT '', + `user_url` varchar(100) NOT NULL DEFAULT '', + `user_registered` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `user_activation_key` varchar(255) NOT NULL DEFAULT '', + `user_status` int(11) NOT NULL DEFAULT 0, + `display_name` varchar(250) NOT NULL DEFAULT '', + PRIMARY KEY (`ID`), + KEY `user_login_key` (`user_login`), + KEY `user_nicename` (`user_nicename`), + KEY `user_email` (`user_email`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_users` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_users` WRITE; +/*!40000 ALTER TABLE `wp_users` DISABLE KEYS */; +INSERT INTO `wp_users` VALUES +(1,'admin','$P$BpA4s5UvUmBCGLFIR4A16bodayUQjH0','admin','info@molzberger.org','http://87.106.117.190','2026-03-04 18:58:16','',0,'admin'); +/*!40000 ALTER TABLE `wp_users` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_yoast_indexable` +-- + +DROP TABLE IF EXISTS `wp_yoast_indexable`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_yoast_indexable` ( + `id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `permalink` longtext DEFAULT NULL, + `permalink_hash` varchar(40) DEFAULT NULL, + `object_id` bigint(20) DEFAULT NULL, + `object_type` varchar(32) NOT NULL, + `object_sub_type` varchar(32) DEFAULT NULL, + `author_id` bigint(20) DEFAULT NULL, + `post_parent` bigint(20) DEFAULT NULL, + `title` text DEFAULT NULL, + `description` mediumtext DEFAULT NULL, + `breadcrumb_title` text DEFAULT NULL, + `post_status` varchar(20) DEFAULT NULL, + `is_public` tinyint(1) DEFAULT NULL, + `is_protected` tinyint(1) DEFAULT 0, + `has_public_posts` tinyint(1) DEFAULT NULL, + `number_of_pages` int(11) unsigned DEFAULT NULL, + `canonical` longtext DEFAULT NULL, + `primary_focus_keyword` varchar(191) DEFAULT NULL, + `primary_focus_keyword_score` int(3) DEFAULT NULL, + `readability_score` int(3) DEFAULT NULL, + `is_cornerstone` tinyint(1) DEFAULT 0, + `is_robots_noindex` tinyint(1) DEFAULT 0, + `is_robots_nofollow` tinyint(1) DEFAULT 0, + `is_robots_noarchive` tinyint(1) DEFAULT 0, + `is_robots_noimageindex` tinyint(1) DEFAULT 0, + `is_robots_nosnippet` tinyint(1) DEFAULT 0, + `twitter_title` text DEFAULT NULL, + `twitter_image` longtext DEFAULT NULL, + `twitter_description` longtext DEFAULT NULL, + `twitter_image_id` varchar(191) DEFAULT NULL, + `twitter_image_source` text DEFAULT NULL, + `open_graph_title` text DEFAULT NULL, + `open_graph_description` longtext DEFAULT NULL, + `open_graph_image` longtext DEFAULT NULL, + `open_graph_image_id` varchar(191) DEFAULT NULL, + `open_graph_image_source` text DEFAULT NULL, + `open_graph_image_meta` mediumtext DEFAULT NULL, + `link_count` int(11) DEFAULT NULL, + `incoming_link_count` int(11) DEFAULT NULL, + `prominent_words_version` int(11) unsigned DEFAULT NULL, + `created_at` datetime DEFAULT NULL, + `updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(), + `blog_id` bigint(20) NOT NULL DEFAULT 1, + `language` varchar(32) DEFAULT NULL, + `region` varchar(32) DEFAULT NULL, + `schema_page_type` varchar(64) DEFAULT NULL, + `schema_article_type` varchar(64) DEFAULT NULL, + `has_ancestors` tinyint(1) DEFAULT 0, + `estimated_reading_time_minutes` int(11) DEFAULT NULL, + `version` int(11) DEFAULT 1, + `object_last_modified` datetime DEFAULT NULL, + `object_published_at` datetime DEFAULT NULL, + `inclusive_language_score` int(3) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `object_type_and_sub_type` (`object_type`,`object_sub_type`), + KEY `object_id_and_type` (`object_id`,`object_type`), + KEY `permalink_hash_and_object_type` (`permalink_hash`,`object_type`), + KEY `subpages` (`post_parent`,`object_type`,`post_status`,`object_id`), + KEY `prominent_words` (`prominent_words_version`,`object_type`,`object_sub_type`,`post_status`), + KEY `published_sitemap_index` (`object_published_at`,`is_robots_noindex`,`object_type`,`object_sub_type`) +) ENGINE=InnoDB AUTO_INCREMENT=105 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_yoast_indexable` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_yoast_indexable` WRITE; +/*!40000 ALTER TABLE `wp_yoast_indexable` DISABLE KEYS */; +INSERT INTO `wp_yoast_indexable` VALUES +(1,NULL,NULL,NULL,'system-page','404',NULL,NULL,'Page not found %%sep%% %%sitename%%',NULL,'Error 404: Page not found',NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,1,0,0,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2026-03-05 07:16:34','2026-03-06 09:41:22',1,NULL,NULL,NULL,NULL,0,NULL,1,NULL,NULL,NULL), +(2,'http://87.106.117.190/','22:edad39d9405dbb25d57bd1f4402cb4ac',NULL,'home-page',NULL,NULL,NULL,'%%sitename%% %%page%% %%sep%% %%sitedesc%%','News, Models, Ressourcen und Tools rund ums 3D-Drucken','Home',NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,0,0,0,NULL,NULL,NULL,NULL,NULL,'%%sitename%%','','','0',NULL,NULL,NULL,2,NULL,'2026-03-05 07:16:34','2026-03-28 18:10:39',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-28 18:10:39',NULL,NULL), +(3,'http://87.106.117.190/','22:edad39d9405dbb25d57bd1f4402cb4ac',8,'post','page',0,0,NULL,NULL,'Startseite','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,'https://media.printables.com/media/prints/0a057554-5d26-47e3-859f-d89a2f25cc70/images/12077886_f7c4a675-a6d0-4d2b-95e7-bd652a4e8d72_b7dbd73d-8b99-4590-ab42-92126752c238/3fcbdc00-4b35-11f0-91a5-cd1b13c8b40b.jpg',NULL,NULL,'first-content-image',NULL,NULL,'https://media.printables.com/media/prints/0a057554-5d26-47e3-859f-d89a2f25cc70/images/12077886_f7c4a675-a6d0-4d2b-95e7-bd652a4e8d72_b7dbd73d-8b99-4590-ab42-92126752c238/3fcbdc00-4b35-11f0-91a5-cd1b13c8b40b.jpg',NULL,'first-content-image',NULL,10,NULL,NULL,'2026-03-05 07:19:38','2026-03-25 15:33:58',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 15:33:58','2026-03-05 07:10:18',0), +(4,'http://87.106.117.190/news/','27:0d445712e4a56ee67fa080161918ffe8',9,'post','page',0,0,NULL,NULL,'Trends & News','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,2,NULL,'2026-03-05 07:19:42','2026-03-26 20:17:33',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-26 20:17:33','2026-03-05 07:10:18',0), +(5,'http://87.106.117.190/models/','29:afdee6ea66fbfe2ab45a397db16bb2fa',10,'post','page',0,0,NULL,NULL,'Inspiration','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,'https://image.thum.io/get/width/640/https://makerworld.com/en/models/116652-2024-earring',NULL,NULL,'first-content-image',NULL,NULL,'https://image.thum.io/get/width/640/https://makerworld.com/en/models/116652-2024-earring',NULL,'first-content-image',NULL,16,2,NULL,'2026-03-05 07:19:48','2026-03-28 18:10:39',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-28 18:10:39','2026-03-05 07:10:19',0), +(6,'http://87.106.117.190/wissen/','29:a74d305c7e4a26f7e81035efdb251445',12,'post','page',0,0,NULL,NULL,'Guides','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,48,5,NULL,'2026-03-05 07:21:53','2026-03-26 12:15:22',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 10:13:57','2026-03-05 07:10:19',0), +(7,'http://87.106.117.190/resources/','32:01b474a813ab9b21080a0624b201c4f3',11,'post','page',0,0,NULL,NULL,'Ressourcen & Tools','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,2,NULL,'2026-03-05 07:21:56','2026-03-26 20:17:34',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-26 20:17:34','2026-03-05 07:10:19',0), +(8,'http://87.106.117.190/tools-filament-rechner/','45:2672f709978aa1d7a2275f0eb7286f7e',13,'post','page',0,0,NULL,NULL,'Filament-Rechner','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,2,NULL,'2026-03-05 07:22:05','2026-03-26 12:15:22',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 10:22:29','2026-03-05 07:10:20',0), +(9,'http://87.106.117.190/impressum/','32:5c02a33dbfe38c3adc4e328978f9122b',14,'post','page',0,0,NULL,NULL,'Impressum','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,2,NULL,'2026-03-05 07:26:09','2026-03-26 12:15:22',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 18:25:47','2026-03-05 07:10:20',0), +(10,'http://87.106.117.190/datenschutz/','34:617fb7312f2c5b152e790bba13332b6f',15,'post','page',0,0,NULL,NULL,'Datenschutz','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,2,NULL,'2026-03-05 07:37:46','2026-03-26 12:15:22',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 18:25:48','2026-03-05 07:10:20',0), +(11,'http://87.106.117.190/community-regeln/','39:a113633324e9d725bc992ad84674c929',50,'post','page',0,0,NULL,NULL,'Community-Regeln','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-05 08:11:52','2026-03-24 18:25:46',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 18:25:46','2026-03-05 08:11:52',0), +(12,'http://87.106.117.190/faq/','26:5cebfda177f0fe2fe4442ae0a978d641',51,'post','page',0,0,NULL,NULL,'FAQ','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,14,NULL,'2026-03-05 08:11:53','2026-03-26 12:15:22',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 10:22:29','2026-03-05 08:11:53',0), +(13,'http://87.106.117.190/showcase/','31:ade5e40ce286904f2422060fa3cdcdd2',58,'post','page',0,0,NULL,NULL,'Showcase','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,2,NULL,'2026-03-05 08:14:55','2026-03-26 12:15:22',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 15:34:09','2026-03-05 08:14:55',0), +(14,NULL,NULL,NULL,'system-page','search-result',NULL,NULL,'You searched for %%searchphrase%% %%page%% %%sep%% %%sitename%%',NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,1,0,0,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2026-03-05 08:21:37','2026-03-06 09:41:25',1,NULL,NULL,NULL,NULL,0,NULL,1,NULL,NULL,NULL), +(15,NULL,NULL,NULL,'date-archive',NULL,NULL,NULL,'%%date%% %%page%% %%sep%% %%sitename%%','',NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,0,1,0,0,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2026-03-05 08:21:37','2026-03-06 07:35:39',1,NULL,NULL,NULL,NULL,0,NULL,0,NULL,NULL,NULL), +(16,'http://87.106.117.190/category/uncategorized/','45:2bd0b58b1aa179a2ad9769a803a13e6e',1,'term','category',NULL,NULL,NULL,NULL,'Uncategorized',NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-05 08:21:37','2026-03-25 08:47:23',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:47:23','2026-03-24 19:05:43',NULL), +(17,'http://87.106.117.190/model-archiv/','35:fe1a5fd905557d58f8eb72479ed354b8',72,'post','page',0,0,NULL,NULL,'Model-Archiv','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,17,1,NULL,'2026-03-05 08:37:22','2026-03-28 18:10:39',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-28 18:10:39','2026-03-05 08:37:22',0), +(18,'http://87.106.117.190/category/guides/','38:454d3497be140c0041d16a4d88f3cb3d',3,'term','category',NULL,NULL,NULL,NULL,'Guides',NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,'2026-03-05 14:52:24','2026-03-26 17:15:04',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-26 17:15:03','2026-03-05 14:52:26',NULL), +(19,NULL,NULL,4,'term','category',NULL,NULL,NULL,NULL,'News',NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-05 14:52:25','2026-03-06 07:35:39',1,NULL,NULL,NULL,NULL,0,NULL,0,'2026-03-05 15:52:25',NULL,NULL), +(20,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-05/','64:3488467365afa01ef57a7aa78965f554',128,'post','post',0,0,NULL,NULL,'Guide #1: PLA perfekt einstellen (2026-03-05)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-05 14:52:26','2026-03-25 00:37:40',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-05 14:52:26','2026-03-05 14:52:26',0), +(21,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-05/','62:1081d1a605f65b8b6d69cd08dd569f7a',133,'post','post',0,0,NULL,NULL,'Guide #2: Stringing reduzieren (2026-03-05)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,2,NULL,'2026-03-05 15:01:37','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-05 15:01:37','2026-03-05 15:01:37',0), +(22,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-06/','59:bc179e4f70369963c82f84d5071b8e9f',141,'post','post',0,0,NULL,NULL,'Guide #1: Warping vermeiden (2026-03-06)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,'2026-03-06 09:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-06 09:15:03','2026-03-06 09:15:03',0), +(23,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-06/','57:f5b34e4b36ee733cf455d540d6578928',145,'post','post',0,0,NULL,NULL,'Guide #2: PETG ohne Frust (2026-03-06)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,'2026-03-06 17:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-06 17:15:03','2026-03-06 17:15:03',0), +(24,'http://87.106.117.190/guide-1-tpu-drucken-2026-03-07/','53:9498a23f9b9dd4db8f0929e3c2bdc04c',151,'post','post',0,0,NULL,NULL,'Guide #1: TPU drucken (2026-03-07)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,'2026-03-07 09:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-07 09:15:03','2026-03-07 09:15:03',0), +(25,'http://87.106.117.190/guide-2-asa-abs-grundlagen-2026-03-07/','60:4306b9aa2695d9abc0f36406b268a809',155,'post','post',0,0,NULL,NULL,'Guide #2: ASA/ABS Grundlagen (2026-03-07)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-07 17:15:03','2026-03-07 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-07 17:15:03','2026-03-07 17:15:03',0), +(26,'http://87.106.117.190/guide-1-support-richtig-setzen-2026-03-08/','64:fd0dc852242bf81c08cbcd527e2f94ec',161,'post','post',0,0,NULL,NULL,'Guide #1: Support richtig setzen (2026-03-08)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,'2026-03-08 09:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-08 09:15:03','2026-03-08 09:15:03',0), +(27,'http://87.106.117.190/guide-2-slicer-profil-optimieren-2026-03-08/','66:c14d3883d9a58b0e3f6e308f89c68e2f',165,'post','post',0,0,NULL,NULL,'Guide #2: Slicer-Profil optimieren (2026-03-08)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,'2026-03-08 17:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-08 17:15:03','2026-03-08 17:15:03',0), +(28,'http://87.106.117.190/guide-1-mau00dfhaltigkeit-verbessern-2026-03-09/','70:d3402aabf3966d95b0dc67621a07642a',172,'post','post',0,0,NULL,NULL,'Guide #1: Ma\\u00dfhaltigkeit verbessern (2026-03-09)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-09 09:15:03','2026-03-09 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-09 09:15:03','2026-03-09 09:15:03',0), +(29,'http://87.106.117.190/guide-2-druckzeit-vs-qualitu00e4t-2026-03-09/','67:aadb002117f2b1aeba6b93ee883c17b9',176,'post','post',0,0,NULL,NULL,'Guide #2: Druckzeit vs. Qualit\\u00e4t (2026-03-09)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-09 17:15:03','2026-03-09 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-09 17:15:03','2026-03-09 17:15:03',0), +(30,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-10/','64:302c663129664f454d2a93524d650d3f',182,'post','post',0,0,NULL,NULL,'Guide #1: PLA perfekt einstellen (2026-03-10)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-10 09:15:03','2026-03-10 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-10 09:15:03','2026-03-10 09:15:03',0), +(31,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-10/','62:1bbb3192fff607e2c525cc67c6bfd9cb',186,'post','post',0,0,NULL,NULL,'Guide #2: Stringing reduzieren (2026-03-10)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-10 17:15:03','2026-03-10 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-10 17:15:03','2026-03-10 17:15:03',0), +(32,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-11/','59:498edb26131aee6bfa0e126f6927467a',192,'post','post',0,0,NULL,NULL,'Guide #1: Warping vermeiden (2026-03-11)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-11 09:15:03','2026-03-11 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-11 09:15:03','2026-03-11 09:15:03',0), +(33,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-11/','57:2ec752782f9e17f07d07ce62bd4b4c79',196,'post','post',0,0,NULL,NULL,'Guide #2: PETG ohne Frust (2026-03-11)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-11 17:15:03','2026-03-11 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-11 17:15:03','2026-03-11 17:15:03',0), +(34,'http://87.106.117.190/guide-1-tpu-drucken-2026-03-12/','53:530746d2c57a5ce1dccfad047da86b09',202,'post','post',0,0,NULL,NULL,'Guide #1: TPU drucken (2026-03-12)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-12 09:15:03','2026-03-12 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-12 09:15:03','2026-03-12 09:15:03',0), +(35,'http://87.106.117.190/guide-2-asa-abs-grundlagen-2026-03-12/','60:4ea341496ac379720c1f8d4cca8eafd5',206,'post','post',0,0,NULL,NULL,'Guide #2: ASA/ABS Grundlagen (2026-03-12)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-12 17:15:03','2026-03-12 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-12 17:15:03','2026-03-12 17:15:03',0), +(36,'http://87.106.117.190/guide-1-support-richtig-setzen-2026-03-13/','64:a7b2e8a0ab31ed71c6a06da8b4143c76',212,'post','post',0,0,NULL,NULL,'Guide #1: Support richtig setzen (2026-03-13)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-13 09:15:03','2026-03-13 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-13 09:15:03','2026-03-13 09:15:03',0), +(37,'http://87.106.117.190/guide-2-slicer-profil-optimieren-2026-03-13/','66:439e48df9733835475bd527c7e427b12',216,'post','post',0,0,NULL,NULL,'Guide #2: Slicer-Profil optimieren (2026-03-13)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-13 17:15:03','2026-03-13 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-13 17:15:03','2026-03-13 17:15:03',0), +(38,'http://87.106.117.190/guide-1-mau00dfhaltigkeit-verbessern-2026-03-14/','70:eea9bc1670a571eba9f4828ccd05ff2b',222,'post','post',0,0,NULL,NULL,'Guide #1: Ma\\u00dfhaltigkeit verbessern (2026-03-14)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-14 09:15:03','2026-03-14 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-14 09:15:03','2026-03-14 09:15:03',0), +(39,'http://87.106.117.190/guide-2-druckzeit-vs-qualitu00e4t-2026-03-14/','67:649a1f0526309d13e1262f053da93bd5',226,'post','post',0,0,NULL,NULL,'Guide #2: Druckzeit vs. Qualit\\u00e4t (2026-03-14)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-14 17:15:03','2026-03-14 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-14 17:15:03','2026-03-14 17:15:03',0), +(40,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-15/','64:560fc0a41159c7fa7efa0bcb2a2cb66e',232,'post','post',0,0,NULL,NULL,'Guide #1: PLA perfekt einstellen (2026-03-15)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-15 09:15:04','2026-03-15 09:15:04',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-15 09:15:04','2026-03-15 09:15:04',0), +(41,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-15/','62:05ce2f5f053761638115239d91f312a3',236,'post','post',0,0,NULL,NULL,'Guide #2: Stringing reduzieren (2026-03-15)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-15 17:15:03','2026-03-15 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-15 17:15:03','2026-03-15 17:15:03',0), +(42,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-16/','59:8414314d11fd729aaecb334b8fa4fed9',243,'post','post',0,0,NULL,NULL,'Guide #1: Warping vermeiden (2026-03-16)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-16 09:15:03','2026-03-16 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-16 09:15:03','2026-03-16 09:15:03',0), +(43,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-16/','57:3b5703bc38fa471ba37c35c340682990',253,'post','post',0,0,NULL,NULL,'Guide #2: PETG ohne Frust (2026-03-16)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-16 17:15:03','2026-03-16 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-16 17:15:03','2026-03-16 17:15:03',0), +(44,'http://87.106.117.190/guide-1-tpu-drucken-2026-03-17/','53:eace828d5638e130da1763cf1b0d8137',260,'post','post',0,0,NULL,NULL,'Guide #1: TPU drucken (2026-03-17)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-17 09:15:03','2026-03-17 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-17 09:15:03','2026-03-17 09:15:03',0), +(45,'http://87.106.117.190/guide-2-asa-abs-grundlagen-2026-03-17/','60:d4f0d8b27f41fdbea7934eaa58e8e956',264,'post','post',0,0,NULL,NULL,'Guide #2: ASA/ABS Grundlagen (2026-03-17)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-17 17:15:03','2026-03-17 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-17 17:15:03','2026-03-17 17:15:03',0), +(46,'http://87.106.117.190/guide-1-support-richtig-setzen-2026-03-18/','64:438f57fa919ee2c50d226721778ac3e0',270,'post','post',0,0,NULL,NULL,'Guide #1: Support richtig setzen (2026-03-18)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-18 09:15:03','2026-03-18 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-18 09:15:03','2026-03-18 09:15:03',0), +(47,'http://87.106.117.190/guide-2-slicer-profil-optimieren-2026-03-18/','66:a5f80b47ce0828a37860d1560c34c8c7',274,'post','post',0,0,NULL,NULL,'Guide #2: Slicer-Profil optimieren (2026-03-18)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-18 17:15:03','2026-03-18 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-18 17:15:03','2026-03-18 17:15:03',0), +(48,'http://87.106.117.190/guide-1-mau00dfhaltigkeit-verbessern-2026-03-19/','70:73c283b1deeb9269ee4b46d3d737abd8',280,'post','post',0,0,NULL,NULL,'Guide #1: Ma\\u00dfhaltigkeit verbessern (2026-03-19)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-19 09:15:03','2026-03-19 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-19 09:15:03','2026-03-19 09:15:03',0), +(49,'http://87.106.117.190/guide-2-druckzeit-vs-qualitu00e4t-2026-03-19/','67:e5b335018dd1696e7b699548f6667e7d',284,'post','post',0,0,NULL,NULL,'Guide #2: Druckzeit vs. Qualit\\u00e4t (2026-03-19)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-19 17:15:03','2026-03-19 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-19 17:15:03','2026-03-19 17:15:03',0), +(50,'http://87.106.117.190/pla-perfekt-einstellen/','45:9550964e689d789325974a9726396267',290,'post','post',0,0,NULL,NULL,'PLA perfekt einstellen','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,3,2,NULL,'2026-03-20 09:15:03','2026-03-25 00:37:40',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:18','2026-03-20 09:15:03',0), +(51,'http://87.106.117.190/stringing-reduzieren/','43:0b89de186d5971db8c9da66793bbe94c',294,'post','post',0,0,NULL,NULL,'Stringing reduzieren','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,2,NULL,'2026-03-20 17:15:03','2026-03-25 00:37:40',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:19','2026-03-20 17:15:03',0), +(52,'http://87.106.117.190/warping-vermeiden/','40:a8501b9e1d8eccc26f43c7d361f7b434',300,'post','post',0,0,NULL,NULL,'Warping vermeiden','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,2,NULL,'2026-03-21 09:15:03','2026-03-25 00:37:40',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:20','2026-03-21 09:15:03',0), +(53,'http://87.106.117.190/petg-ohne-frust/','38:c8ef0a4eca62ce4e1fb1c8d0fd4ea474',304,'post','post',0,0,NULL,NULL,'PETG ohne Frust drucken','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,1,NULL,'2026-03-21 17:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:21','2026-03-21 17:15:03',0), +(54,'http://87.106.117.190/tpu-drucken/','34:80543439cc758872095a226ff5a124ef',310,'post','post',0,0,NULL,NULL,'TPU drucken','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,2,NULL,'2026-03-22 09:15:03','2026-03-25 00:37:40',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:22','2026-03-22 09:15:03',0), +(55,'http://87.106.117.190/asa-abs-grundlagen/','41:ce34ff817e544a235b7903f923f9616e',314,'post','post',0,0,NULL,NULL,'ASA/ABS Grundlagen','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,1,NULL,'2026-03-22 17:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:24','2026-03-22 17:15:03',0), +(56,'http://87.106.117.190/support-richtig-setzen/','45:f8a2d8e43c02cd227e22df5c15ece2fe',321,'post','post',0,0,NULL,NULL,'Support richtig setzen','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,1,NULL,'2026-03-23 09:15:02','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:25','2026-03-23 09:15:02',0), +(57,'http://87.106.117.190/slicer-profil-optimieren/','47:c0d1f6990a5780bf27d261a80f0cc580',325,'post','post',0,0,NULL,NULL,'Slicer-Profil optimieren','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,2,NULL,'2026-03-23 17:15:03','2026-03-25 00:37:40',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:26','2026-03-23 17:15:03',0), +(58,'http://87.106.117.190/masshaltigkeit-verbessern/','48:6a29771b6b8d65d30ecf5e66d3f483c3',331,'post','post',0,0,NULL,NULL,'Maßhaltigkeit verbessern','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,1,NULL,'2026-03-24 09:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:27','2026-03-24 09:15:03',0), +(59,'http://87.106.117.190/druckzeit-vs-qualitaet/','45:ee96446dd7fd30f41d929838d97527e4',335,'post','post',0,0,NULL,NULL,'Druckzeit vs. Qualität','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,1,NULL,'2026-03-24 17:15:03','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:28','2026-03-24 17:15:03',0), +(60,'http://87.106.117.190/layer-separation-beheben/','47:8399204d7dd1e86e080d9793b64c4948',339,'post','post',0,0,NULL,NULL,'Layer Separation beheben','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,1,NULL,'2026-03-24 18:13:24','2026-03-24 19:06:30',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:29','2026-03-24 18:13:24',0), +(61,'http://87.106.117.190/erstes-modell-drucken/','44:018b1705e65508b73975f922089299bc',340,'post','post',0,0,NULL,NULL,'Erstes Modell drucken','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,4,1,NULL,'2026-03-24 18:14:03','2026-03-24 19:06:31',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:06:31','2026-03-24 18:14:03',0), +(62,'http://87.106.117.190/guide-orcaslicer-einsteiger/','50:8bfa73b9ccceab10edeac26f880344ff',375,'post','post',0,0,NULL,NULL,'OrcaSlicer: Vollständiger Einsteiger-Guide','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-24 19:05:43','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:05:43','2026-03-24 19:05:43',0), +(63,'http://87.106.117.190/guide-cura-tipps/','39:90bc70be7d7e9c17512e9451f35ff187',376,'post','post',0,0,NULL,NULL,'Cura: Tipps & versteckte Einstellungen','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-24 19:05:44','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:05:44','2026-03-24 19:05:44',0), +(64,'http://87.106.117.190/guide-bambu-studio/','41:785dc0ab983adaa1a4c50f6c2d0dbbc3',377,'post','post',0,0,NULL,NULL,'Bambu Studio: Einsteiger bis Fortgeschrittene','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-24 19:05:45','2026-03-24 19:07:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:05:45','2026-03-24 19:05:45',0), +(65,'http://87.106.117.190/guide-prusaslicer/','40:b75467d3372bc9aa11a21836ce95e279',394,'post','post',0,0,NULL,NULL,'PrusaSlicer: Einsteiger bis Fortgeschrittene','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-24 19:21:54','2026-03-24 19:23:01',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:21:54','2026-03-24 19:21:54',0), +(66,'http://87.106.117.190/retraction-kalibrieren/','45:cbc4d42e46095338f9e3c301b6dff093',397,'post','post',0,0,NULL,NULL,'Retraction kalibrieren: Kein Stringing mehr','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-24 19:33:44','2026-03-24 23:53:41',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:33:44','2026-03-24 19:33:44',0), +(67,'http://87.106.117.190/erste-schicht-kalibrieren/','48:88593382f566bc211f8c57554ede5922',398,'post','post',0,0,NULL,NULL,'Erste Schicht perfekt kalibrieren','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-24 19:35:24','2026-03-24 23:53:41',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-24 19:35:24','2026-03-24 19:35:24',0), +(68,'http://87.106.117.190/unterextrusion-beheben/','45:379ffc18c1d6106d69031d5bc3d1a859',401,'post','post',0,0,NULL,NULL,'Unterextrusion beheben','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:03:34','2026-03-25 00:03:54',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:03:34','2026-03-25 00:03:34',0), +(69,'http://87.106.117.190/pressure-advance-kalibrieren/','51:815af6b659631d028d25861cd1a2bf87',403,'post','post',0,0,NULL,NULL,'Pressure Advance kalibrieren','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:07:39','2026-03-25 00:08:19',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:07:39','2026-03-25 00:07:39',0), +(70,'http://87.106.117.190/flow-rate-e-steps-kalibrieren/','52:ac6904288a685428293cd9b0a2c22286',404,'post','post',0,0,NULL,NULL,'Flow-Rate und E-Steps kalibrieren','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:07:45','2026-03-25 00:08:19',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:07:45','2026-03-25 00:07:45',0), +(71,'http://87.106.117.190/bruecken-ueberhange-drucken/','50:e0278c3c82c372dfe97ef05299a8a8a3',406,'post','post',0,0,NULL,NULL,'Brücken und Überhänge drucken','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:13:34','2026-03-25 00:14:08',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:13:34','2026-03-25 00:13:34',0), +(72,'http://87.106.117.190/infill-muster-dichte-wandstaerke/','55:80e5c37119ceea0cc5731f7c033de041',407,'post','post',0,0,NULL,NULL,'Infill: Muster, Dichte und Wandstärke','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:13:35','2026-03-25 00:14:08',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:13:35','2026-03-25 00:13:35',0), +(73,'http://87.106.117.190/input-shaping-kalibrieren/','48:05dc3aef805e6c235307f64cdb9db90c',409,'post','post',0,0,NULL,NULL,'Input Shaping kalibrieren','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:23:33','2026-03-25 00:24:14',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:23:33','2026-03-25 00:23:33',0), +(74,'http://87.106.117.190/temperaturturm-kalibrieren/','49:2207239b0374ffd83e3e8a6659a6b73d',411,'post','post',0,0,NULL,NULL,'Temperaturturm auswerten','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:37:30','2026-03-25 00:38:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:37:30','2026-03-25 00:37:30',0), +(75,'http://87.106.117.190/duesenwechsel-nozzle-upgrade/','51:036960d0f66686f7a495ced6232c4c5d',412,'post','post',0,0,NULL,NULL,'Düsenwechsel und Nozzle-Upgrade','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:37:31','2026-03-25 00:38:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:37:31','2026-03-25 00:37:31',0), +(76,'http://87.106.117.190/druckbett-leveln-z-offset/','48:ec8ebfe070231ee52eebdc2090ea2ce9',413,'post','post',0,0,NULL,NULL,'Druckbett leveln und Z-Offset','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:37:32','2026-03-25 00:38:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:37:32','2026-03-25 00:37:32',0), +(77,'http://87.106.117.190/adaptive-layer-height/','44:b49a015c674e5367e6e9f76921868a25',417,'post','post',0,0,NULL,NULL,'Adaptive Layer Height','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:46:01','2026-03-25 00:46:24',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:46:01','2026-03-25 00:46:01',0), +(78,'http://87.106.117.190/multi-material-ams/','41:15611df720ec25f24b6bce5b872fffae',418,'post','post',0,0,NULL,NULL,'Multi-Material und AMS einrichten','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:46:03','2026-03-25 00:46:24',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:46:02','2026-03-25 00:46:02',0), +(79,'http://87.106.117.190/elefantenfuss-beheben/','44:553406b0b281724bc8da35906f138e22',420,'post','post',0,0,NULL,NULL,'Elefantenfuß beheben','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:58:03','2026-03-25 00:58:50',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:58:03','2026-03-25 00:58:03',0), +(80,'http://87.106.117.190/ironing-top-oberflaechen/','47:cb45297def94cb3fa45ea6634a102db6',421,'post','post',0,0,NULL,NULL,'Ironing: Top-Oberflächen glätten','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:58:04','2026-03-25 00:58:50',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:58:04','2026-03-25 00:58:04',0), +(81,'http://87.106.117.190/nylon-pa-drucken/','39:0d9f42fa13019e68606bd9d524b3fa6b',422,'post','post',0,0,NULL,NULL,'Nylon / PA drucken','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 00:58:05','2026-03-25 00:58:50',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 00:58:05','2026-03-25 00:58:05',0), +(82,'http://87.106.117.190/naht-seam-verstecken/','43:b98786806be66971aa88a003fc94a728',424,'post','page',0,0,NULL,NULL,'Naht (Seam) verstecken','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 01:06:30','2026-03-25 01:07:15',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 01:06:30','2026-03-25 01:06:30',0), +(83,'http://87.106.117.190/filament-trocknen/','40:a1acd0864a944faec02e75593a9ba8f3',425,'post','page',0,0,NULL,NULL,'Filament richtig trocknen','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 01:06:37','2026-03-25 01:07:15',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 01:06:37','2026-03-25 01:06:37',0), +(84,'http://87.106.117.190/drucker-kaufberatung-2026/','48:6617125d0ed62c065893b3b5d10a0ce4',426,'post','page',0,0,NULL,NULL,'3D-Drucker Kaufberatung 2026','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 01:06:37','2026-03-25 01:07:15',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 01:06:37','2026-03-25 01:06:37',0), +(86,'http://87.106.117.190/author/admin/','35:f7b99a461942a60632b6cbf751f4cf03',1,'user',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,'https://secure.gravatar.com/avatar/79342688da9bee60e2a4be96f7ec9c5ee713367116b0b48b0bc8dab06044f1b0?s=500&d=mm&r=g',NULL,NULL,'gravatar-image',NULL,NULL,'https://secure.gravatar.com/avatar/79342688da9bee60e2a4be96f7ec9c5ee713367116b0b48b0bc8dab06044f1b0?s=500&d=mm&r=g',NULL,'gravatar-image',NULL,NULL,NULL,NULL,'2026-03-25 07:09:22','2026-03-25 08:02:24',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:02:24','2026-03-25 07:09:22',NULL), +(89,'http://87.106.117.190/speed-tower-druckgeschwindigkeit/','55:f40a8b4e6ba10ecfb63b6c5e6d81fcac',436,'post','post',1,0,NULL,NULL,'Speed Tower: Druckgeschwindigkeit optimieren','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 07:12:58','2026-03-25 07:13:28',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 07:12:58','2026-03-25 07:12:58',0), +(90,'http://87.106.117.190/modifier-meshes-paint-on-supports/','56:c6de9c97f361dfab5e123201df40110e',442,'post','post',1,0,NULL,NULL,'Modifier Meshes & Paint-on Supports','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 07:44:45','2026-03-25 07:45:20',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 07:44:45','2026-03-25 07:44:45',0), +(91,'http://87.106.117.190/fuzzy-skin-strukturierte-oberflaechen/','60:98729aa2b59753bf9ff46cd49c001de6',446,'post','post',1,0,NULL,NULL,'Fuzzy Skin: Strukturierte Oberflächen drucken','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 07:48:58','2026-03-25 07:49:27',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 07:48:58','2026-03-25 07:48:58',0), +(92,'http://87.106.117.190/klipper-grundlagen-ersteinrichtung/','57:021b96e6ce2a6d040e87fc68b922bcbd',449,'post','post',1,0,NULL,NULL,'Klipper: Grundlagen & Ersteinrichtung','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 07:52:49','2026-03-25 07:53:20',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 07:52:49','2026-03-25 07:52:49',0), +(93,'http://87.106.117.190/bed-adhesion-haftung/','43:f56cd9603e502075974aae798c952518',450,'post','post',1,0,NULL,NULL,'Bed Adhesion: Die beste Haftung für jedes Material','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 07:52:50','2026-03-25 07:53:20',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 07:52:50','2026-03-25 07:52:50',0), +(94,'http://87.106.117.190/gridfinity-ordnungssystem/','48:cc4db75f216aa4dd9cfeae62c5c90b88',454,'post','post',1,0,NULL,NULL,'Gridfinity: Das modulare Ordnungssystem','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 08:02:22','2026-03-25 08:03:26',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:02:22','2026-03-25 08:02:22',0), +(95,'http://87.106.117.190/3d-drucke-nachbearbeiten/','47:a301ebd5439dbdda04ef4741f3bf9755',455,'post','post',1,0,NULL,NULL,'3D-Drucke nachbearbeiten: Schleifen, Glätten & Lackieren','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 08:02:24','2026-03-25 08:03:26',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:02:24','2026-03-25 08:02:24',0), +(96,'http://87.106.117.190/verstopfte-duese-diagnose-reinigung/','58:ee93c42ca0c2bf58ad8aaa81cbf619c7',459,'post','post',0,0,NULL,NULL,'Verstopfte Düse: Diagnose & Reinigung','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 08:14:25','2026-03-25 08:15:32',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:14:25','2026-03-25 08:14:25',0), +(97,'http://87.106.117.190/resin-druck-grundlagen/','45:afafc702d2fc3c04b650bfd138ca2592',460,'post','post',0,0,NULL,NULL,'Resin-Druck: SLA & MSLA Grundlagen','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 08:14:31','2026-03-25 08:15:32',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:14:31','2026-03-25 08:14:31',0), +(98,'http://87.106.117.190/tpu-flexible-filamente-drucken/','53:4789ce20b2576a36cbec7510be90ddc9',463,'post','post',0,0,NULL,NULL,'TPU & Flexible Filamente: Der komplette Druckguide','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 08:44:34','2026-03-25 08:47:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:44:34','2026-03-25 08:44:34',0), +(99,'http://87.106.117.190/carbon-fiber-glasfaser-filamente/','55:5b88f6b1ef21bbab9679f9205830a80c',464,'post','post',0,0,NULL,NULL,'Carbon Fiber & Glasfaser: Hochleistungs-Filamente richtig drucken','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 08:47:23','2026-03-25 08:47:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:47:23','2026-03-25 08:47:23',0), +(100,'http://87.106.117.190/nylon-pa-filament-drucken/','48:9c92f2fc21493094d036d993c8476061',465,'post','post',0,0,NULL,NULL,'Nylon (PA6 / PA12): Zähigkeit und Temperaturbeständigkeit','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,1,NULL,'2026-03-25 08:47:23','2026-03-25 08:47:44',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 08:47:23','2026-03-25 08:47:23',0), +(101,'http://87.106.117.190/guide-1-pla-perfekt-einstellen-2026-03-25/','64:4c6976dc0110547914dd844410cb9e69',469,'post','post',0,0,NULL,NULL,'Guide #1: PLA perfekt einstellen (2026-03-25)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-25 09:15:03','2026-03-25 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 09:15:02','2026-03-25 09:15:02',0), +(102,'http://87.106.117.190/guide-2-stringing-reduzieren-2026-03-25/','62:74ac6a78b60ca7aed49905090a656231',486,'post','post',0,0,NULL,NULL,'Guide #2: Stringing reduzieren (2026-03-25)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-25 17:15:03','2026-03-25 17:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-25 17:15:03','2026-03-25 17:15:03',0), +(103,'http://87.106.117.190/guide-1-warping-vermeiden-2026-03-26/','59:a141fbc453aa322c0cdbce112e27210c',492,'post','post',0,0,NULL,NULL,'Guide #1: Warping vermeiden (2026-03-26)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-26 09:15:03','2026-03-26 09:15:03',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-26 09:15:03','2026-03-26 09:15:03',0), +(104,'http://87.106.117.190/guide-2-petg-ohne-frust-2026-03-26/','57:2b369aead432b35d878c106165e27526',499,'post','post',0,0,NULL,NULL,'Guide #2: PETG ohne Frust (2026-03-26)','publish',NULL,0,NULL,NULL,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,'2026-03-26 17:15:04','2026-03-26 17:15:04',1,NULL,NULL,NULL,NULL,0,NULL,2,'2026-03-26 17:15:03','2026-03-26 17:15:03',0); +/*!40000 ALTER TABLE `wp_yoast_indexable` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_yoast_indexable_hierarchy` +-- + +DROP TABLE IF EXISTS `wp_yoast_indexable_hierarchy`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_yoast_indexable_hierarchy` ( + `indexable_id` int(11) unsigned NOT NULL, + `ancestor_id` int(11) unsigned NOT NULL, + `depth` int(11) unsigned DEFAULT NULL, + `blog_id` bigint(20) NOT NULL DEFAULT 1, + PRIMARY KEY (`indexable_id`,`ancestor_id`), + KEY `indexable_id` (`indexable_id`), + KEY `ancestor_id` (`ancestor_id`), + KEY `depth` (`depth`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_yoast_indexable_hierarchy` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_yoast_indexable_hierarchy` WRITE; +/*!40000 ALTER TABLE `wp_yoast_indexable_hierarchy` DISABLE KEYS */; +INSERT INTO `wp_yoast_indexable_hierarchy` VALUES +(3,0,0,1), +(4,0,0,1), +(5,0,0,1), +(6,0,0,1), +(7,0,0,1), +(8,0,0,1), +(9,0,0,1), +(10,0,0,1), +(11,0,0,1), +(12,0,0,1), +(13,0,0,1), +(14,0,0,1), +(16,0,0,1), +(17,0,0,1), +(18,0,0,1), +(19,0,0,1), +(20,0,0,1), +(21,0,0,1), +(22,0,0,1), +(23,0,0,1), +(24,0,0,1), +(25,0,0,1), +(26,0,0,1), +(27,0,0,1), +(28,0,0,1), +(29,0,0,1), +(30,0,0,1), +(31,0,0,1), +(32,0,0,1), +(33,0,0,1), +(34,0,0,1), +(35,0,0,1), +(36,0,0,1), +(37,0,0,1), +(38,0,0,1), +(39,0,0,1), +(40,0,0,1), +(41,0,0,1), +(42,0,0,1), +(43,0,0,1), +(44,0,0,1), +(45,0,0,1), +(46,0,0,1), +(47,0,0,1), +(48,0,0,1), +(49,0,0,1), +(50,0,0,1), +(51,0,0,1), +(52,0,0,1), +(53,0,0,1), +(54,0,0,1), +(55,0,0,1), +(56,0,0,1), +(57,0,0,1), +(58,0,0,1), +(59,0,0,1), +(60,0,0,1), +(61,0,0,1), +(62,0,0,1), +(63,0,0,1), +(64,0,0,1), +(65,0,0,1), +(66,0,0,1), +(67,0,0,1), +(68,0,0,1), +(69,0,0,1), +(70,0,0,1), +(71,0,0,1), +(72,0,0,1), +(73,0,0,1), +(74,0,0,1), +(75,0,0,1), +(76,0,0,1), +(77,0,0,1), +(78,0,0,1), +(79,0,0,1), +(80,0,0,1), +(81,0,0,1), +(82,0,0,1), +(83,0,0,1), +(84,0,0,1), +(89,0,0,1), +(90,0,0,1), +(91,0,0,1), +(92,0,0,1), +(93,0,0,1), +(94,0,0,1), +(95,0,0,1), +(96,0,0,1), +(97,0,0,1), +(98,0,0,1), +(99,0,0,1), +(100,0,0,1), +(101,0,0,1), +(102,0,0,1), +(103,0,0,1), +(104,0,0,1); +/*!40000 ALTER TABLE `wp_yoast_indexable_hierarchy` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_yoast_migrations` +-- + +DROP TABLE IF EXISTS `wp_yoast_migrations`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_yoast_migrations` ( + `id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `version` varchar(191) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `wp_yoast_migrations_version` (`version`) +) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_yoast_migrations` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_yoast_migrations` WRITE; +/*!40000 ALTER TABLE `wp_yoast_migrations` DISABLE KEYS */; +INSERT INTO `wp_yoast_migrations` VALUES +(1,'20171228151840'), +(2,'20171228151841'), +(3,'20190529075038'), +(4,'20191011111109'), +(5,'20200408101900'), +(6,'20200420073606'), +(7,'20200428123747'), +(8,'20200428194858'), +(9,'20200429105310'), +(10,'20200430075614'), +(11,'20200430150130'), +(12,'20200507054848'), +(13,'20200513133401'), +(14,'20200609154515'), +(15,'20200616130143'), +(16,'20200617122511'), +(17,'20200702141921'), +(18,'20200728095334'), +(19,'20201202144329'), +(20,'20201216124002'), +(21,'20201216141134'), +(22,'20210817092415'), +(23,'20211020091404'), +(24,'20230417083836'), +(25,'20260105111111'); +/*!40000 ALTER TABLE `wp_yoast_migrations` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_yoast_primary_term` +-- + +DROP TABLE IF EXISTS `wp_yoast_primary_term`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_yoast_primary_term` ( + `id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `post_id` bigint(20) DEFAULT NULL, + `term_id` bigint(20) DEFAULT NULL, + `taxonomy` varchar(32) NOT NULL, + `created_at` datetime DEFAULT NULL, + `updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(), + `blog_id` bigint(20) NOT NULL DEFAULT 1, + PRIMARY KEY (`id`), + KEY `post_taxonomy` (`post_id`,`taxonomy`), + KEY `post_term` (`post_id`,`term_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_yoast_primary_term` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_yoast_primary_term` WRITE; +/*!40000 ALTER TABLE `wp_yoast_primary_term` DISABLE KEYS */; +/*!40000 ALTER TABLE `wp_yoast_primary_term` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + +-- +-- Table structure for table `wp_yoast_seo_links` +-- + +DROP TABLE IF EXISTS `wp_yoast_seo_links`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `wp_yoast_seo_links` ( + `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `url` varchar(255) DEFAULT NULL, + `post_id` bigint(20) unsigned DEFAULT NULL, + `target_post_id` bigint(20) unsigned DEFAULT NULL, + `type` varchar(8) DEFAULT NULL, + `indexable_id` int(11) unsigned DEFAULT NULL, + `target_indexable_id` int(11) unsigned DEFAULT NULL, + `height` int(11) unsigned DEFAULT NULL, + `width` int(11) unsigned DEFAULT NULL, + `size` int(11) unsigned DEFAULT NULL, + `language` varchar(32) DEFAULT NULL, + `region` varchar(32) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `link_direction` (`post_id`,`type`), + KEY `indexable_link_direction` (`indexable_id`,`type`), + KEY `url_index` (`url`), + KEY `target_indexable_id_index` (`target_indexable_id`) +) ENGINE=InnoDB AUTO_INCREMENT=606 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_uca1400_ai_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `wp_yoast_seo_links` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `wp_yoast_seo_links` WRITE; +/*!40000 ALTER TABLE `wp_yoast_seo_links` DISABLE KEYS */; +INSERT INTO `wp_yoast_seo_links` VALUES +(15,'https://chat.whatsapp.com/DaobPlhXwmLDyMZgWsBldP?mode=gi_t',8,NULL,'external',3,NULL,NULL,NULL,NULL,NULL,NULL), +(16,'https://chat.whatsapp.com/DaobPlhXwmLDyMZgWsBldP?mode=gi_t',8,NULL,'external',3,NULL,NULL,NULL,NULL,NULL,NULL), +(72,'https://media.printables.com/media/prints/0a057554-5d26-47e3-859f-d89a2f25cc70/images/12077886_f7c4a675-a6d0-4d2b-95e7-bd652a4e8d72_b7dbd73d-8b99-4590-ab42-92126752c238/3fcbdc00-4b35-11f0-91a5-cd1b13c8b40b.jpg',8,NULL,'image-ex',3,NULL,NULL,NULL,NULL,NULL,NULL), +(73,'https://media.printables.com/media/prints/ae3b0611-3afb-49cd-972b-5654e8f26f45/images/12103515_7c813668-02e3-4f01-b44d-c8528efc92cc_c32c58bf-894e-44db-b169-fcdf1f5a42c8/parcel-opener-by-prntmkr.png',8,NULL,'image-ex',3,NULL,NULL,NULL,NULL,NULL,NULL), +(74,'https://media.printables.com/media/prints/dffb0ea3-3f87-4b52-9ca3-d53d83920389/images/12088739_bf3361d8-350b-49f5-b7a9-12c33eeb921e_6a2f801b-3d39-4b2c-94ac-a741ebb3d1a8/img_20260218_095255087_hdr_ae.jpg',8,NULL,'image-ex',3,NULL,NULL,NULL,NULL,NULL,NULL), +(225,'/faq/',12,51,'internal',6,12,NULL,NULL,NULL,NULL,NULL), +(226,'https://chat.whatsapp.com/DaobPlhXwmLDyMZgWsBldP?mode=gi_t',12,NULL,'external',6,NULL,NULL,NULL,NULL,NULL,NULL), +(227,'https://chat.whatsapp.com/DaobPlhXwmLDyMZgWsBldP?mode=gi_t',51,NULL,'external',12,NULL,NULL,NULL,NULL,NULL,NULL), +(229,'https://www.printables.com/model/1616074-folding-wall-hook',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(302,'/guides/',339,NULL,'internal',60,NULL,NULL,NULL,NULL,NULL,NULL), +(303,'/faq/',339,51,'internal',60,12,NULL,NULL,NULL,NULL,NULL), +(304,'/guide-1-pla-perfekt-einstellen-2026-03-05/',340,128,'internal',61,20,NULL,NULL,NULL,NULL,NULL), +(305,'/guide-2-stringing-reduzieren-2026-03-05/',340,133,'internal',61,21,NULL,NULL,NULL,NULL,NULL), +(306,'/guides/',340,NULL,'internal',61,NULL,NULL,NULL,NULL,NULL,NULL), +(307,'/inspiration/',340,NULL,'internal',61,NULL,NULL,NULL,NULL,NULL,NULL), +(334,'https://chat.whatsapp.com/DaobPlhXwmLDyMZgWsBldP?mode=gi_t',58,NULL,'external',13,NULL,NULL,NULL,NULL,NULL,NULL), +(335,'https://chat.whatsapp.com/DaobPlhXwmLDyMZgWsBldP?mode=gi_t',50,NULL,'external',11,NULL,NULL,NULL,NULL,NULL,NULL), +(350,'mailto:[deine@email.de]',14,NULL,'external',9,NULL,NULL,NULL,NULL,NULL,NULL), +(351,'https://www.bfdi.bund.de',15,NULL,'external',10,NULL,NULL,NULL,NULL,NULL,NULL), +(366,'/guides/',335,NULL,'internal',59,NULL,NULL,NULL,NULL,NULL,NULL), +(367,'/faq/',335,51,'internal',59,12,NULL,NULL,NULL,NULL,NULL), +(368,'/guides/',331,NULL,'internal',58,NULL,NULL,NULL,NULL,NULL,NULL), +(369,'/faq/',331,51,'internal',58,12,NULL,NULL,NULL,NULL,NULL), +(370,'/guides/',314,NULL,'internal',55,NULL,NULL,NULL,NULL,NULL,NULL), +(371,'/faq/',314,51,'internal',55,12,NULL,NULL,NULL,NULL,NULL), +(372,'/guides/',310,NULL,'internal',54,NULL,NULL,NULL,NULL,NULL,NULL), +(373,'/faq/',310,51,'internal',54,12,NULL,NULL,NULL,NULL,NULL), +(374,'/guides/',304,NULL,'internal',53,NULL,NULL,NULL,NULL,NULL,NULL), +(375,'/faq/',304,51,'internal',53,12,NULL,NULL,NULL,NULL,NULL), +(376,'/guides/',300,NULL,'internal',52,NULL,NULL,NULL,NULL,NULL,NULL), +(377,'/faq/',300,51,'internal',52,12,NULL,NULL,NULL,NULL,NULL), +(378,'/guide-2-stringing-reduzieren-2026-03-05/',290,133,'internal',50,21,NULL,NULL,NULL,NULL,NULL), +(379,'/guides/',290,NULL,'internal',50,NULL,NULL,NULL,NULL,NULL,NULL), +(380,'/faq/',290,51,'internal',50,12,NULL,NULL,NULL,NULL,NULL), +(381,'/guides/',294,NULL,'internal',51,NULL,NULL,NULL,NULL,NULL,NULL), +(382,'/faq/',294,51,'internal',51,12,NULL,NULL,NULL,NULL,NULL), +(383,'/guides/',321,NULL,'internal',56,NULL,NULL,NULL,NULL,NULL,NULL), +(384,'/faq/',321,51,'internal',56,12,NULL,NULL,NULL,NULL,NULL), +(385,'/guides/',325,NULL,'internal',57,NULL,NULL,NULL,NULL,NULL,NULL), +(386,'/faq/',325,51,'internal',57,12,NULL,NULL,NULL,NULL,NULL), +(394,'https://github.com/SoftFever/OrcaSlicer/releases',375,NULL,'external',62,NULL,NULL,NULL,NULL,NULL,NULL), +(395,'https://orca.tools',375,NULL,'external',62,NULL,NULL,NULL,NULL,NULL,NULL), +(396,'/erstes-modell-drucken/',12,340,'internal',6,61,NULL,NULL,NULL,NULL,NULL), +(397,'/pla-perfekt-einstellen/',12,290,'internal',6,50,NULL,NULL,NULL,NULL,NULL), +(398,'/masshaltigkeit-verbessern/',12,331,'internal',6,58,NULL,NULL,NULL,NULL,NULL), +(399,'/petg-ohne-frust/',12,304,'internal',6,53,NULL,NULL,NULL,NULL,NULL), +(400,'/tpu-drucken/',12,310,'internal',6,54,NULL,NULL,NULL,NULL,NULL), +(401,'/asa-abs-grundlagen/',12,314,'internal',6,55,NULL,NULL,NULL,NULL,NULL), +(402,'/warping-vermeiden/',12,300,'internal',6,52,NULL,NULL,NULL,NULL,NULL), +(403,'/stringing-reduzieren/',12,294,'internal',6,51,NULL,NULL,NULL,NULL,NULL), +(404,'/layer-separation-beheben/',12,339,'internal',6,60,NULL,NULL,NULL,NULL,NULL), +(405,'/support-richtig-setzen/',12,321,'internal',6,56,NULL,NULL,NULL,NULL,NULL), +(406,'/slicer-profil-optimieren/',12,325,'internal',6,57,NULL,NULL,NULL,NULL,NULL), +(407,'/druckzeit-vs-qualitaet/',12,335,'internal',6,59,NULL,NULL,NULL,NULL,NULL), +(408,'/guide-orcaslicer-einsteiger/',12,375,'internal',6,62,NULL,NULL,NULL,NULL,NULL), +(409,'/guide-cura-tipps/',12,376,'internal',6,63,NULL,NULL,NULL,NULL,NULL), +(410,'/guide-bambu-studio/',12,377,'internal',6,64,NULL,NULL,NULL,NULL,NULL), +(411,'https://www.prusa3d.com/page/prusaslicer_424/',394,NULL,'external',65,NULL,NULL,NULL,NULL,NULL,NULL), +(412,'/guide-prusaslicer/',12,394,'internal',6,65,NULL,NULL,NULL,NULL,NULL), +(413,'/erste-schicht-kalibrieren/',12,398,'internal',6,67,NULL,NULL,NULL,NULL,NULL), +(414,'/retraction-kalibrieren/',12,397,'internal',6,66,NULL,NULL,NULL,NULL,NULL), +(415,'/unterextrusion-beheben/',12,401,'internal',6,68,NULL,NULL,NULL,NULL,NULL), +(416,'/flow-rate-e-steps-kalibrieren/',12,404,'internal',6,70,NULL,NULL,NULL,NULL,NULL), +(417,'/pressure-advance-kalibrieren/',12,403,'internal',6,69,NULL,NULL,NULL,NULL,NULL), +(418,'/infill-muster-dichte-wandstaerke/',12,407,'internal',6,72,NULL,NULL,NULL,NULL,NULL), +(419,'/bruecken-ueberhange-drucken/',12,406,'internal',6,71,NULL,NULL,NULL,NULL,NULL), +(420,'/input-shaping-kalibrieren/',12,409,'internal',6,73,NULL,NULL,NULL,NULL,NULL), +(421,'/wissen/',8,12,'internal',3,6,NULL,NULL,NULL,NULL,NULL), +(422,'https://www.printables.com/model/1605212',8,NULL,'external',3,NULL,NULL,NULL,NULL,NULL,NULL), +(423,'https://www.printables.com/model/1608803',8,NULL,'external',3,NULL,NULL,NULL,NULL,NULL,NULL), +(424,'https://www.printables.com/model/1606655',8,NULL,'external',3,NULL,NULL,NULL,NULL,NULL,NULL), +(425,'/wissen/',8,12,'internal',3,6,NULL,NULL,NULL,NULL,NULL), +(426,'/pla-perfekt-einstellen/',8,290,'internal',3,50,NULL,NULL,NULL,NULL,NULL), +(427,'/stringing-reduzieren/',8,294,'internal',3,51,NULL,NULL,NULL,NULL,NULL), +(428,'/petg-ohne-frust-drucken/',8,NULL,'internal',3,NULL,NULL,NULL,NULL,NULL,NULL), +(429,'/warping-vermeiden/',8,300,'internal',3,52,NULL,NULL,NULL,NULL,NULL), +(430,'/tpu-drucken/',8,310,'internal',3,54,NULL,NULL,NULL,NULL,NULL), +(431,'/slicer-profil-optimieren/',8,325,'internal',3,57,NULL,NULL,NULL,NULL,NULL), +(432,'/wissen/',8,12,'internal',3,6,NULL,NULL,NULL,NULL,NULL), +(433,'/models/',8,10,'internal',3,5,NULL,NULL,NULL,NULL,NULL), +(434,'/temperaturturm-kalibrieren/',12,411,'internal',6,74,NULL,NULL,NULL,NULL,NULL), +(435,'/druckbett-leveln-z-offset/',12,413,'internal',6,76,NULL,NULL,NULL,NULL,NULL), +(436,'/duesenwechsel-nozzle-upgrade/',12,412,'internal',6,75,NULL,NULL,NULL,NULL,NULL), +(437,'/adaptive-layer-height/',12,417,'internal',6,77,NULL,NULL,NULL,NULL,NULL), +(438,'/multi-material-ams/',12,418,'internal',6,78,NULL,NULL,NULL,NULL,NULL), +(439,'/nylon-pa-drucken/',12,422,'internal',6,81,NULL,NULL,NULL,NULL,NULL), +(440,'/elefantenfuss-beheben/',12,420,'internal',6,79,NULL,NULL,NULL,NULL,NULL), +(441,'/ironing-top-oberflaechen/',12,421,'internal',6,80,NULL,NULL,NULL,NULL,NULL), +(442,'/naht-seam-verstecken/',12,424,'internal',6,82,NULL,NULL,NULL,NULL,NULL), +(443,'/filament-trocknen/',12,425,'internal',6,83,NULL,NULL,NULL,NULL,NULL), +(444,'/drucker-kaufberatung-2026/',12,426,'internal',6,84,NULL,NULL,NULL,NULL,NULL), +(456,'/speed-tower-druckgeschwindigkeit/',12,436,'internal',6,89,NULL,NULL,NULL,NULL,NULL), +(478,'/modifier-meshes-paint-on-supports/',12,442,'internal',6,90,NULL,NULL,NULL,NULL,NULL), +(479,'https://www.printables.com/model/1641847-stargate-with-a-working-iris',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(501,'/fuzzy-skin-strukturierte-oberflaechen/',12,446,'internal',6,91,NULL,NULL,NULL,NULL,NULL), +(502,'/klipper-grundlagen-ersteinrichtung/',12,449,'internal',6,92,NULL,NULL,NULL,NULL,NULL), +(503,'/bed-adhesion-haftung/',12,450,'internal',6,93,NULL,NULL,NULL,NULL,NULL), +(504,'https://www.printables.com/model/417152-gridfinity-rebuilt-in-openscad',454,NULL,'external',94,NULL,NULL,NULL,NULL,NULL,NULL), +(505,'/gridfinity-ordnungssystem/',12,454,'internal',6,94,NULL,NULL,NULL,NULL,NULL), +(506,'/3d-drucke-nachbearbeiten/',12,455,'internal',6,95,NULL,NULL,NULL,NULL,NULL), +(515,'/verstopfte-duese-diagnose-reinigung/',12,459,'internal',6,96,NULL,NULL,NULL,NULL,NULL), +(516,'/resin-druck-grundlagen/',12,460,'internal',6,97,NULL,NULL,NULL,NULL,NULL), +(517,'/tpu-flexible-filamente-drucken/',12,463,'internal',6,98,NULL,NULL,NULL,NULL,NULL), +(518,'/carbon-fiber-glasfaser-filamente/',12,464,'internal',6,99,NULL,NULL,NULL,NULL,NULL), +(519,'/nylon-pa-filament-drucken/',12,465,'internal',6,100,NULL,NULL,NULL,NULL,NULL), +(532,'https://www.printables.com/model/1627854-any-box-generator',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(550,'/',10,NULL,'internal',5,2,NULL,NULL,NULL,NULL,NULL), +(551,'/wissen/',10,12,'internal',5,6,NULL,NULL,NULL,NULL,NULL), +(552,'/tools-filament-rechner/',10,13,'internal',5,8,NULL,NULL,NULL,NULL,NULL), +(553,'/resources/',10,11,'internal',5,7,NULL,NULL,NULL,NULL,NULL), +(554,'/news/',10,9,'internal',5,4,NULL,NULL,NULL,NULL,NULL), +(555,'/showcase/',10,58,'internal',5,13,NULL,NULL,NULL,NULL,NULL), +(556,'/faq/',10,51,'internal',5,12,NULL,NULL,NULL,NULL,NULL), +(557,'https://chat.whatsapp.com/BxdLHR5JvuXKqLYLLHRmjX',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(558,'/model-archiv/',10,72,'internal',5,17,NULL,NULL,NULL,NULL,NULL), +(559,'https://chat.whatsapp.com/BxdLHR5JvuXKqLYLLHRmjX',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(560,'/impressum/',10,14,'internal',5,9,NULL,NULL,NULL,NULL,NULL), +(561,'/datenschutz/',10,15,'internal',5,10,NULL,NULL,NULL,NULL,NULL), +(562,'/',72,NULL,'internal',17,2,NULL,NULL,NULL,NULL,NULL), +(563,'/wissen/',72,12,'internal',17,6,NULL,NULL,NULL,NULL,NULL), +(564,'/tools-filament-rechner/',72,13,'internal',17,8,NULL,NULL,NULL,NULL,NULL), +(565,'/resources/',72,11,'internal',17,7,NULL,NULL,NULL,NULL,NULL), +(566,'/models/',72,10,'internal',17,5,NULL,NULL,NULL,NULL,NULL), +(567,'/news/',72,9,'internal',17,4,NULL,NULL,NULL,NULL,NULL), +(568,'/showcase/',72,58,'internal',17,13,NULL,NULL,NULL,NULL,NULL), +(569,'/faq/',72,51,'internal',17,12,NULL,NULL,NULL,NULL,NULL), +(570,'https://chat.whatsapp.com/BxdLHR5JvuXKqLYLLHRmjX',72,NULL,'external',17,NULL,NULL,NULL,NULL,NULL,NULL), +(571,'https://chat.whatsapp.com/BxdLHR5JvuXKqLYLLHRmjX',72,NULL,'external',17,NULL,NULL,NULL,NULL,NULL,NULL), +(572,'/impressum/',72,14,'internal',17,9,NULL,NULL,NULL,NULL,NULL), +(573,'/datenschutz/',72,15,'internal',17,10,NULL,NULL,NULL,NULL,NULL), +(574,'/wp-content/uploads/v2-models/auto/stargate-with-a-working-iris.jpg',10,NULL,'image-in',5,NULL,NULL,NULL,NULL,NULL,NULL), +(575,'/wp-content/uploads/v2-models/auto/folding-wall-hook.jpg',10,NULL,'image-in',5,NULL,NULL,NULL,NULL,NULL,NULL), +(577,'/wp-content/uploads/v2-models/auto/any-box-generator.jpg',10,NULL,'image-in',5,NULL,NULL,NULL,NULL,NULL,NULL), +(584,'https://www.printables.com/model/1644379-dupont-connector-bridge',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(585,'https://www.printables.com/model/1639572-knurled-knobs-for-m25-to-m8-internal-hex-screw',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(589,'/wp-content/uploads/v2-models/auto/dupont-connector-bridge.jpg',10,NULL,'image-in',5,NULL,NULL,NULL,NULL,NULL,NULL), +(590,'/wp-content/uploads/v2-models/auto/knurled-knobs-for-m2-5-to-m8-i.jpg',10,NULL,'image-in',5,NULL,NULL,NULL,NULL,NULL,NULL), +(595,'https://makerworld.com/en/models/116652-2024-earring',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(596,'https://makerworld.com/en/models/116653-plato-award',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(597,'https://makerworld.com/en/models/116656-arborcycle-calendar',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(598,'https://makerworld.com/en/models/116658-ballerina-silhouette-figure-decoration',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(599,'https://makerworld.com/en/models/116660-bento-smoke-stack-stage-2-air-filtration',10,NULL,'external',5,NULL,NULL,NULL,NULL,NULL,NULL), +(600,'https://image.thum.io/get/width/640/https://makerworld.com/en/models/116652-2024-earring',10,NULL,'image-ex',5,NULL,NULL,NULL,NULL,NULL,NULL), +(601,'https://image.thum.io/get/width/640/https://makerworld.com/en/models/116653-plato-award',10,NULL,'image-ex',5,NULL,NULL,NULL,NULL,NULL,NULL), +(603,'/wp-content/uploads/v2-models/auto/ballerina-silhouette-figure-de.jpg',10,NULL,'image-in',5,NULL,NULL,NULL,NULL,NULL,NULL), +(604,'/wp-content/uploads/v2-models/auto/bento-smoke-stack-stage-2-air-.jpg',10,NULL,'image-in',5,NULL,NULL,NULL,NULL,NULL,NULL), +(605,'/wp-content/uploads/v2-models/auto/arborcycle-calendar.jpg',10,NULL,'image-in',5,NULL,NULL,NULL,NULL,NULL,NULL); +/*!40000 ALTER TABLE `wp_yoast_seo_links` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */; + +-- Dump completed on 2026-03-29 0:14:10 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..c9961b4 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,156 @@ +{ + "name": "molzi3d-next", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "node-html-markdown": "^2.0.0" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "license": "ISC" + }, + "node_modules/css-select": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.2.2.tgz", + "integrity": "sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz", + "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/node-html-markdown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-html-markdown/-/node-html-markdown-2.0.0.tgz", + "integrity": "sha512-DqUC3GGP7pwSYxS93SwHoP+qCw78xcMP6C6H2DuC8rPD2AweJRjBzQb5SdXpKtDlqAQ7hVotJcfhgU7hU5Gthw==", + "license": "MIT", + "dependencies": { + "node-html-parser": "^6.1.13" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/node-html-parser": { + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/node-html-parser/-/node-html-parser-6.1.13.tgz", + "integrity": "sha512-qIsTMOY4C/dAa5Q5vsobRpOOvPfC4pB61UVW2uSwZNUp0QU/jCekTal1vMmbO0DgdHeLUJpv/ARmDqErVxA3Sg==", + "license": "MIT", + "dependencies": { + "css-select": "^5.1.0", + "he": "1.2.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..11685e1 --- /dev/null +++ b/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "node-html-markdown": "^2.0.0" + } +} diff --git a/scripts/convert-content.mjs b/scripts/convert-content.mjs new file mode 100644 index 0000000..e14df05 --- /dev/null +++ b/scripts/convert-content.mjs @@ -0,0 +1,137 @@ +/** + * Konvertiert WordPress HTML-Exports in saubere Markdown-Dateien + * mit Frontmatter fuer das Next.js-Projekt. + */ +import fs from "fs"; +import path from "path"; +import { NodeHtmlMarkdown } from "node-html-markdown"; + +const BACKUP_POSTS = path.resolve("backup/content/posts"); +const BACKUP_PAGES = path.resolve("backup/content/pages"); +const OUT_GUIDES = path.resolve("app/src/content/guides"); +const OUT_PAGES = path.resolve("app/src/content/pages"); + +// Duplikate/veraltete Slugs (die mit Datum-Suffix) +const SKIP_SLUGS = [ + "guide-1-pla-perfekt-einstellen-2026-03-25", + "guide-2-stringing-reduzieren-2026-03-25", + "guide-1-warping-vermeiden-2026-03-26", + "guide-2-petg-ohne-frust-2026-03-26", +]; + +// Kategorie-Zuordnung basierend auf Slug-Patterns +const categorize = (slug, title) => { + const s = slug.toLowerCase(); + const t = title.toLowerCase(); + + if (s.includes("guide-orcaslicer") || s.includes("guide-cura") || s.includes("guide-bambu") || s.includes("guide-prusaslicer") || s.includes("slicer")) + return "Slicer"; + if (s.includes("pla") || s.includes("petg") || s.includes("tpu") || s.includes("asa") || s.includes("abs") || s.includes("nylon") || s.includes("carbon") || s.includes("resin") || s.includes("filament") || s.includes("bed-adhesion")) + return "Materialien"; + if (s.includes("stringing") || s.includes("warping") || s.includes("unterextrusion") || s.includes("layer-separation") || s.includes("elefantenfuss") || s.includes("verstopfte")) + return "Fehlerbehebung"; + if (s.includes("retraction") || s.includes("flow-rate") || s.includes("pressure-advance") || s.includes("input-shaping") || s.includes("temperaturturm") || s.includes("speed-tower") || s.includes("erste-schicht") || s.includes("druckbett-leveln")) + return "Kalibrierung"; + if (s.includes("adaptive") || s.includes("modifier") || s.includes("ironing") || s.includes("fuzzy") || s.includes("multi-material") || s.includes("klipper")) + return "Fortgeschritten"; + if (s.includes("erstes-modell") || s.includes("support") || s.includes("infill") || s.includes("duesenwechsel") || s.includes("druckzeit") || s.includes("masshaltigkeit") || s.includes("bruecken") || s.includes("nachbearbeiten") || s.includes("gridfinity") || s.includes("naht")) + return "Grundlagen"; + + return "Allgemein"; +}; + +// Schwierigkeitsgrad +const difficulty = (slug, category) => { + if (slug.includes("erstes-modell") || slug.includes("erste-schicht") || slug.includes("druckbett-leveln")) + return "einsteiger"; + if (category === "Fortgeschritten" || slug.includes("klipper") || slug.includes("pressure-advance") || slug.includes("input-shaping") || slug.includes("carbon") || slug.includes("nylon-pa")) + return "experte"; + return "fortgeschritten"; +}; + +const nhm = new NodeHtmlMarkdown({ + keepDataImages: false, + useLinkReferenceDefinitions: false, +}); + +const processFile = (filePath, outDir) => { + const raw = fs.readFileSync(filePath, "utf-8"); + + // Frontmatter extrahieren + const fmMatch = raw.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/); + if (!fmMatch) return null; + + const fmBlock = fmMatch[1]; + const htmlContent = fmMatch[2].trim(); + + // Felder parsen + const titleMatch = fmBlock.match(/title:\s*"(.+?)"/); + const slugMatch = fmBlock.match(/slug:\s*"(.+?)"/); + const excerptMatch = fmBlock.match(/excerpt:\s*"(.*)"/); + + const title = titleMatch?.[1] ?? path.basename(filePath, ".html"); + const slug = slugMatch?.[1] ?? path.basename(filePath, ".html"); + const excerpt = excerptMatch?.[1] ?? ""; + + if (SKIP_SLUGS.includes(slug)) { + console.log(` SKIP (Duplikat): ${slug}`); + return null; + } + + // HTML -> Markdown + let markdown = nhm.translate(htmlContent); + + // Cleanup: Elementor-Artefakte, leere Divs, etc. + markdown = markdown + .replace(/\[vc_[^\]]*\]/g, "") + .replace(/\[\/vc_[^\]]*\]/g, "") + .replace(/\[elementor[^\]]*\]/g, "") + .replace(/\n{3,}/g, "\n\n") + .trim(); + + const cat = categorize(slug, title); + const diff = difficulty(slug, cat); + + const frontmatter = [ + "---", + `title: "${title}"`, + `slug: "${slug}"`, + `category: "${cat}"`, + `difficulty: "${diff}"`, + `excerpt: "${excerpt}"`, + "---", + ].join("\n"); + + const output = `${frontmatter}\n\n${markdown}\n`; + const outPath = path.join(outDir, `${slug}.md`); + fs.writeFileSync(outPath, output, "utf-8"); + console.log(` OK: ${slug} (${cat}, ${diff})`); + return slug; +}; + +// Main +console.log("=== WordPress -> Markdown Konvertierung ===\n"); + +fs.mkdirSync(OUT_GUIDES, { recursive: true }); +fs.mkdirSync(OUT_PAGES, { recursive: true }); + +// Posts -> Guides +console.log("Posts -> Guides:"); +const postFiles = fs.readdirSync(BACKUP_POSTS).filter((f) => f.endsWith(".html")); +let postCount = 0; +for (const file of postFiles) { + const result = processFile(path.join(BACKUP_POSTS, file), OUT_GUIDES); + if (result) postCount++; +} +console.log(`\n${postCount} Guides konvertiert.\n`); + +// Pages +console.log("Pages:"); +const pageFiles = fs.readdirSync(BACKUP_PAGES).filter((f) => f.endsWith(".html")); +let pageCount = 0; +for (const file of pageFiles) { + const result = processFile(path.join(BACKUP_PAGES, file), OUT_PAGES); + if (result) pageCount++; +} +console.log(`\n${pageCount} Pages konvertiert.`); +console.log(`\nFertig! Output: ${OUT_GUIDES} und ${OUT_PAGES}`);