@font-face{font-family:Cubic11;src:url(/fonts/Cubic_11.woff2) format("woff2");font-display:swap}:root{color-scheme:dark;--bg: #17131f;--surface: #221c2f;--surface-2: #2c2440;--text: #ece4f7;--muted: #a69bbd;--line: #a99bd1;--shadow: #07050b;--hl: #3a3054;--accent: #ff6b52;--on-accent: #17131f;--c-red: #ff6b52;--c-teal: #43c2b1;--c-blue: #6fa8ff;--c-gold: #f2be4a;--c-purple: #a58bf0;--c-green: #74c66d;--c-orange: #ff9f43;--c-pink: #ff8fc7;--c-cyan: #5fd4ff;--pf: "Cubic11", "Noto Sans TC", monospace;--pb: 11;--bf: "Noto Sans TC", system-ui, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--bf);font-size:17px;line-height:1.8;background-image:radial-gradient(rgba(169,155,209,.12) 1px,transparent 1px);background-size:8px 8px}img{max-width:100%;height:auto;display:block}a{color:inherit}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:3px dashed var(--accent);outline-offset:4px}.wrap{max-width:1160px;margin:0 auto;padding:0 16px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.px{font-family:var(--pf);font-weight:400;letter-spacing:0}.x1{font-size:calc(var(--pb) * 1px);line-height:calc(var(--pb) * 2px)}.x2{font-size:calc(var(--pb) * 2px);line-height:calc(var(--pb) * 3px)}.x3{font-size:calc(var(--pb) * 3px);line-height:calc(var(--pb) * 4px)}.x4{font-size:calc(var(--pb) * 4px);line-height:calc(var(--pb) * 5px)}@media(max-width:560px){body{font-size:16px}.x3{font-size:calc(var(--pb) * 2px);line-height:calc(var(--pb) * 3px)}.x4{font-size:calc(var(--pb) * 3px);line-height:calc(var(--pb) * 4px)}}.box{background:var(--surface);margin:4px;box-shadow:-4px 0 0 0 var(--line),4px 0 0 0 var(--line),0 -4px 0 0 var(--line),0 4px 0 0 var(--line),4px 8px 0 0 var(--shadow),8px 4px 0 0 var(--shadow)}.box.flat{box-shadow:-4px 0 0 0 var(--line),4px 0 0 0 var(--line),0 -4px 0 0 var(--line),0 4px 0 0 var(--line)}a.box{display:block;text-decoration:none}a.box:hover{background:var(--hl)}.btn{appearance:none;border:0;cursor:pointer;text-decoration:none;display:inline-block;color:var(--text);background:var(--surface-2);padding:6px 14px;margin:3px;box-shadow:-3px 0 0 0 var(--line),3px 0 0 0 var(--line),0 -3px 0 0 var(--line),0 3px 0 0 var(--line),3px 6px 0 0 var(--shadow),6px 3px 0 0 var(--shadow)}.btn:hover{background:var(--hl)}.btn:active{transform:translate(3px,3px);box-shadow:-3px 0 0 0 var(--line),3px 0 0 0 var(--line),0 -3px 0 0 var(--line),0 3px 0 0 var(--line)}.btn.primary{background:var(--accent);color:var(--on-accent)}.btn.primary:hover{filter:brightness(1.08)}.chip{display:inline-block;padding:2px 8px;text-decoration:none;color:var(--on-accent);background:var(--c, var(--accent));box-shadow:2px 2px 0 0 var(--shadow)}a.chip:hover{filter:brightness(1.12)}.meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;color:var(--muted)}.sec-title{display:flex;align-items:center;gap:12px;margin:0 0 18px}.sec-title:after{content:"";flex:1;height:4px;background:repeating-linear-gradient(90deg,var(--line) 0 8px,transparent 8px 12px)}.page-head{margin:40px 4px 28px}.page-head h1{margin:0}.page-head p{margin:8px 0 0;color:var(--muted)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.site-head[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;margin:28px 4px 0;padding:14px 20px}.logo[data-astro-cid-3ef6ksr2]{text-decoration:none;display:flex;align-items:baseline}.dot[data-astro-cid-3ef6ksr2]{color:var(--accent)}.cur[data-astro-cid-3ef6ksr2]{display:inline-block;width:.55em;height:.12em;margin-left:4px;background:var(--accent);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}nav[data-astro-cid-3ef6ksr2]{display:flex;gap:6px 22px;flex-wrap:wrap;align-items:center}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{text-decoration:none}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{background:var(--hl)}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].on{color:var(--accent)}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].on:before{content:"▶";margin-right:6px}footer[data-astro-cid-sz7xmlte]{margin:72px 0 40px;text-align:center;color:var(--muted)}.links[data-astro-cid-sz7xmlte]{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 20px;margin-bottom:12px}.links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{text-decoration:none}.links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}p[data-astro-cid-sz7xmlte]{margin:4px 0;font-size:13px}
