FontFX — Canva 中文斜体字特效插件|描边、霓虹、渐层一键完成 @font-face{font-family:'Noto Serif TC';font-weight:100 900;font-display:swap;src:url('fonts/noto-serif-tc-900.woff2') format('woff2');} :root { --bg: #FAF8F5; --bg-warm: #F3EEE7; --bg-card: #FFFFFF; --bg-soft: #F7F3EE; --bg-accent: #EFE9E0; --border: rgba(160,145,125,0.18); --border-hover: rgba(160,140,120,0.32); --text: #2E2A26; --text-2: #6B6158; --text-3: #A89C90; --morandi-rose: #B5A08A; --morandi-mauve: #9E9488; --morandi-sage: #8E9E8C; --morandi-blue: #8C9AA5; --morandi-sand: #BFB09C; --morandi-peach: #C4A68E; --accent: #B08060; --accent-deep: #8C6244; --accent-light: #EDE4DA; --lavender: #9E9488; --lavender-light: #E8E3DC; --sage: #8E9E8C; --sage-light: #E0E8DE; --grad: linear-gradient(135deg, #B08060, #C4A68E); --grad-soft: linear-gradient(135deg, #EDE4DA, #E8E3DC); --font-h: 'Noto Serif TC', serif; --font-b: 'PingFang TC', 'Noto Sans TC', 'Microsoft JhengHei', 'Heiti TC', sans-serif; --font-m: 'SF Mono', 'Cascadia Code', 'Fira Code', Menlo, Consolas, monospace; --ease: cubic-bezier(0.16,1,0.3,1); --spring: cubic-bezier(0.34,1.56,0.64,1); --shadow-sm: 0 1px 3px rgba(60,50,40,0.04), 0 1px 2px rgba(60,50,40,0.03); --shadow-md: 0 4px 16px rgba(60,50,40,0.06), 0 2px 4px rgba(60,50,40,0.04); --shadow-lg: 0 12px 40px rgba(60,50,40,0.08), 0 4px 12px rgba(60,50,40,0.04); } *,*::before,*::after{margin:0;padding:0;box-sizing:border-box;} html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--accent) var(--bg);} body{font-family:var(--font-b);background:var(--bg);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased;line-height:1.7;} ::selection{background:var(--accent-light);color:var(--accent-deep);} img{max-width:100%;height:auto;} @tests/test_media_scanner.py(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;transition-duration:0.01ms!important;scroll-behavior:auto!important;}} :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4