:root{--paper:#f7f5f0;--sheet:#fff;--ink:#1c1a15;--ink-60:#5c574b;--ink-40:#8a8478;--rec:#c8321e;--rule:#d9d4c8;--well:#17150f;--serif:"Noto Serif TC", Georgia, serif;--sans:"Noto Sans TC", system-ui, -apple-system, sans-serif;--mono:"Chivo Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--gap:clamp(28px, 4vw, 56px)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");font-size:16px;line-height:1.6}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}a{color:inherit;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:4px}a:hover{-webkit-text-decoration-color:var(--rec);text-decoration-color:var(--rec)}.label{font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-60);font-size:12px;font-weight:500}.meta{font-family:var(--mono);color:var(--ink-40);font-size:13px}.aside{font-family:var(--sans);color:var(--ink-40);font-size:13px}.slug{background:var(--rule);border:1px solid var(--rule);border-radius:4px;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:1px;margin-bottom:18px;display:grid;overflow:hidden}.slug>div{background:var(--paper);padding:9px 12px}.slug dt{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40);font-size:10px;font-weight:500}.slug dd{font-family:var(--mono);margin-top:2px;font-size:14px}.masthead{padding:22px var(--gap) 14px;border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px;display:flex}.wordmark{font-family:var(--sans);letter-spacing:.34em;text-transform:uppercase;font-size:15px;font-weight:700}.wordmark span{color:var(--rec)}.masthead-meta{flex-wrap:wrap;align-items:baseline;gap:18px;display:flex}.spread{gap:var(--gap);max-width:1560px;padding:var(--gap) var(--gap) 96px;grid-template-columns:minmax(0,4fr) minmax(0,7fr);align-items:start;margin:0 auto;display:grid}@media (width<=1080px){.spread{grid-template-columns:minmax(0,1fr);gap:44px}}.column-head{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:22px;padding-bottom:10px;display:flex}.column-head h2{font-family:var(--serif);letter-spacing:-.01em;font-size:26px;font-weight:700}.hero{font-family:var(--serif);letter-spacing:-.02em;text-wrap:balance;margin-bottom:18px;font-size:clamp(34px,3.5vw,52px);font-weight:700;line-height:1.08}.hero em{color:var(--rec);font-style:normal}.standfirst{color:var(--ink-60);max-width:46ch;margin-bottom:34px;font-size:17px}.field{margin-bottom:20px}.field>.label{margin-bottom:6px;display:block}.field input[type=text],.field textarea{border:none;border-bottom:1px solid var(--rule);background:0 0;border-radius:0;width:100%;padding:7px 2px;font-size:16px}.field textarea{resize:vertical;min-height:132px;line-height:1.55}.field input:focus,.field textarea:focus,select:focus{border-bottom-color:var(--ink);outline:none}.field-hint{font-family:var(--mono);color:var(--ink-40);margin-top:5px;font-size:12px}.points{list-style:none}.point-row{border-bottom:1px solid var(--rule);cursor:pointer;grid-template-columns:34px 1fr auto 28px;align-items:center;gap:8px;display:grid}.point-row:focus-within{background:#c8321e0d}.point-row:first-child{border-top:1px solid var(--rule)}.point-no{font-family:var(--mono);color:var(--ink-40);font-size:12px}.point-row input{border:none!important;padding:9px 0!important}.point-row.is-linked{background:#c8321e0d}.point-row.is-linked .point-no{color:var(--rec)}.point-drop{font-family:var(--mono);color:var(--ink-40);padding:4px;font-size:16px;line-height:1}.point-drop:hover{color:var(--rec)}.controls{flex-wrap:wrap;gap:14px;margin:26px 0 6px;display:flex}.controls label{flex-direction:column;gap:5px;display:flex}select{background:var(--sheet);border:1px solid var(--rule);border-radius:4px;padding:7px 10px;font-size:14px}input[type=color]{border:1px solid var(--rule);background:var(--sheet);border-radius:4px;width:46px;height:34px;padding:2px}.btn{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;border:1px solid #0000;border-radius:4px;padding:13px 22px;font-size:13px;font-weight:700;transition:background-color .16s ease-out,color .16s ease-out}.btn-primary{background:var(--rec);color:#fff}.btn-primary:hover{background:#a82817}.btn-primary:disabled{background:var(--ink-40);cursor:progress}.btn-ghost{border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.btn-small{letter-spacing:.1em;border:1px solid var(--rule);border-radius:4px;padding:7px 12px;font-size:11px}.btn-small:hover{border-color:var(--ink)}.btn-small[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.set-row{flex-wrap:wrap;align-items:center;gap:16px;margin-top:28px;display:flex}.plates{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.plate{object-fit:cover;border:1px solid var(--rule);background:var(--sheet);border-radius:3px;width:54px;height:54px}.proof{position:relative}.stamp{font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--rec);border:2px solid var(--rec);border-radius:3px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-block;transform:rotate(-3deg)}.canvas-wrap{z-index:2;background:var(--paper);padding:16px 0 12px;position:sticky;top:0}.canvas{background:var(--well);border:1px solid var(--ink);box-shadow:3px 3px 0 var(--paper), 3px 3px 0 1px var(--rule);border-radius:6px;overflow:hidden}.canvas.is-vertical{max-width:300px;margin:0 auto}.canvas-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.tabs{flex-wrap:wrap;gap:6px;display:flex}.rec-dot{background:var(--rec);vertical-align:baseline;border-radius:50%;width:9px;height:9px;margin-right:7px;display:inline-block}.is-working .rec-dot{animation:1.2s ease-in-out infinite rec}@keyframes rec{0%,to{opacity:.35}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.is-working .rec-dot{animation:none}}.sheet{margin-top:34px}@keyframes set-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.sheet-set .cue-table tr,.sheet-set .card,.sheet-set pre.srt{animation:.18s ease-out backwards set-in}.sheet-set .cue-table tr:first-child{animation-delay:0s}.sheet-set .cue-table tr:nth-child(2){animation-delay:40ms}.sheet-set .cue-table tr:nth-child(3){animation-delay:80ms}.sheet-set .cue-table tr:nth-child(4){animation-delay:.12s}.sheet-set .cue-table tr:nth-child(5){animation-delay:.16s}.sheet-set .cue-table tr:nth-child(6){animation-delay:.2s}.sheet-set .cue-table tr:nth-child(7){animation-delay:.24s}.sheet-set .cue-table tr:nth-child(n+8){animation-delay:.28s}@media (prefers-reduced-motion:reduce){.sheet-set .cue-table tr,.sheet-set .card,.sheet-set pre.srt{animation:none}}.cue-table{border-collapse:collapse;width:100%}.cue-table th{text-align:left;border-bottom:1px solid var(--ink);font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-60);white-space:nowrap;padding:0 10px 8px 0;font-size:12px;font-weight:500}.cue-table td{border-bottom:1px solid var(--rule);vertical-align:top;padding:13px 10px 13px 0}.cue-table tr.is-linked td{background:#c8321e0d}.cue-no,.cue-tc{font-family:var(--mono);color:var(--ink-40);white-space:nowrap;font-size:13px}.cue-title{font-weight:500}.cue-line{color:var(--ink-60);margin-top:3px;font-size:15px}.mark{color:var(--rec);font-family:var(--mono);margin-left:8px;font-size:12px;display:inline-block}.stack{gap:18px;display:grid}.card{border:1px solid var(--rule);background:var(--sheet);border-radius:6px;padding:18px 20px}.card h3{font-family:var(--serif);margin-bottom:4px;font-size:19px;font-weight:700}.card p{color:var(--ink-60);font-size:15px}.card-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}pre.srt{font-family:var(--mono);white-space:pre-wrap;word-break:break-word;border:1px solid var(--rule);background:var(--sheet);border-radius:6px;max-height:460px;padding:18px 20px;font-size:13px;line-height:1.7;overflow:auto}.deliverables{flex-wrap:wrap;gap:10px;margin-top:52px;display:flex}.trace-hint{border-top:1px solid var(--rule);color:var(--ink-60);margin-top:14px;padding:10px 0 0;font-size:14px}.trace-hint b{color:var(--rec);font-family:var(--mono);font-weight:500}.point-row.is-linked .point-hits{color:var(--rec)}.point-hits{font-family:var(--mono);color:var(--ink-40);white-space:nowrap;padding-right:4px;font-size:12px}.note{border-left:2px solid var(--rec);color:var(--ink-60);max-width:62ch;padding:4px 0 4px 16px;font-size:14px}.colophon{border-top:1px solid var(--rule);padding:34px var(--gap) 64px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;max-width:1560px;margin:0 auto;display:grid}.colophon h4{font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-60);margin-bottom:8px;font-size:12px;font-weight:500}.colophon p{color:var(--ink-60);font-size:14px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=640px){.masthead{padding:16px 20px 12px}.spread{padding:24px 20px 64px}.canvas-wrap{position:static}.cue-table,.cue-table tbody,.cue-table tr,.cue-table td{width:100%;display:block}.cue-table thead{display:none}.cue-table tr{border-bottom:1px solid var(--rule);padding:12px 0}.cue-table td{border:none;padding:2px 0}}
