@layer theme,base;@layer components{.ap-wrap{width:100%;max-width:1280px;margin-inline:auto;padding-inline:clamp(20px,4.5vw,64px)}.ap-wrap.is-narrow{max-width:720px}.ap-wrap.is-full{max-width:none}.ap-top{justify-content:space-between;align-items:baseline;gap:12px 24px;padding-block:22px;font-size:14px;display:flex}.ap-word{font-family:var(--ap-mono);letter-spacing:-.02em;color:var(--fg);font-weight:700;text-decoration:none}.ap-nav{flex-wrap:wrap;justify-content:flex-end;gap:4px 22px;display:flex}.ap-nav a{color:var(--muted);text-decoration:none;transition:color .2s}.ap-nav a:hover,.ap-nav a[aria-current=page],.ap-nav a.is-strong{color:var(--fg)}.ap-nav a[aria-current=page],.ap-nav a.is-strong{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:2px}.ap-nav a.is-strong{-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.ap-nav a[aria-current=page]{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.ap-main{flex:auto;padding-block:clamp(28px,6vh,72px) clamp(56px,10vh,112px)}.ap-foot{border-top:1px solid var(--line-strong);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-block:20px 40px;font-size:13px;display:flex}.ap-foot a{color:inherit}.ap-h1{font-family:var(--ap-kai);margin:0;font-size:clamp(2.6rem,7vw,5.2rem);font-weight:400;line-height:1.08}.ap-h1.is-sm{font-size:clamp(2rem,4.4vw,3.2rem)}.ap-h2{font-family:var(--ap-kai);margin:0;font-size:clamp(1.45rem,2.4vw,1.9rem);font-weight:400;line-height:1.25}.ap-lead{max-width:34em;color:color-mix(in srgb, var(--fg) 80%, transparent);margin:0;font-size:15px;line-height:1.85}.ap-mono{font-family:var(--ap-mono);font-variant-numeric:tabular-nums}.ap-small{color:var(--muted);font-size:13px;line-height:1.75}.ap-crumb{font-family:var(--ap-mono);color:var(--muted);font-size:12px}.ap-crumb a{color:inherit;text-decoration:none}.ap-crumb a:hover{color:var(--fg)}.ap-head{border-bottom:2px solid var(--fg);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:end;gap:16px clamp(24px,5vw,72px);padding-bottom:20px;display:grid}.ap-head-side{flex-direction:column;gap:14px;min-width:0;display:flex}.ap-entry{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:14px clamp(24px,5vw,72px);padding-block:clamp(22px,3.6vh,36px);display:grid}.ap-entry-name small{max-width:22em;font-family:var(--font-sans);color:var(--muted);margin-top:6px;font-size:13px;line-height:1.7;display:block}.ap-entry-body{min-width:0}.ap-row{border-bottom:1px solid var(--line);color:inherit;grid-template-columns:minmax(6em,3fr) minmax(0,7fr) auto;align-items:baseline;gap:6px clamp(14px,2.4vw,32px);padding-block:13px;text-decoration:none;display:grid}.ap-row:first-child{border-top:1px solid var(--line)}.ap-row-name{text-underline-offset:6px;font-size:1.02rem;font-weight:600;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .2s}a.ap-row:hover .ap-row-name{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.ap-row-note{color:var(--muted);font-size:14px}.ap-row-end{font-family:var(--ap-mono);white-space:nowrap;text-align:right;color:var(--muted);font-size:12px}.ap-figs{flex-wrap:wrap;gap:18px clamp(28px,5vw,64px);margin:0;display:flex}.ap-fig dd{font-family:var(--ap-mono);font-variant-numeric:tabular-nums;letter-spacing:-.04em;margin:0;font-size:clamp(1.9rem,3.4vw,2.7rem);line-height:1.1}.ap-fig dt{color:var(--muted);font-size:12px}.ap-state{white-space:nowrap;color:var(--muted);align-items:center;gap:7px;font-size:13px;display:inline-flex}.ap-state:before{content:"";background:currentColor;flex:none;width:7px;height:7px}.ap-state.is-on{color:var(--accent)}.ap-state.is-ok{color:var(--ap-ok)}.ap-state.is-warn{color:var(--ap-warn)}.ap-state.is-off:before{background:0 0;box-shadow:inset 0 0 0 1px}.ap-tag{font-family:var(--ap-mono);white-space:nowrap;color:var(--muted);font-size:12px}.ap-seal{font-family:var(--ap-kai);writing-mode:vertical-rl;color:var(--bg);background:var(--accent);border-radius:2px;padding:.32em .18em;font-size:15px;line-height:1.08;display:inline-block;transform:rotate(-4deg)}.ap-btn,.ap-btn-line{letter-spacing:.06em;white-space:nowrap;border:1px solid var(--fg);cursor:pointer;border-radius:2px;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.ap-btn{color:var(--bg);background:var(--fg)}.ap-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}.ap-btn-line{color:var(--fg);border-color:var(--line-strong);background:0 0;font-weight:500}.ap-btn-line:hover:not(:disabled){border-color:var(--fg)}.ap-btn-line.is-danger{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 55%, transparent)}.ap-btn-line.is-danger:hover:not(:disabled){color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.ap-btn:active:not(:disabled),.ap-btn-line:active:not(:disabled){transform:translateY(1px)}.ap-btn:disabled,.ap-btn-line:disabled,.ap-act:disabled{opacity:.4;cursor:not-allowed}.ap-btn.is-sm,.ap-btn-line.is-sm{letter-spacing:.03em;padding:6px 13px;font-size:13px}.ap-btn.is-wide,.ap-btn-line.is-wide{width:100%}.ap-link,.ap-act{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:6px;transition:text-decoration-color .2s}.ap-act{font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:14px}.ap-link:hover,.ap-act:hover:not(:disabled){-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.ap-act.is-danger{color:var(--accent);-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 45%, transparent)}.ap-acts{flex-wrap:wrap;align-items:center;gap:12px 24px;display:flex}.ap-label{letter-spacing:.04em;color:var(--muted);font-size:13px;display:block}.ap-field{width:100%;min-width:0;font:inherit;color:var(--fg);border:0;border-bottom:1px solid var(--line-strong);background:0 0;border-radius:0;outline:none;padding:8px 0 9px;font-size:16px;transition:border-color .2s,box-shadow .2s;display:block}.ap-field::placeholder{color:color-mix(in srgb, var(--muted) 60%, transparent)}.ap-field:hover:not(:disabled){border-bottom-color:var(--fg)}.ap-field:focus{border-bottom-color:var(--fg);box-shadow:0 1px 0 var(--fg)}.ap-field[aria-invalid=true]{border-bottom-color:var(--accent);box-shadow:0 1px 0 var(--accent)}.ap-field:disabled{opacity:.5}textarea.ap-field{border:1px solid var(--line-strong);resize:vertical;padding:10px 12px;line-height:1.7}textarea.ap-field:focus{border-color:var(--fg);box-shadow:none}.ap-field.is-mono{font-family:var(--ap-mono);font-size:15px}.ap-hint{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.ap-hint.is-err{color:var(--accent)}.ap-hint.is-ok{color:var(--ap-ok)}.ap-form{flex-direction:column;gap:22px;display:flex}.ap-form-item{flex-direction:column;gap:4px;min-width:0;display:flex}.ap-note{border-left:2px solid var(--line-strong);color:var(--muted);margin:0;padding-left:12px;font-size:13px;line-height:1.75}.ap-note.is-err{color:var(--accent);border-left-color:var(--accent)}.ap-note.is-ok{color:var(--ap-ok);border-left-color:var(--ap-ok)}.ap-note.is-warn{color:var(--ap-warn);border-left-color:var(--ap-warn)}.ap-tabs{border-bottom:1px solid var(--line-strong);flex-wrap:wrap;gap:4px 28px;display:flex}.ap-tab{font:inherit;color:var(--muted);box-shadow:inset 0 0 0 var(--accent);cursor:pointer;background:0 0;border:0;margin-bottom:-1px;padding:10px 0 12px;font-size:15px;transition:color .2s,box-shadow .2s}.ap-tab:hover{color:var(--fg)}.ap-tab[aria-selected=true],.ap-tab[aria-pressed=true],.ap-tab[aria-current=page]{color:var(--fg);box-shadow:inset 0 -3px 0 var(--accent)}.ap-pick{flex-wrap:wrap;align-items:baseline;gap:4px 16px;font-size:14px;display:flex}.ap-pick-label{letter-spacing:.04em;color:var(--muted);font-size:12px}.ap-pick button{font:inherit;color:var(--muted);cursor:pointer;text-underline-offset:6px;background:0 0;border:0;padding:2px 0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:2px;transition:color .2s,text-decoration-color .2s}.ap-pick button:hover{color:var(--fg)}.ap-pick button[aria-pressed=true],.ap-pick button[aria-checked=true]{color:var(--fg);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.ap-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:clamp(32px,5vh,52px) clamp(20px,2.6vw,36px);margin:0;padding:0;list-style:none;display:grid}.ap-shot{background:var(--surface-2);box-shadow:0 0 0 1px var(--line-strong);transition:box-shadow .2s;position:relative;overflow:hidden}.ap-item:hover .ap-shot,.ap-item:focus-within .ap-shot{box-shadow:0 0 0 1px var(--fg)}.ap-item-no{font-family:var(--ap-mono);color:var(--muted);font-size:11px}.ap-item-name{font-size:1.12rem;font-weight:600;line-height:1.4}.ap-item-name a{color:inherit;text-underline-offset:6px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .2s}.ap-item:hover .ap-item-name a{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.ap-empty{flex-direction:column;align-items:flex-start;gap:12px;padding-block:clamp(28px,6vh,64px);display:flex}.ap-empty-title{font-family:var(--ap-kai);margin:0;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.3}.ap-backdrop{background:#1d1a1680}.ap-dialog{color:var(--fg);background:var(--bg);border:1px solid var(--line-strong);border-top:3px solid var(--fg);border-radius:0;box-shadow:0 30px 70px -30px #1d1a168c}.ap-table{border-collapse:collapse;font-variant-numeric:tabular-nums;text-align:left;width:100%;font-size:13px}.ap-table th{color:var(--muted);border-bottom:1px solid var(--line-strong);padding:8px 0;font-weight:500}.ap-table td{border-bottom:1px solid var(--line);padding:7px 0}@media (width<=820px){.ap-head,.ap-entry{grid-template-columns:minmax(0,1fr)}.ap-row{grid-template-columns:minmax(0,1fr) auto}.ap-row-note{grid-area:2/1/auto/-1}.ap-top{flex-wrap:wrap}.ap-nav{justify-content:flex-start;gap:4px 18px}}@media (prefers-reduced-motion:reduce){body.app *{transition-duration:.01ms!important}}}@layer utilities;html:has(body.app){--bg:#efe9dc;--fg:#1d1a16;--muted:#6a6254;--accent:#b3261e;--on-accent:#fbf7ee;--radius:2px;--surface:#f5f0e5;--surface-2:#e7e0d0;--surface-3:#dbd3c1;--line:#1d1a1624;--line-strong:#1d1a166b;--radius-xs:1px;--radius-sm:1px;--radius-md:2px;--radius-lg:2px;--radius-xl:2px;--radius-2xl:3px;--radius-3xl:3px;--color-red-300:#9a1f17;--color-red-400:#a3221a;--color-red-500:#b3261e;--color-emerald-300:#1d6a4a;--color-emerald-400:#1d6a4a;--color-emerald-500:#23795a;--color-amber-300:#7d5200;--color-amber-400:#7d5200;--color-amber-500:#a06a00;--ap-kai:"Kaiti TC", "BiauKai", "DFKai-SB", "標楷體", "Noto Serif TC", "Songti TC", "PMingLiU", serif;--ap-mono:ui-monospace, "Cascadia Mono", Consolas, Menlo, "Noto Sans TC", "Microsoft JhengHei", monospace;--ap-ok:#1d6a4a;--ap-warn:#7d5200;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body.app main h1{font-family:var(--ap-kai);letter-spacing:0;font-weight:400}body.app .ap-field:focus-visible{outline:none}
