@diffohq/diffo 0.17.1 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/dist/cli.mjs +598 -381
  2. package/dist/client/assets/{abnfDiagram-O67JEVCF-C4y4PNNf.js → abnfDiagram-WEYOIA3C-B6Y8XL3T.js} +1 -1
  3. package/dist/client/assets/{arc-CFoc9vPw.js → arc-BMKLX6de.js} +1 -1
  4. package/dist/client/assets/architecture-WOLXFQ4H-GCPjgG_6.js +1 -0
  5. package/dist/client/assets/architectureDiagram-ZHVYKT53-D0haekvL.js +36 -0
  6. package/dist/client/assets/{blockDiagram-BEXU5L5S-CpA03aJs.js → blockDiagram-RJAE7QA3-9ozRFq3h.js} +3 -3
  7. package/dist/client/assets/c-Cz4nF6n_.js +1 -0
  8. package/dist/client/assets/{c4Diagram-YGBWAQC7-CYMsQutS.js → c4Diagram-XDPPPE54-3atKbk2-.js} +2 -2
  9. package/dist/client/assets/channel-CY0_tHjG.js +1 -0
  10. package/dist/client/assets/{chunk-GTNCS2PH-B4TC-ScJ.js → chunk-2E7WHVMD-B-hVLdxW.js} +3 -3
  11. package/dist/client/assets/{chunk-NETBCI7D-B5tMFrlX.js → chunk-4EMNKR2T-9R_Ywqe-.js} +1 -1
  12. package/dist/client/assets/{chunk-GWA4HPMP-CQHzk-qZ.js → chunk-55XCU76K-CRfSz7WS.js} +1 -1
  13. package/dist/client/assets/chunk-7S6XSTFO-jZvVFXd4.js +2 -0
  14. package/dist/client/assets/{chunk-MBY4JIJT-CH5sGI-E.js → chunk-AQDTSKZB-DM1KPnfu.js} +8 -8
  15. package/dist/client/assets/chunk-DSNLSHJZ-D-0UEL_k.js +127 -0
  16. package/dist/client/assets/chunk-HAGFOTED-C_UwN40v.js +62 -0
  17. package/dist/client/assets/chunk-HNE4Q36P-Ng5JYsLi.js +1 -0
  18. package/dist/client/assets/chunk-NGNAAXSQ-C2Wy9Xmz.js +136 -0
  19. package/dist/client/assets/chunk-NQOKRVIF-BGCe7Zmm.js +213 -0
  20. package/dist/client/assets/{chunk-7PRAP22T-jooxFnA3.js → chunk-UHW7PFBP-Hz5urMmR.js} +1 -1
  21. package/dist/client/assets/{chunk-WEXAMYUT-Dnrs1Ld4.js → chunk-VQ5W62QI-CvIK79s8.js} +1 -1
  22. package/dist/client/assets/chunk-WQQL4CDK-DP0cdd_-.js +10 -0
  23. package/dist/client/assets/{chunk-XXDRQBXY-BDPDpedV.js → chunk-XXDRQBXY-dz3bjW-Z.js} +1 -1
  24. package/dist/client/assets/{chunk-742MDFTN-BTP6JNdv.js → chunk-YZO67HFG-BGaQ4Np3.js} +1 -1
  25. package/dist/client/assets/{chunk-5DYCD2WN-BmQXtfyC.js → chunk-ZAUX2LTX-CaHpxHrZ.js} +1 -1
  26. package/dist/client/assets/chunk-ZCHMQSOR-BQAh24-J.js +2 -0
  27. package/dist/client/assets/{classDiagram-v2-NBCMYWYE-DS3TfzLh.js → classDiagram-v2-4MYWR3UA-C1uGZilp.js} +3 -3
  28. package/dist/client/assets/{core-C38j58LO.js → core-DmmPKspM.js} +1 -1
  29. package/dist/client/assets/cose-bilkent-JH36ORCC-CA0uoIGo.js +1 -0
  30. package/dist/client/assets/cpp-DzjeI0uH.js +1 -0
  31. package/dist/client/assets/css-DgaLhXQH.js +1 -0
  32. package/dist/client/assets/cynefin-EF2NZ3EQ-D7-HiRmU.js +1 -0
  33. package/dist/client/assets/cynefinDiagram-WF24UDRP-Ct_qs0cP.js +62 -0
  34. package/dist/client/assets/cytoscape.esm-BegBNzOV.js +321 -0
  35. package/dist/client/assets/dagre-NK4GIZVX-Cffqg6NJ.js +4 -0
  36. package/dist/client/assets/{diagram-3UASUU5V-DSX_Tpmv.js → diagram-CBK3MWTC-ByBNedZy.js} +11 -11
  37. package/dist/client/assets/{diagram-MLGK6HIB-BFgscT9R.js → diagram-I5XIIV2D-ByMRPZMW.js} +1 -1
  38. package/dist/client/assets/{diagram-CDSNMT55-BiLgPVAJ.js → diagram-ODIL2UCW-C0OayomU.js} +4 -4
  39. package/dist/client/assets/diagram-PFBEJUXE-BezcNJg0.js +3 -0
  40. package/dist/client/assets/diagram-RJA3I4VV-Bl3cl2pD.js +41 -0
  41. package/dist/client/assets/diagram-TYUNFSNR-CyGZb5mO.js +200 -0
  42. package/dist/client/assets/{dist-CMYkujym.js → dist-Uc27UV0T.js} +1 -1
  43. package/dist/client/assets/{dist-B77Lw20A.js → dist-YWSBp2hZ.js} +16 -16
  44. package/dist/client/assets/{ebnfDiagram-ZINNZB2B-x4kmvZzD.js → ebnfDiagram-V4P3TTPT-11k4sRCB.js} +1 -1
  45. package/dist/client/assets/elk-QONTBCTQ-DM4AV9FF.js +27 -0
  46. package/dist/client/assets/{engine-oniguruma-Ds-VbuSq.js → engine-oniguruma-MxRvz1no.js} +1 -1
  47. package/dist/client/assets/{erDiagram-OPXOYQCR-Bo1yx5ec.js → erDiagram-KYQIGQAA-D38TGssZ.js} +2 -2
  48. package/dist/client/assets/eventmodeling-K75KTNOO-DF0H3qdx.js +1 -0
  49. package/dist/client/assets/flowDiagram-IUGLLWBU-rSziK2Bd.js +1 -0
  50. package/dist/client/assets/ganttDiagram-R7GPNTJY-DXtKy5K6.js +292 -0
  51. package/dist/client/assets/gitGraph-VSP46ZUC-BJmPpwux.js +1 -0
  52. package/dist/client/assets/gitGraphDiagram-PDYL7XHY-FwrK2brd.js +106 -0
  53. package/dist/client/assets/gn-CAXYAgV-.js +1 -0
  54. package/dist/client/assets/html-BWDvXlHg.js +1 -0
  55. package/dist/client/assets/index-Caehfsn0.css +1 -0
  56. package/dist/client/assets/index-_VrQDc2L.js +91 -0
  57. package/dist/client/assets/info-OHQRW6UA-W1kRy4TV.js +1 -0
  58. package/dist/client/assets/{infoDiagram-VRGFBTTK-CautEhHX.js → infoDiagram-MVDRKAX5-giO2ZEe8.js} +1 -1
  59. package/dist/client/assets/{ishikawaDiagram-OU5B5YK6-C8BUCcyV.js → ishikawaDiagram-HPEHV2GE-DTOlB5LG.js} +3 -3
  60. package/dist/client/assets/java-_ATy9zCa.js +1 -0
  61. package/dist/client/assets/javascript-CpIGwZ_Y.js +1 -0
  62. package/dist/client/assets/{journeyDiagram-ZHPQQLJL-BA5WG8Xf.js → journeyDiagram-BOSHW7O7-DqENuBSc.js} +3 -3
  63. package/dist/client/assets/json-C3WlssX3.js +1 -0
  64. package/dist/client/assets/jsx-C4yDKi0A.js +1 -0
  65. package/dist/client/assets/{kanban-definition-PNTS6WVX-DRXzEJBa.js → kanban-definition-FNSA4HC5-CIYIECg_.js} +9 -9
  66. package/dist/client/assets/katex-B_JcIwqj.js +257 -0
  67. package/dist/client/assets/{line-DAcfMF01.js → line-D_x4AjTF.js} +1 -1
  68. package/dist/client/assets/{linear-uYi6Pah9.js → linear-CS4Fq7f5.js} +1 -1
  69. package/dist/client/assets/mermaid-parser.core-720dQRcD.js +7 -0
  70. package/dist/client/assets/mermaid.core-DNKhW2d1.js +44 -0
  71. package/dist/client/assets/{mindmap-definition-NLK3R4M7-Bn4VqIyk.js → mindmap-definition-6OY57UG3-Tyz7I7bd.js} +30 -28
  72. package/dist/client/assets/objective-c-D1A_Heim.js +1 -0
  73. package/dist/client/assets/objective-cpp-BsSzOQcm.js +1 -0
  74. package/dist/client/assets/packet-JDAUHWVQ-CIT4RofU.js +1 -0
  75. package/dist/client/assets/{pegDiagram-GJSIUBJH-BD1vaxu_.js → pegDiagram-ECIUJNBX-BDv64Oqu.js} +1 -1
  76. package/dist/client/assets/pie-XZMESJXO-B7TeMgE-.js +1 -0
  77. package/dist/client/assets/pieDiagram-GNMPY74T-DZ5ISynf.js +39 -0
  78. package/dist/client/assets/proto-DB4EqR-F.js +1 -0
  79. package/dist/client/assets/{quadrantDiagram-O4NWA36T-Co7yTeQ3.js → quadrantDiagram-D57K4MC3-q3ZFhuD4.js} +3 -3
  80. package/dist/client/assets/radar-ABXABTNO-DfOTCpQ-.js +1 -0
  81. package/dist/client/assets/railroad-I3PHUGI6-DtLPMTjt.js +1 -0
  82. package/dist/client/assets/railroad-abnf-LNEFI6M7-DPObEtfh.js +1 -0
  83. package/dist/client/assets/railroad-ebnf-DWYD2UWJ-g6Y97jri.js +1 -0
  84. package/dist/client/assets/railroad-peg-JR7BVNR7-CfUBWVcL.js +1 -0
  85. package/dist/client/assets/{railroadDiagram-XR7U4H2S-B2dydE7a.js → railroadDiagram-Y72NRBL7-CKGjfL5n.js} +1 -1
  86. package/dist/client/assets/{requirementDiagram-PLB6GJNP-orHF7QGe.js → requirementDiagram-EQYSW5RA-kfSYKuPQ.js} +4 -4
  87. package/dist/client/assets/sankeyDiagram-SY24JHO5-Dn5ou0D7.js +40 -0
  88. package/dist/client/assets/sequenceDiagram-BLEHNHQU-B6Qcw9U_.js +169 -0
  89. package/dist/client/assets/shellscript-CVTB3cr6.js +1 -0
  90. package/dist/client/assets/sql-CfM2IJm3.js +1 -0
  91. package/dist/client/assets/src-Bz4qgR7m.js +1 -0
  92. package/dist/client/assets/{stateDiagram-v2-GCMORJYK-CIs80eMe.js → stateDiagram-v2-A6IESKWZ-B56x9sAq.js} +2 -2
  93. package/dist/client/assets/swimlanes-B3ENRKFQ-BCQJqf0x.js +1 -0
  94. package/dist/client/assets/swimlanesDiagram-AYQRV4AK-C1YHgM4T.js +8 -0
  95. package/dist/client/assets/{timeline-definition-EJHVYXUP-Bbz9sh3O.js → timeline-definition-JXYKGLGB-lEItkXBD.js} +4 -4
  96. package/dist/client/assets/treeView-D4JQ5SDB-CYZkbtcm.js +1 -0
  97. package/dist/client/assets/treemap-SAJKECNS-B96tHxAb.js +1 -0
  98. package/dist/client/assets/tsx-CGosfAUg.js +1 -0
  99. package/dist/client/assets/typescript-Bb1J8qyy.js +1 -0
  100. package/dist/client/assets/usecaseDiagram-WPOLBNNX-CvTDEhna.js +328 -0
  101. package/dist/client/assets/{vennDiagram-UO4OBE2U-DvMMdO42.js → vennDiagram-Q3Y3IDCW-C2Ix7bQn.js} +3 -3
  102. package/dist/client/assets/wardley-7MLQ67FV-EAIVeoto.js +1 -0
  103. package/dist/client/assets/{wardleyDiagram-VNRHLVJA-CX0grRSr.js → wardleyDiagram-IVAIDKWA--Okbz3eY.js} +3 -3
  104. package/dist/client/assets/xml-DuKfbPI6.js +1 -0
  105. package/dist/client/assets/xychartDiagram-4URNHDU4-CpPxhDeV.js +7 -0
  106. package/dist/client/assets/yaml-DDA_XMNu.js +1 -0
  107. package/dist/client/index.html +2 -2
  108. package/package.json +1 -1
  109. package/plugin.json +1 -1
  110. package/skills/diffo/SKILL.md +7 -4
  111. package/dist/client/assets/architecture-7GRP2DOG-D0AGQ72s.js +0 -1
  112. package/dist/client/assets/architectureDiagram-NJMV4G6O-Dr2fN1vr.js +0 -36
  113. package/dist/client/assets/c-DWGmR78Y.js +0 -1
  114. package/dist/client/assets/channel-BktdIn5n.js +0 -1
  115. package/dist/client/assets/chunk-3FUC2YCW-BjQ1itX5.js +0 -2
  116. package/dist/client/assets/chunk-7INBJB4K-BsVmPyov.js +0 -62
  117. package/dist/client/assets/chunk-7M6MHVWA-CsHA_fwz.js +0 -213
  118. package/dist/client/assets/chunk-FOHPRMQF-DzxwRta7.js +0 -161
  119. package/dist/client/assets/chunk-O7XYJQB3-LPw4VP6e.js +0 -126
  120. package/dist/client/assets/chunk-UA2S7LBM-DVU8-vtb.js +0 -1
  121. package/dist/client/assets/chunk-Z7XXMR3K-C5ewXtqS.js +0 -10
  122. package/dist/client/assets/chunk-ZIGJFQKS-C3kX-TWN.js +0 -2
  123. package/dist/client/assets/cose-bilkent-JH36ORCC-DbTnvWg3.js +0 -1
  124. package/dist/client/assets/cpp-CJIxL8VH.js +0 -1
  125. package/dist/client/assets/css-DUjzNfgv.js +0 -1
  126. package/dist/client/assets/cynefin-OW5HDTMX-BNjAi5zC.js +0 -1
  127. package/dist/client/assets/cynefinDiagram-VND7K2PF-DO7VFekp.js +0 -62
  128. package/dist/client/assets/cytoscape.esm-Yq6u8L66.js +0 -321
  129. package/dist/client/assets/dagre-6A5THRUB-_yf_g5Eu.js +0 -4
  130. package/dist/client/assets/diagram-22UHCM2B-C_0zfVyF.js +0 -200
  131. package/dist/client/assets/diagram-ATOU4E4O-BjdH8AkF.js +0 -3
  132. package/dist/client/assets/diagram-MPIPVDR6-BuoIMiDa.js +0 -41
  133. package/dist/client/assets/elk-276RUBZZ-YAyM0RBx.js +0 -27
  134. package/dist/client/assets/eventmodeling-NTZA5JFV-G8nAQ-r0.js +0 -1
  135. package/dist/client/assets/flowDiagram-KWPJA3E3-JYut8MuN.js +0 -1
  136. package/dist/client/assets/ganttDiagram-FUAMR5RP-CIi9ZaVr.js +0 -292
  137. package/dist/client/assets/gitGraph-4MIJSDKK-DPr2GO72.js +0 -1
  138. package/dist/client/assets/gitGraphDiagram-X574FWY7-8akAig1Y.js +0 -106
  139. package/dist/client/assets/html-BlpXnbzK.js +0 -1
  140. package/dist/client/assets/index-ClMx9yVg.css +0 -1
  141. package/dist/client/assets/index-IIP4HzAT.js +0 -93
  142. package/dist/client/assets/info-A6RAGUB7-Gtb-Ecti.js +0 -1
  143. package/dist/client/assets/java-DxlWrXwe.js +0 -1
  144. package/dist/client/assets/javascript-Yelw-5ZN.js +0 -1
  145. package/dist/client/assets/json-CaljABEy.js +0 -1
  146. package/dist/client/assets/jsx-hEbJ82HF.js +0 -1
  147. package/dist/client/assets/katex-ZlcWpGUi.js +0 -257
  148. package/dist/client/assets/mermaid-parser.core-CUupN43F.js +0 -7
  149. package/dist/client/assets/mermaid.core-P7Zn0OkI.js +0 -44
  150. package/dist/client/assets/packet-AYTQ26CC-CCcEthJT.js +0 -1
  151. package/dist/client/assets/pie-WAS4IAKB-DJrFAJNb.js +0 -1
  152. package/dist/client/assets/pieDiagram-5QR66LMP-BHamJTzC.js +0 -39
  153. package/dist/client/assets/radar-RG4KPBEZ-C2VAxB0O.js +0 -1
  154. package/dist/client/assets/railroad-74A4TZTK-dcSfLPuR.js +0 -1
  155. package/dist/client/assets/railroad-abnf-HS5TGJTU-CZqf5C4_.js +0 -1
  156. package/dist/client/assets/railroad-ebnf-LZEXJU2U-BkzQPC_g.js +0 -1
  157. package/dist/client/assets/railroad-peg-WCYAUIDC-CnjsL3Wl.js +0 -1
  158. package/dist/client/assets/sankeyDiagram-IPEJSGJF-C_OsMuGS.js +0 -40
  159. package/dist/client/assets/sequenceDiagram-PO4LG4MO-Dh6-7-gO.js +0 -169
  160. package/dist/client/assets/shellscript-BiGZg9Om.js +0 -1
  161. package/dist/client/assets/sql-BOsskAmu.js +0 -1
  162. package/dist/client/assets/src-CoUI9Pvh.js +0 -1
  163. package/dist/client/assets/swimlanes-2SLR337P-Dwo3Yt9h.js +0 -1
  164. package/dist/client/assets/swimlanesDiagram-TC7HE7FX-CINzeMsu.js +0 -8
  165. package/dist/client/assets/treeView-Q6P3EWNA-HHdzOu-n.js +0 -1
  166. package/dist/client/assets/treemap-WGGIJYW6-Bc3AMsxh.js +0 -1
  167. package/dist/client/assets/tsx-5f3ulCja.js +0 -1
  168. package/dist/client/assets/typescript-Utq2Cl8c.js +0 -1
  169. package/dist/client/assets/usecaseDiagram-POWQR4AR-Dx1EDbri.js +0 -328
  170. package/dist/client/assets/wardley-WFR3VGLG-BqMvXOfu.js +0 -1
  171. package/dist/client/assets/xml-CoDIzWF0.js +0 -1
  172. package/dist/client/assets/xychartDiagram-PMCCYNJV-BQQA3oHd.js +0 -7
  173. package/dist/client/assets/yaml-CxbubiML.js +0 -1
@@ -0,0 +1,106 @@
1
+ import{n as e}from"./mermaid-parser.core-720dQRcD.js";import{n as t}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as n,p as r}from"./src-Bz4qgR7m.js";import{C as i,H as a,U as o,X as s,_ as c,a as l,b as u,f as d,q as f,s as p,v as m,y as h}from"./chunk-DSNLSHJZ-D-0UEL_k.js";import{_ as g,h as _,i as v}from"./chunk-7S6XSTFO-jZvVFXd4.js";import{t as y}from"./chunk-JWPE2WC7-DVXcaiue.js";import{t as b}from"./chunk-2Q5K7J3B-C1jixKkw.js";var x={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},ee=d.gitGraph,S=t(()=>v({...ee,...h().gitGraph}),`getConfig`),C=new b(()=>{let e=S(),t=e.mainBranchName,n=e.mainBranchOrder;return{mainBranchName:t,commits:new Map,head:null,branchConfig:new Map([[t,{name:t,order:n}]]),branches:new Map([[t,null]]),currBranch:t,direction:`LR`,seq:0,options:{}}});function w(){return _({length:7})}t(w,`getID`);function T(e,t){let n=Object.create(null);return e.reduce((e,r)=>{let i=t(r);return n[i]||(n[i]=!0,e.push(r)),e},[])}t(T,`uniqBy`);var te=t(function(e){C.records.direction=e},`setDirection`),ne=t(function(e){n.debug(`options str`,e),e=e?.trim(),e||=`{}`;try{C.records.options=JSON.parse(e)}catch(e){n.error(`error while parsing gitGraph options`,e.message)}},`setOptions`),re=t(function(){return C.records.options},`getOptions`),ie=t(function(e){let t=e.msg,r=e.id,i=e.type,a=e.tags;n.info(`commit`,t,r,i,a),n.debug(`Entering commit:`,t,r,i,a);let o=S();r=p.sanitizeText(r,o),t=p.sanitizeText(t,o),a=a?.map(e=>p.sanitizeText(e,o));let s={id:r||C.records.seq+`-`+w(),message:t,seq:C.records.seq++,type:i??x.NORMAL,tags:a??[],parents:C.records.head==null?[]:[C.records.head.id],branch:C.records.currBranch};C.records.head=s,n.info(`main branch`,o.mainBranchName),C.records.commits.has(s.id)&&n.warn(`Commit ID ${s.id} already exists`),C.records.commits.set(s.id,s),C.records.branches.set(C.records.currBranch,s.id),n.debug(`in pushCommit `+s.id)},`commit`),ae=t(function(e){let t=e.name,r=e.order;if(t=p.sanitizeText(t,S()),C.records.branches.has(t))throw Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${t}")`);C.records.branches.set(t,C.records.head==null?null:C.records.head.id),C.records.branchConfig.set(t,{name:t,order:r}),E(t),n.debug(`in createBranch`)},`branch`),oe=t(e=>{let t=e.branch,r=e.id,i=e.type,a=e.tags,o=S();t=p.sanitizeText(t,o),r&&=p.sanitizeText(r,o);let s=C.records.branches.get(C.records.currBranch),c=C.records.branches.get(t),l=s?C.records.commits.get(s):void 0,u=c?C.records.commits.get(c):void 0;if(l&&u&&l.branch===t)throw Error(`Cannot merge branch '${t}' into itself.`);if(C.records.currBranch===t){let e=Error(`Incorrect usage of "merge". Cannot merge a branch to itself`);throw e.hash={text:`merge ${t}`,token:`merge ${t}`,expected:[`branch abc`]},e}if(l===void 0||!l){let e=Error(`Incorrect usage of "merge". Current branch (${C.records.currBranch})has no commits`);throw e.hash={text:`merge ${t}`,token:`merge ${t}`,expected:[`commit`]},e}if(!C.records.branches.has(t)){let e=Error(`Incorrect usage of "merge". Branch to be merged (`+t+`) does not exist`);throw e.hash={text:`merge ${t}`,token:`merge ${t}`,expected:[`branch ${t}`]},e}if(u===void 0||!u){let e=Error(`Incorrect usage of "merge". Branch to be merged (`+t+`) has no commits`);throw e.hash={text:`merge ${t}`,token:`merge ${t}`,expected:[`"commit"`]},e}if(l===u){let e=Error(`Incorrect usage of "merge". Both branches have same head`);throw e.hash={text:`merge ${t}`,token:`merge ${t}`,expected:[`branch abc`]},e}if(r&&C.records.commits.has(r)){let e=Error(`Incorrect usage of "merge". Commit with id:`+r+` already exists, use different custom id`);throw e.hash={text:`merge ${t} ${r} ${i} ${a?.join(` `)}`,token:`merge ${t} ${r} ${i} ${a?.join(` `)}`,expected:[`merge ${t} ${r}_UNIQUE ${i} ${a?.join(` `)}`]},e}let d=c||``,f={id:r||`${C.records.seq}-${w()}`,message:`merged branch ${t} into ${C.records.currBranch}`,seq:C.records.seq++,parents:C.records.head==null?[]:[C.records.head.id,d],branch:C.records.currBranch,type:x.MERGE,customType:i,customId:!!r,tags:a??[]};C.records.head=f,C.records.commits.set(f.id,f),C.records.branches.set(C.records.currBranch,f.id),n.debug(C.records.branches),n.debug(`in mergeBranch`)},`merge`),se=t(function(e){let t=e.id,r=e.targetId,i=e.tags,a=e.parent;n.debug(`Entering cherryPick:`,t,r,i);let o=S();if(t=p.sanitizeText(t,o),r=p.sanitizeText(r,o),i=i?.map(e=>p.sanitizeText(e,o)),a=p.sanitizeText(a,o),!t||!C.records.commits.has(t)){let e=Error(`Incorrect usage of "cherryPick". Source commit id should exist and provided`);throw e.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:[`cherry-pick abc`]},e}let s=C.records.commits.get(t);if(s===void 0||!s)throw Error(`Incorrect usage of "cherryPick". Source commit id should exist and provided`);if(a&&!(Array.isArray(s.parents)&&s.parents.includes(a)))throw Error(`Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.`);let c=s.branch;if(s.type===x.MERGE&&!a)throw Error(`Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.`);if(!r||!C.records.commits.has(r)){if(c===C.records.currBranch){let e=Error(`Incorrect usage of "cherryPick". Source commit is already on current branch`);throw e.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:[`cherry-pick abc`]},e}let e=C.records.branches.get(C.records.currBranch);if(e===void 0||!e){let e=Error(`Incorrect usage of "cherry-pick". Current branch (${C.records.currBranch})has no commits`);throw e.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:[`cherry-pick abc`]},e}let o=C.records.commits.get(e);if(o===void 0||!o){let e=Error(`Incorrect usage of "cherry-pick". Current branch (${C.records.currBranch})has no commits`);throw e.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:[`cherry-pick abc`]},e}let l={id:C.records.seq+`-`+w(),message:`cherry-picked ${s?.message} into ${C.records.currBranch}`,seq:C.records.seq++,parents:C.records.head==null?[]:[C.records.head.id,s.id],branch:C.records.currBranch,type:x.CHERRY_PICK,tags:i?i.filter(Boolean):[`cherry-pick:${s.id}${s.type===x.MERGE?`|parent:${a}`:``}`]};C.records.head=l,C.records.commits.set(l.id,l),C.records.branches.set(C.records.currBranch,l.id),n.debug(C.records.branches),n.debug(`in cherryPick`)}},`cherryPick`),E=t(function(e){if(e=p.sanitizeText(e,S()),C.records.branches.has(e)){C.records.currBranch=e;let t=C.records.branches.get(C.records.currBranch);t===void 0||!t?C.records.head=null:C.records.head=C.records.commits.get(t)??null}else{let t=Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${e}")`);throw t.hash={text:`checkout ${e}`,token:`checkout ${e}`,expected:[`branch ${e}`]},t}},`checkout`);function D(e,t,n){let r=e.indexOf(t);r===-1?e.push(n):e.splice(r,1,n)}t(D,`upsert`);function O(e){let t=e.reduce((e,t)=>e.seq>t.seq?e:t,e[0]),r=``;e.forEach(function(e){r+=e===t?` *`:` |`});let i=[r,t.id,t.seq];for(let e in C.records.branches)C.records.branches.get(e)===t.id&&i.push(e);if(n.debug(i.join(` `)),t.parents&&t.parents.length==2&&t.parents[0]&&t.parents[1]){let n=C.records.commits.get(t.parents[0]);D(e,t,n),t.parents[1]&&e.push(C.records.commits.get(t.parents[1]))}else if(t.parents.length==0)return;else if(t.parents[0]){let n=C.records.commits.get(t.parents[0]);D(e,t,n)}e=T(e,e=>e.id),O(e)}t(O,`prettyPrintCommitHistory`);var ce=t(function(){n.debug(C.records.commits);let e=k()[0];O([e])},`prettyPrint`),le=t(function(){C.reset(),l()},`clear`),ue=t(function(){return[...C.records.branchConfig.values()].map((e,t)=>e.order!==null&&e.order!==void 0?e:{...e,order:parseFloat(`0.${t}`)}).sort((e,t)=>(e.order??0)-(t.order??0)).map(({name:e})=>({name:e}))},`getBranchesAsObjArray`),de=t(function(){return C.records.branches},`getBranches`),fe=t(function(){return C.records.commits},`getCommits`),k=t(function(){let e=[...C.records.commits.values()];return e.forEach(function(e){n.debug(e.id)}),e.sort((e,t)=>e.seq-t.seq),e},`getCommitsArray`),A={commitType:x,getConfig:S,setDirection:te,setOptions:ne,getOptions:re,commit:ie,branch:ae,merge:oe,cherryPick:se,checkout:E,prettyPrint:ce,clear:le,getBranchesAsObjArray:ue,getBranches:de,getCommits:fe,getCommitsArray:k,getCurrentBranch:t(function(){return C.records.currBranch},`getCurrentBranch`),getDirection:t(function(){return C.records.direction},`getDirection`),getHead:t(function(){return C.records.head},`getHead`),setAccTitle:o,getAccTitle:m,getAccDescription:c,setAccDescription:a,setDiagramTitle:f,getDiagramTitle:i},pe=t((e,t)=>{y(e,t),e.dir&&t.setDirection(e.dir);for(let n of e.statements)me(n,t)},`populate`),me=t((e,r)=>{let i={Commit:t(e=>r.commit(he(e)),`Commit`),Branch:t(e=>r.branch(ge(e)),`Branch`),Merge:t(e=>r.merge(_e(e)),`Merge`),Checkout:t(e=>r.checkout(ve(e)),`Checkout`),CherryPicking:t(e=>r.cherryPick(ye(e)),`CherryPicking`)}[e.$type];i?i(e):n.error(`Unknown statement type: ${e.$type}`)},`parseStatement`),he=t(e=>({id:e.id,msg:e.message??``,type:e.type===void 0?x.NORMAL:x[e.type],tags:e.tags??void 0}),`parseCommit`),ge=t(e=>({name:e.name,order:e.order??0}),`parseBranch`),_e=t(e=>({branch:e.branch,id:e.id??``,type:e.type===void 0?void 0:x[e.type],tags:e.tags??void 0}),`parseMerge`),ve=t(e=>e.branch,`parseCheckout`),ye=t(e=>({id:e.id,targetId:``,tags:e.tags?.length===0?void 0:e.tags,parent:e.parent}),`parseCherryPicking`),be={parse:t(async t=>{let r=await e(`gitGraph`,t);n.debug(r),pe(r,A)},`parse`)},j=10,M=40,N=4,P=2,F=8,I=new Set([`redux`,`redux-dark`,`redux-color`,`redux-dark-color`]),L=12,R=new Set([`redux-color`,`redux-dark-color`]),xe=new Set([`dark`,`redux-dark`,`redux-dark-color`,`neo-dark`]),z=t((e,t,n=!1)=>n&&e>0?(e-1)%(t-1)+1:e%t,`calcColorIndex`),B=new Map,V=new Map,H=30,U=new Map,W=[],G=0,K=`LR`,Se=t(()=>{B.clear(),V.clear(),U.clear(),G=0,W=[],K=`LR`},`clear`),q=t(e=>{let t=document.createElementNS(`http://www.w3.org/2000/svg`,`text`);return(typeof e==`string`?e.split(/\\n|\n|<br\s*\/?>/gi):e).forEach(e=>{let n=document.createElementNS(`http://www.w3.org/2000/svg`,`tspan`);n.setAttributeNS(`http://www.w3.org/XML/1998/namespace`,`xml:space`,`preserve`),n.setAttribute(`dy`,`1em`),n.setAttribute(`x`,`0`),n.setAttribute(`class`,`row`),n.textContent=e.trim(),t.appendChild(n)}),t},`drawText`),J=t(e=>{let n,r,i;return K===`BT`?(r=t((e,t)=>e<=t,`comparisonFunc`),i=1/0):(r=t((e,t)=>e>=t,`comparisonFunc`),i=0),e.forEach(e=>{let t=K===`TB`||K==`BT`?V.get(e)?.y:V.get(e)?.x;t!==void 0&&r(t,i)&&(n=e,i=t)}),n},`findClosestParent`),Ce=t(e=>{let t=``,n=1/0;return e.forEach(e=>{let r=V.get(e).y;r<=n&&(t=e,n=r)}),t||void 0},`findClosestParentBT`),we=t((e,t,n)=>{let r=n,i=n,a=[];e.forEach(e=>{let n=t.get(e);if(!n)throw Error(`Commit not found for key ${e}`);n.parents.length?(r=Ee(n),i=Math.max(r,i)):a.push(n),De(n,r)}),r=i,a.forEach(e=>{Oe(e,r,n)}),e.forEach(e=>{let n=t.get(e);if(n?.parents.length){let e=Ce(n.parents);r=V.get(e).y-M,r<=i&&(i=r);let t=B.get(n.branch).pos,a=r-j;V.set(n.id,{x:t,y:a})}})},`setParallelBTPos`),Te=t(e=>{let t=J(e.parents.filter(e=>e!==null));if(!t)throw Error(`Closest parent not found for commit ${e.id}`);let n=V.get(t)?.y;if(n===void 0)throw Error(`Closest parent position not found for commit ${e.id}`);return n},`findClosestParentPos`),Ee=t(e=>Te(e)+M,`calculateCommitPosition`),De=t((e,t)=>{let n=B.get(e.branch);if(!n)throw Error(`Branch not found for commit ${e.id}`);let r=n.pos,i=t+j;return V.set(e.id,{x:r,y:i}),{x:r,y:i}},`setCommitPosition`),Oe=t((e,t,n)=>{let r=B.get(e.branch);if(!r)throw Error(`Branch not found for commit ${e.id}`);let i=t+n,a=r.pos;V.set(e.id,{x:a,y:i})},`setRootPosition`),ke=t((e,t,n,r,i,a)=>{let{theme:o}=u(),s=I.has(o??``),c=R.has(o??``),l=xe.has(o??``);if(a===x.HIGHLIGHT)e.append(`rect`).attr(`x`,n.x-10+(s?3:0)).attr(`y`,n.y-10+(s?3:0)).attr(`width`,s?14:20).attr(`height`,s?14:20).attr(`class`,`commit ${t.id} commit-highlight${z(i,F,c)} ${r}-outer`),e.append(`rect`).attr(`x`,n.x-6+(s?2:0)).attr(`y`,n.y-6+(s?2:0)).attr(`width`,s?8:12).attr(`height`,s?8:12).attr(`class`,`commit ${t.id} commit${z(i,F,c)} ${r}-inner`);else if(a===x.CHERRY_PICK)e.append(`circle`).attr(`cx`,n.x).attr(`cy`,n.y).attr(`r`,s?7:10).attr(`class`,`commit ${t.id} ${r}`),e.append(`circle`).attr(`cx`,n.x-3).attr(`cy`,n.y+2).attr(`r`,s?2.5:2.75).attr(`fill`,l?`#000000`:`#fff`).attr(`class`,`commit ${t.id} ${r}`),e.append(`circle`).attr(`cx`,n.x+3).attr(`cy`,n.y+2).attr(`r`,s?2.5:2.75).attr(`fill`,l?`#000000`:`#fff`).attr(`class`,`commit ${t.id} ${r}`),e.append(`line`).attr(`x1`,n.x+3).attr(`y1`,n.y+1).attr(`x2`,n.x).attr(`y2`,n.y-5).attr(`stroke`,l?`#000000`:`#fff`).attr(`class`,`commit ${t.id} ${r}`),e.append(`line`).attr(`x1`,n.x-3).attr(`y1`,n.y+1).attr(`x2`,n.x).attr(`y2`,n.y-5).attr(`stroke`,l?`#000000`:`#fff`).attr(`class`,`commit ${t.id} ${r}`);else{let o=e.append(`circle`);if(o.attr(`cx`,n.x),o.attr(`cy`,n.y),o.attr(`r`,s?7:10),o.attr(`class`,`commit ${t.id} commit${z(i,F,c)}`),a===x.MERGE){let a=e.append(`circle`);a.attr(`cx`,n.x),a.attr(`cy`,n.y),a.attr(`r`,s?5:6),a.attr(`class`,`commit ${r} ${t.id} commit${z(i,F,c)}`)}if(a===x.REVERSE){let a=e.append(`path`),o=s?4:5;a.attr(`d`,`M ${n.x-o},${n.y-o}L${n.x+o},${n.y+o}M${n.x-o},${n.y+o}L${n.x+o},${n.y-o}`).attr(`class`,`commit ${r} ${t.id} commit${z(i,F,c)}`)}}},`drawCommitBullet`),Ae=t((e,t,n,r,i)=>{if(t.type!==x.CHERRY_PICK&&(t.customId&&t.type===x.MERGE||t.type!==x.MERGE)&&i.showCommitLabel){let a=e.append(`g`),o=a.insert(`rect`).attr(`class`,`commit-label-bkg`),s=a.append(`text`).attr(`x`,r).attr(`y`,n.y+25).attr(`class`,`commit-label`).text(t.id),c=s.node()?.getBBox();if(c&&(o.attr(`x`,n.posWithOffset-c.width/2-P).attr(`y`,n.y+13.5).attr(`width`,c.width+2*P).attr(`height`,c.height+2*P),K===`TB`||K===`BT`?(o.attr(`x`,n.x-(c.width+4*N+5)).attr(`y`,n.y-12),s.attr(`x`,n.x-(c.width+4*N)).attr(`y`,n.y+c.height-12)):s.attr(`x`,n.posWithOffset-c.width/2),i.rotateCommitLabel)){if(K===`TB`||K===`BT`)s.attr(`transform`,`rotate(-45, `+n.x+`, `+n.y+`)`),o.attr(`transform`,`rotate(-45, `+n.x+`, `+n.y+`)`);else{let e=-7.5-(c.width+10)/25*9.5,t=10+c.width/25*8.5;a.attr(`transform`,`translate(`+e+`, `+t+`) rotate(-45, `+r+`, `+n.y+`)`)}}}},`drawCommitLabel`),je=t((e,t,n,r)=>{if(t.tags.length>0){let i=0,a=0,o=0,s=[];for(let r of t.tags.reverse()){let t=e.insert(`polygon`),c=e.append(`circle`),l=e.append(`text`).attr(`y`,n.y-16-i).attr(`class`,`tag-label`).text(r),u=l.node()?.getBBox();if(!u)throw Error(`Tag bbox not found`);a=Math.max(a,u.width),o=Math.max(o,u.height),l.attr(`x`,n.posWithOffset-u.width/2),s.push({tag:l,hole:c,rect:t,yOffset:i}),i+=20}for(let{tag:e,hole:t,rect:i,yOffset:c}of s){let s=o/2,l=n.y-19.2-c;if(i.attr(`class`,`tag-label-bkg`).attr(`points`,`
2
+ ${r-a/2-N/2},${l+P}
3
+ ${r-a/2-N/2},${l-P}
4
+ ${n.posWithOffset-a/2-N},${l-s-P}
5
+ ${n.posWithOffset+a/2+N},${l-s-P}
6
+ ${n.posWithOffset+a/2+N},${l+s+P}
7
+ ${n.posWithOffset-a/2-N},${l+s+P}`),t.attr(`cy`,l).attr(`cx`,r-a/2+N/2).attr(`r`,1.5).attr(`class`,`tag-hole`),K===`TB`||K===`BT`){let o=r+c;i.attr(`class`,`tag-label-bkg`).attr(`points`,`
8
+ ${n.x},${o+2}
9
+ ${n.x},${o-2}
10
+ ${n.x+j},${o-s-2}
11
+ ${n.x+j+a+4},${o-s-2}
12
+ ${n.x+j+a+4},${o+s+2}
13
+ ${n.x+j},${o+s+2}`).attr(`transform`,`translate(12,12) rotate(45, `+n.x+`,`+r+`)`),t.attr(`cx`,n.x+N/2).attr(`cy`,o).attr(`transform`,`translate(12,12) rotate(45, `+n.x+`,`+r+`)`),e.attr(`x`,n.x+5).attr(`y`,o+3).attr(`transform`,`translate(14,14) rotate(45, `+n.x+`,`+r+`)`)}}}},`drawCommitTags`),Me=t(e=>{switch(e.customType??e.type){case x.NORMAL:return`commit-normal`;case x.REVERSE:return`commit-reverse`;case x.HIGHLIGHT:return`commit-highlight`;case x.MERGE:return`commit-merge`;case x.CHERRY_PICK:return`commit-cherry-pick`;default:return`commit-normal`}},`getCommitClassType`),Ne=t((e,t,n,r)=>{let i={x:0,y:0};if(e.parents.length>0){let n=J(e.parents);if(n){let a=r.get(n)??i;return t===`TB`?a.y+M:t===`BT`?(r.get(e.id)??i).y-M:a.x+M}}else if(t===`TB`)return H;else if(t===`BT`)return(r.get(e.id)??i).y-M;else return 0;return 0},`calculatePosition`),Pe=t((e,t,n)=>{let r=K===`BT`&&n?t:t+j,i=B.get(e.branch)?.pos,a=K===`TB`||K===`BT`?B.get(e.branch)?.pos:r;if(a===void 0||i===void 0)throw Error(`Position were undefined for commit ${e.id}`);let o=I.has(u().theme??``);return{x:a,y:K===`TB`||K===`BT`?r:i+(o?L/2+1:-2),posWithOffset:r}},`getCommitPosition`),Y=t((e,n,r,i)=>{let a=e.append(`g`).attr(`class`,`commit-bullets`),o=e.append(`g`).attr(`class`,`commit-labels`),s=K===`TB`||K===`BT`?H:0,c=[...n.keys()],l=i.parallelCommits??!1,u=t((e,t)=>{let r=n.get(e)?.seq,i=n.get(t)?.seq;return r!==void 0&&i!==void 0?r-i:0},`sortKeys`),d=c.sort(u);K===`BT`&&(l&&we(d,n,s),d=d.reverse()),d.forEach(e=>{let t=n.get(e);if(!t)throw Error(`Commit not found for key ${e}`);l&&(s=Ne(t,K,s,V));let c=Pe(t,s,l);if(r){let e=Me(t),n=t.customType??t.type,r=B.get(t.branch)?.index??0;ke(a,t,c,e,r,n),Ae(o,t,c,s,i),je(o,t,c,s)}K===`TB`||K===`BT`?V.set(t.id,{x:c.x,y:c.posWithOffset}):V.set(t.id,{x:c.posWithOffset,y:c.y}),s=K===`BT`&&l?s+M:s+M+j,s>G&&(G=s)})},`drawCommits`),Fe=t((e,n,r,i,a)=>{let o=(K===`TB`||K===`BT`?r.x<i.x:r.y<i.y)?n.branch:e.branch,s=t(e=>e.branch===o,`isOnBranchToGetCurve`),c=t(t=>t.seq>e.seq&&t.seq<n.seq,`isBetweenCommits`);return[...a.values()].some(e=>c(e)&&s(e))},`shouldRerouteArrow`),X=t((e,t,n=0)=>{let r=e+Math.abs(e-t)/2;return n>5?r:W.every(e=>Math.abs(e-r)>=10)?(W.push(r),r):X(e,t-Math.abs(e-t)/5,n+1)},`findLane`),Ie=t((e,t,n,r)=>{let{theme:i}=u(),a=R.has(i??``),o=V.get(t.id),s=V.get(n.id);if(o===void 0||s===void 0)throw Error(`Commit positions not found for commits ${t.id} and ${n.id}`);let c=Fe(t,n,o,s,r),l=``,d=``,f=0,p=0,m=B.get(n.branch)?.index;n.type===x.MERGE&&t.id!==n.parents[0]&&(m=B.get(t.branch)?.index);let h;if(c){l=`A 10 10, 0, 0, 0,`,d=`A 10 10, 0, 0, 1,`,f=10,p=10;let e=o.y<s.y?X(o.y,s.y):X(s.y,o.y),n=o.x<s.x?X(o.x,s.x):X(s.x,o.x);K===`TB`?o.x<s.x?h=`M ${o.x} ${o.y} L ${n-f} ${o.y} ${d} ${n} ${o.y+p} L ${n} ${s.y-f} ${l} ${n+p} ${s.y} L ${s.x} ${s.y}`:(m=B.get(t.branch)?.index,h=`M ${o.x} ${o.y} L ${n+f} ${o.y} ${l} ${n} ${o.y+p} L ${n} ${s.y-f} ${d} ${n-p} ${s.y} L ${s.x} ${s.y}`):K===`BT`?o.x<s.x?h=`M ${o.x} ${o.y} L ${n-f} ${o.y} ${l} ${n} ${o.y-p} L ${n} ${s.y+f} ${d} ${n+p} ${s.y} L ${s.x} ${s.y}`:(m=B.get(t.branch)?.index,h=`M ${o.x} ${o.y} L ${n+f} ${o.y} ${d} ${n} ${o.y-p} L ${n} ${s.y+f} ${l} ${n-p} ${s.y} L ${s.x} ${s.y}`):o.y<s.y?h=`M ${o.x} ${o.y} L ${o.x} ${e-f} ${l} ${o.x+p} ${e} L ${s.x-f} ${e} ${d} ${s.x} ${e+p} L ${s.x} ${s.y}`:(m=B.get(t.branch)?.index,h=`M ${o.x} ${o.y} L ${o.x} ${e+f} ${d} ${o.x+p} ${e} L ${s.x-f} ${e} ${l} ${s.x} ${e-p} L ${s.x} ${s.y}`)}else l=`A 20 20, 0, 0, 0,`,d=`A 20 20, 0, 0, 1,`,f=20,p=20,K===`TB`?(o.x<s.x&&(h=n.type===x.MERGE&&t.id!==n.parents[0]?`M ${o.x} ${o.y} L ${o.x} ${s.y-f} ${l} ${o.x+p} ${s.y} L ${s.x} ${s.y}`:`M ${o.x} ${o.y} L ${s.x-f} ${o.y} ${d} ${s.x} ${o.y+p} L ${s.x} ${s.y}`),o.x>s.x&&(l=`A 20 20, 0, 0, 0,`,d=`A 20 20, 0, 0, 1,`,f=20,p=20,h=n.type===x.MERGE&&t.id!==n.parents[0]?`M ${o.x} ${o.y} L ${o.x} ${s.y-f} ${d} ${o.x-p} ${s.y} L ${s.x} ${s.y}`:`M ${o.x} ${o.y} L ${s.x+f} ${o.y} ${l} ${s.x} ${o.y+p} L ${s.x} ${s.y}`),o.x===s.x&&(h=`M ${o.x} ${o.y} L ${s.x} ${s.y}`)):K===`BT`?(o.x<s.x&&(h=n.type===x.MERGE&&t.id!==n.parents[0]?`M ${o.x} ${o.y} L ${o.x} ${s.y+f} ${d} ${o.x+p} ${s.y} L ${s.x} ${s.y}`:`M ${o.x} ${o.y} L ${s.x-f} ${o.y} ${l} ${s.x} ${o.y-p} L ${s.x} ${s.y}`),o.x>s.x&&(l=`A 20 20, 0, 0, 0,`,d=`A 20 20, 0, 0, 1,`,f=20,p=20,h=n.type===x.MERGE&&t.id!==n.parents[0]?`M ${o.x} ${o.y} L ${o.x} ${s.y+f} ${l} ${o.x-p} ${s.y} L ${s.x} ${s.y}`:`M ${o.x} ${o.y} L ${s.x+f} ${o.y} ${d} ${s.x} ${o.y-p} L ${s.x} ${s.y}`),o.x===s.x&&(h=`M ${o.x} ${o.y} L ${s.x} ${s.y}`)):(o.y<s.y&&(h=n.type===x.MERGE&&t.id!==n.parents[0]?`M ${o.x} ${o.y} L ${s.x-f} ${o.y} ${d} ${s.x} ${o.y+p} L ${s.x} ${s.y}`:`M ${o.x} ${o.y} L ${o.x} ${s.y-f} ${l} ${o.x+p} ${s.y} L ${s.x} ${s.y}`),o.y>s.y&&(h=n.type===x.MERGE&&t.id!==n.parents[0]?`M ${o.x} ${o.y} L ${s.x-f} ${o.y} ${l} ${s.x} ${o.y-p} L ${s.x} ${s.y}`:`M ${o.x} ${o.y} L ${o.x} ${s.y+f} ${d} ${o.x+p} ${s.y} L ${s.x} ${s.y}`),o.y===s.y&&(h=`M ${o.x} ${o.y} L ${s.x} ${s.y}`));if(h===void 0)throw Error(`Line definition not found`);e.append(`path`).attr(`d`,h).attr(`class`,`arrow arrow`+z(m,F,a))},`drawArrow`),Le=t((e,t)=>{let n=e.append(`g`).attr(`class`,`commit-arrows`);[...t.keys()].forEach(e=>{let r=t.get(e);r.parents&&r.parents.length>0&&r.parents.forEach(e=>{Ie(n,t.get(e),r,t)})})},`drawArrows`),Re=t((e,t,n,r)=>{let{look:i,theme:a,themeVariables:o}=u(),{dropShadow:s,THEME_COLOR_LIMIT:c}=o,l=I.has(a??``),d=R.has(a??``),f=e.append(`g`);t.forEach((e,t)=>{let a=z(t,l?c:F,d),o=B.get(e.name)?.pos;if(o===void 0)throw Error(`Position not found for branch ${e.name}`);let u=K===`TB`||K===`BT`?o:l?o+L/2+1:o-2,p=f.append(`line`);p.attr(`x1`,0),p.attr(`y1`,u),p.attr(`x2`,G),p.attr(`y2`,u),p.attr(`class`,`branch branch`+a),K===`TB`?(p.attr(`y1`,H),p.attr(`x1`,o),p.attr(`y2`,G),p.attr(`x2`,o)):K===`BT`&&(p.attr(`y1`,G),p.attr(`x1`,o),p.attr(`y2`,H),p.attr(`x2`,o)),W.push(u);let m=e.name,h=q(m),g=f.insert(`rect`),_=f.insert(`g`).attr(`class`,`branchLabel`).insert(`g`).attr(`class`,`label branch-label`+a);_.node().appendChild(h);let v=h.getBBox(),y=l?0:4,b=l?16:0,x=l?L:0;i===`neo`&&g.attr(`data-look`,`neo`),g.attr(`class`,`branchLabelBkg label`+a).attr(`style`,i===`neo`?`filter:${l?`url(#${r}-drop-shadow)`:s}`:``).attr(`rx`,y).attr(`ry`,y).attr(`x`,-v.width-4-(n.rotateCommitLabel===!0?30:0)).attr(`y`,-v.height/2+10).attr(`width`,v.width+18+b).attr(`height`,v.height+4+x),_.attr(`transform`,`translate(`+(-v.width-14-(n.rotateCommitLabel===!0?30:0)+b/2)+`, `+(u-v.height/2-2)+`)`),K===`TB`?(g.attr(`x`,o-v.width/2-10).attr(`y`,0),_.attr(`transform`,`translate(`+(o-v.width/2-5)+`, 0)`),l&&(g.attr(`transform`,`translate(${-b/2-3}, ${-x-10})`),_.attr(`transform`,`translate(`+(o-v.width/2-5)+`, `+(-x*2+7)+`)`))):K===`BT`?(g.attr(`x`,o-v.width/2-10).attr(`y`,G),_.attr(`transform`,`translate(`+(o-v.width/2-5)+`, `+G+`)`),l&&(g.attr(`transform`,`translate(${-b/2-3}, ${x+10})`),_.attr(`transform`,`translate(`+(o-v.width/2-5)+`, `+(G+x*2+4)+`)`))):g.attr(`transform`,`translate(-19, `+(u-12-x/2)+`)`)})},`drawBranches`),ze=t(function(e,t,n,r,i){return B.set(e,{pos:t,index:n}),t+=50+(i?40:0)+(K===`TB`||K===`BT`?r.width/2:0),t},`setBranchPosition`),Be={draw:t(function(e,t,i,a){Se(),n.debug(`in gitgraph renderer`,e+`
14
+ `,`id:`,t,i);let o=a.db;if(!o.getConfig){n.error(`getConfig method is not available on db`);return}let c=o.getConfig(),l=c.rotateCommitLabel??!1;U=o.getCommits();let d=o.getBranchesAsObjArray();K=o.getDirection();let f=r(`[id="${t}"]`),{look:p,theme:m,themeVariables:h}=u(),{useGradient:_,gradientStart:v,gradientStop:y,filterColor:b}=h;if(_){let e=f.append(`defs`).append(`linearGradient`).attr(`id`,t+`-gradient`).attr(`gradientUnits`,`objectBoundingBox`).attr(`x1`,`0%`).attr(`y1`,`0%`).attr(`x2`,`100%`).attr(`y2`,`0%`);e.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,v).attr(`stop-opacity`,1),e.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,y).attr(`stop-opacity`,1)}p===`neo`&&I.has(m??``)&&f.append(`defs`).append(`filter`).attr(`id`,t+`-drop-shadow`).attr(`height`,`130%`).attr(`width`,`130%`).append(`feDropShadow`).attr(`dx`,`4`).attr(`dy`,`4`).attr(`stdDeviation`,0).attr(`flood-opacity`,`0.06`).attr(`flood-color`,b);let x=0;d.forEach((e,t)=>{let n=q(e.name),r=f.append(`g`),i=r.insert(`g`).attr(`class`,`branchLabel`),a=i.insert(`g`).attr(`class`,`label branch-label`);a.node()?.appendChild(n);let o=n.getBBox();x=ze(e.name,x,t,o,l),a.remove(),i.remove(),r.remove()}),Y(f,U,!1,c),c.showBranches&&Re(f,d,c,t),Le(f,U),Y(f,U,!0,c),g.insertTitle(f,`gitTitleText`,c.titleTopMargin??0,o.getDiagramTitle()),s(void 0,f,c.diagramPadding,c.useMaxWidth)},`draw`)},Z=8,Q=new Set([`redux`,`redux-dark`,`redux-color`,`redux-dark-color`]),Ve=new Set([`redux-color`,`redux-dark-color`]),$=new Set([`neo`,`neo-dark`]),He=new Set([`dark`,`redux-dark`,`redux-dark-color`,`neo-dark`]),Ue=new Set([`redux`,`redux-dark`,`redux-color`,`redux-dark-color`,`neo`,`neo-dark`]),We=t(e=>{let{svgId:t}=e,n=``;if(e.useGradient&&t)for(let r=0;r<e.THEME_COLOR_LIMIT;r++)n+=`
15
+ .label${r} { fill: ${e.mainBkg}; stroke: url(${t}-gradient); stroke-width: ${e.strokeWidth};}
16
+ `;return n},`genGitGraphGradient`),Ge=t(e=>{let{theme:t,themeVariables:n}=h(),{borderColorArray:r}=n,i=Q.has(t);if($.has(t)){let t=``;for(let n=0;n<e.THEME_COLOR_LIMIT;n++)if(n===0)t+=`
17
+ .branch-label${n} { fill: ${e.nodeBorder};}
18
+ .commit${n} { stroke: ${e.nodeBorder}; }
19
+ .commit-highlight${n} { stroke: ${e.nodeBorder}; fill: ${e.nodeBorder}; }
20
+ .arrow${n} { stroke: ${e.nodeBorder}; }
21
+ .commit-bullets { fill: ${e.nodeBorder}; }
22
+ .commit-cherry-pick${n} { stroke: ${e.nodeBorder}; }
23
+ ${We(e)}`;else{let r=n%Z;t+=`
24
+ .branch-label${n} { fill: ${e[`gitBranchLabel`+r]}; }
25
+ .commit${n} { stroke: ${e[`git`+r]}; fill: ${e[`git`+r]}; }
26
+ .commit-highlight${n} { stroke: ${e[`gitInv`+r]}; fill: ${e[`gitInv`+r]}; }
27
+ .arrow${n} { stroke: ${e[`git`+r]}; }
28
+ `}return t}if(Ve.has(t)){let n=``;for(let a=0;a<e.THEME_COLOR_LIMIT;a++)if(a===0)n+=`
29
+ .branch-label${a} { fill: ${e.nodeBorder}; ${i?`font-weight:${e.noteFontWeight}`:``} }
30
+ .commit${a} { stroke: ${e.nodeBorder}; }
31
+ .commit-highlight${a} { stroke: ${e.nodeBorder}; fill: ${e.mainBkg}; }
32
+ .label${a} { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; stroke-width: ${e.strokeWidth}; ${i?`font-weight:${e.noteFontWeight}`:``} }
33
+ .arrow${a} { stroke: ${e.nodeBorder}; }
34
+ .commit-bullets { fill: ${e.nodeBorder}; }
35
+ `;else{let o=a%r.length;n+=`
36
+ .branch-label${a} { fill: ${e.nodeBorder}; ${i?`font-weight:${e.noteFontWeight}`:``} }
37
+ .commit${a} { stroke: ${r[o]}; fill: ${r[o]}; }
38
+ .commit-highlight${a} { stroke: ${r[o]}; fill: ${r[o]}; }
39
+ .label${a} { fill: ${He.has(t)?e.mainBkg:r[o]}; stroke: ${r[o]}; stroke-width: ${e.strokeWidth}; }
40
+ .arrow${a} { stroke: ${r[o]}; }
41
+ `}return n}{let t=``;for(let n=0;n<e.THEME_COLOR_LIMIT;n++)t+=`
42
+ .branch-label${n} { fill: ${e.nodeBorder}; ${i?`font-weight:${e.noteFontWeight}`:``} }
43
+ .commit${n} { stroke: ${e.nodeBorder}; }
44
+ .commit-highlight${n} { stroke: ${e.nodeBorder}; fill: ${e.nodeBorder}; }
45
+ .label${n} { fill: ${e.mainBkg}; stroke: ${e.nodeBorder}; stroke-width: ${e.strokeWidth}; ${i?`font-weight:${e.noteFontWeight}`:``}}
46
+ .arrow${n} { stroke: ${e.nodeBorder}; }
47
+ .commit-bullets { fill: ${e.nodeBorder}; }
48
+ .commit-cherry-pick${n} { stroke: ${e.nodeBorder}; }
49
+ `;return t}},`genColor`),Ke=t(e=>`${Array.from({length:e.THEME_COLOR_LIMIT},(e,t)=>t).map(t=>{let n=t%Z;return`
50
+ .branch-label${t} { fill: ${e[`gitBranchLabel`+n]}; }
51
+ .commit${t} { stroke: ${e[`git`+n]}; fill: ${e[`git`+n]}; }
52
+ .commit-highlight${t} { stroke: ${e[`gitInv`+n]}; fill: ${e[`gitInv`+n]}; }
53
+ .label${t} { fill: ${e[`git`+n]}; }
54
+ .arrow${t} { stroke: ${e[`git`+n]}; }
55
+ `}).join(`
56
+ `)}`,`normalTheme`),qe={parser:be,db:A,renderer:Be,styles:t(e=>{let{theme:t}=h(),n=Ue.has(t);return`
57
+ .commit-id,
58
+ .commit-msg,
59
+ .branch-label {
60
+ fill: lightgrey;
61
+ color: lightgrey;
62
+ font-family: 'trebuchet ms', verdana, arial, sans-serif;
63
+ font-family: var(--mermaid-font-family);
64
+ }
65
+
66
+ ${n?Ge(e):Ke(e)}
67
+
68
+ .branch {
69
+ stroke-width: ${e.strokeWidth};
70
+ stroke: ${e.commitLineColor??e.lineColor};
71
+ stroke-dasharray: ${n?`4 2`:`2`};
72
+ }
73
+ .commit-label { font-size: ${e.commitLabelFontSize}; fill: ${n?e.nodeBorder:e.commitLabelColor}; ${n?`font-weight:${e.noteFontWeight};`:``}}
74
+ .commit-label-bkg { font-size: ${e.commitLabelFontSize}; fill: ${n?`transparent`:e.commitLabelBackground}; opacity: ${n?``:.5}; }
75
+ .tag-label { font-size: ${e.tagLabelFontSize}; fill: ${e.tagLabelColor};}
76
+ .tag-label-bkg { fill: ${n?e.mainBkg:e.tagLabelBackground}; stroke: ${n?e.nodeBorder:e.tagLabelBorder}; ${n?`filter:${e.dropShadow}`:``} }
77
+ .tag-hole { fill: ${e.textColor}; }
78
+
79
+ .commit-merge {
80
+ stroke: ${n?e.mainBkg:e.primaryColor};
81
+ fill: ${n?e.mainBkg:e.primaryColor};
82
+ }
83
+ .commit-reverse {
84
+ stroke: ${n?e.mainBkg:e.primaryColor};
85
+ fill: ${n?e.mainBkg:e.primaryColor};
86
+ stroke-width: ${n?e.strokeWidth:3};
87
+ }
88
+ .commit-highlight-outer {
89
+ }
90
+ .commit-highlight-inner {
91
+ stroke: ${n?e.mainBkg:e.primaryColor};
92
+ fill: ${n?e.mainBkg:e.primaryColor};
93
+ }
94
+
95
+ .arrow {
96
+ /* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */
97
+ stroke-width: ${Q.has(t)?e.strokeWidth:8};
98
+ stroke-linecap: round;
99
+ fill: none
100
+ }
101
+ .gitTitleText {
102
+ text-anchor: middle;
103
+ font-size: 18px;
104
+ fill: ${e.textColor};
105
+ }
106
+ `},`getStyles`)};export{qe as diagram};
@@ -0,0 +1 @@
1
+ var e=[Object.freeze(JSON.parse(`{"displayName":"GN","name":"gn","patterns":[{"include":"#expression"}],"repository":{"boolean":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.gn"},"builtins":{"patterns":[{"match":"\\\\b(action|action_foreach|bundle_data|copy|create_bundle|executable|generated_file|group|loadable_module|rust_library|rust_proc_macro|shared_library|source_set|static_library|target)\\\\b","name":"support.function.gn"},{"match":"\\\\b(assert|config|declare_args|defined|exec_script|expand_directory|filter_exclude|filter_include|filter_labels_exclude|filter_labels_include|foreach|forward_variables_from|get_label_info|get_path_info|get_target_outputs|getenv|import|label_matches|not_needed|pool|print|print_stack_trace|process_file_template|read_file|rebase_path|set_default_toolchain|set_defaults|split_list|string_join|string_replace|string_split|template|tool|toolchain|write_file)\\\\b","name":"support.function.gn"},{"match":"\\\\b(current_cpu|current_os|current_toolchain|default_toolchain|gn_version|host_cpu|host_os|invoker|python_path|root_build_dir|root_gen_dir|root_out_dir|target_cpu|target_gen_dir|target_name|target_os|target_out_dir)\\\\b","name":"variable.language.gn"},{"match":"\\\\b(aliased_deps|all_dependent_configs|allow_circular_includes_from|arflags|args|asmflags|assert_no_deps|bridge_header|bundle_contents_dir|bundle_deps_filter|bundle_executable_dir|bundle_resources_dir|bundle_root_dir|cflags|cflags_cc??|cflags_objcc??|check_includes|code_signing_args|code_signing_outputs|code_signing_script|code_signing_sources|complete_static_lib|configs|contents|crate_name|crate_root|crate_type|data|data_deps|data_keys|defines|depfile|deps|externs|framework_dirs|frameworks|friend|gen_deps|include_dirs|inputs|ldflags|lib_dirs|libs|metadata|mnemonic|module_name|output_conversion|output_dir|output_extension|output_name|output_prefix_override|outputs|partial_info_plist|pool|post_processing_args|post_processing_outputs|post_processing_script|post_processing_sources|precompiled_header|precompiled_header_type|precompiled_source|product_type|public|public_configs|public_deps|rebase|response_file_contents|rustflags|script|sources|swiftflags|testonly|transparent|visibility|walk_keys|weak_frameworks|write_runtime_deps|xcasset_compiler_flags|xcode_extra_attributes|xcode_test_application_name)\\\\b","name":"variable.language.gn"}]},"call":{"begin":"\\\\b([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.gn"}},"end":"\\\\)","patterns":[{"include":"#expression"}]},"comment":{"begin":"#","end":"$","name":"comment.line.number-sign.gn"},"expression":{"patterns":[{"include":"#keywords"},{"include":"#builtins"},{"include":"#call"},{"include":"#literals"},{"include":"#identifier"},{"include":"#operators"},{"include":"#comment"}]},"identifier":{"match":"\\\\b[A-Z_a-z][0-9A-Z_a-z]*\\\\b","name":"variable.general.gn"},"keywords":{"match":"\\\\b(if|else)\\\\b","name":"keyword.control.if.gn"},"literals":{"patterns":[{"include":"#string"},{"include":"#number"},{"include":"#boolean"}]},"number":{"match":"\\\\b-?\\\\d+\\\\b","name":"constant.numeric.gn"},"operators":{"match":"\\\\b(\\\\+=??|==|!=|-=??|<=??|[!=>]|>=|&&|\\\\|\\\\|\\\\.)\\\\b","name":"keyword.operator.gn"},"string":{"begin":"\\"","end":"\\"","name":"string.quoted.double.gn","patterns":[{"match":"\\\\\\\\[\\"$\\\\\\\\]","name":"constant.character.escape.gn"},{"match":"\\\\$0x\\\\h\\\\h","name":"constant.character.hex.gn"},{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.gn"}},"contentName":"meta.embedded.substitution.gn","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.gn"}},"patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"punctuation.definition.template-expression.begin.gn"},"2":{"name":"meta.embedded.substitution.gn variable.general.gn"}},"match":"(\\\\$)([A-Z_a-z][0-9A-Z_a-z]*)"}]}},"scopeName":"source.gn"}`))];export{e as default};
@@ -0,0 +1 @@
1
+ export{t as default}from"./html-BMn1ogTm.js";
@@ -0,0 +1 @@
1
+ :root{--paper:#fff;--fill:#f5f5f7;--fill-2:#ebebed;--ink:#1d1d1f;--ink-2:#515154;--ink-3:#6e6e73;--hair:#e5e5e7;--hair-2:#f0f0f2;--ease-out:cubic-bezier(.22, .7, .2, 1);--dur:.14s;--dur-move:.24s;--acc:#1d1d1f;--acc-fg:#fff;--acc-wash:#edeef0;--acc-line:#c9c4d6;--brand:#1a7f37;--brand-solid:#1f883d;--brand-fg:#fff;--brand-wash:#1f883d1a;--brand-line:#1f883d73;--attn:#9a6206;--attn-wash:#faf1e2;--attn-line:#e6cfa0;--here:#3d8a5c;--here-line:#3d8a5c6b;--add:#248a3d;--add-tint:#248a3d0e;--add-row:#248a3d1a;--add-word:#248a3d38;--del:#c9252d;--del-tint:#c9252d0d;--del-row:#c9252d16;--del-word:#c9252d33;--danger:#c9252d;--danger-wash:#fdeded;--dir-ico:#3f7fc9;--exp-wash:#ddf4ff;--exp-ink:#0969da;--exp-hover:#0969da;--exp-hover-fg:#fff;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--t-11:11px;--t-12:12px;--t-125:12.5px;--t-13:13px;--t-14:14px;--t-15:15px;--t-17:17px;--s-0:2px;--s-1:4px;--s-2:6px;--s-3:8px;--s-4:10px;--s-5:12px;--s-6:16px;--s-7:20px;--s-8:26px;--conv:min(100%, 1040px);--r-sm:6px;--r:10px;--r-lg:16px;--r-pill:999px;--lift:0 1px 2px #0000000a, 0 12px 32px -16px #00000024;--lift-lg:0 24px 64px -20px #00000047;--bg:var(--paper);--bg-subtle:var(--fill);--fg:var(--ink);--fg-muted:var(--ink-3);--border:var(--hair);--accent:var(--acc);--add-bg:var(--add-row);--add-fg:var(--add);--del-bg:var(--del-row);--del-fg:var(--del)}@media (prefers-color-scheme:dark){:root{--paper:#000;--fill:#1c1c1e;--fill-2:#2c2c2e;--ink:#f5f5f7;--ink-2:#c7c7cc;--ink-3:#8e8e93;--hair:#2c2c2e;--hair-2:#1f1f21;--acc:#f5f5f7;--acc-fg:#000;--acc-wash:#262234;--acc-line:#403b54;--brand:#3fb950;--brand-solid:#238636;--brand-fg:#fff;--brand-wash:#3fb95024;--brand-line:#3fb95080;--attn:#e0a83c;--attn-wash:#2a2214;--attn-line:#5c4818;--here:#5cb87e;--here-line:#5cb87e73;--add:#30d158;--add-tint:#30d15813;--add-row:#30d15821;--add-word:#30d15847;--del:#ff453a;--del-tint:#ff453a12;--del-row:#ff453a1f;--del-word:#ff453a42;--danger:#ff453a;--danger-wash:#2a1211;--dir-ico:#64a9f2;--exp-wash:#388bfd29;--exp-ink:#4493f8;--exp-hover:#1f6feb;--exp-hover-fg:#fff;--lift:0 1px 2px #00000080, 0 12px 32px -16px #000c;--lift-lg:0 24px 64px -20px #000000d9}}:root[data-theme=dark]{--paper:#000;--fill:#1c1c1e;--fill-2:#2c2c2e;--ink:#f5f5f7;--ink-2:#c7c7cc;--ink-3:#8e8e93;--hair:#2c2c2e;--hair-2:#1f1f21;--acc:#f5f5f7;--acc-fg:#000;--acc-wash:#262234;--acc-line:#403b54;--brand:#3fb950;--brand-solid:#238636;--brand-fg:#fff;--brand-wash:#3fb95024;--brand-line:#3fb95080;--attn:#e0a83c;--attn-wash:#2a2214;--attn-line:#5c4818;--here:#5cb87e;--here-line:#5cb87e73;--add:#30d158;--add-tint:#30d15813;--add-row:#30d15821;--add-word:#30d15847;--del:#ff453a;--del-tint:#ff453a12;--del-row:#ff453a1f;--del-word:#ff453a42;--danger:#ff453a;--danger-wash:#2a1211;--dir-ico:#64a9f2;--exp-wash:#388bfd29;--exp-ink:#4493f8;--exp-hover:#1f6feb;--exp-hover-fg:#fff;--lift:0 1px 2px #00000080, 0 12px 32px -16px #000c;--lift-lg:0 24px 64px -20px #000000d9}:root[data-theme=light]{--paper:#fff;--fill:#f5f5f7;--fill-2:#ebebed;--ink:#1d1d1f;--ink-2:#515154;--ink-3:#6e6e73;--hair:#e5e5e7;--hair-2:#f0f0f2;--acc:#1d1d1f;--acc-fg:#fff;--acc-wash:#edeef0;--acc-line:#c9c4d6;--brand:#1a7f37;--brand-solid:#1f883d;--brand-fg:#fff;--brand-wash:#1f883d1a;--brand-line:#1f883d73;--attn:#9a6206;--attn-wash:#faf1e2;--attn-line:#e6cfa0;--here:#3d8a5c;--here-line:#3d8a5c6b;--add:#248a3d;--add-tint:#248a3d0e;--add-row:#248a3d1a;--add-word:#248a3d38;--del:#c9252d;--del-tint:#c9252d0d;--del-row:#c9252d16;--del-word:#c9252d33;--danger:#c9252d;--danger-wash:#fdeded;--dir-ico:#3f7fc9;--exp-wash:#ddf4ff;--exp-ink:#0969da;--exp-hover:#0969da;--exp-hover-fg:#fff;--lift:0 1px 2px #0000000a, 0 12px 32px -16px #00000024;--lift-lg:0 24px 64px -20px #00000047}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--sans);font-size:var(--t-14);letter-spacing:-.005em;background:var(--paper);color:var(--ink);line-height:1.55}.icon{flex:none;display:block}.chevron{color:var(--ink-3);flex:none;transition:transform .16s;display:flex}.chevron-shut{transform:rotate(-90deg)}@media (prefers-reduced-motion:reduce){.chevron{transition:none}}.kbd{font-family:var(--mono);font-size:var(--t-11);color:var(--ink-3);background:var(--fill);border-radius:5px;padding:2px 5px}.layout{flex-direction:column;height:100%;display:flex}.top{align-items:center;gap:var(--s-6);height:53px;padding:0 var(--s-6);border-bottom:1px solid var(--hair);white-space:nowrap;flex-shrink:0;display:flex}.mark{align-items:center;gap:var(--s-3);font-size:var(--t-15);letter-spacing:-.02em;font-weight:600;display:flex}.mark .icon{width:36px;height:36px}.living-mark path{animation-duration:9s;animation-timing-function:var(--ease-out);transform-box:fill-box;transform-origin:50%;animation-iteration-count:infinite}.living-mark .lm-l1,.living-mark .lm-minus{animation-name:lm-leave}.living-mark .lm-l3{stroke-dasharray:10.2 10.2;animation-name:lm-rewrite}.living-mark .lm-plus-h{animation-name:lm-plus-h}.living-mark .lm-plus-v{animation-name:lm-plus-v}@keyframes lm-leave{0%,10%{stroke:currentColor;opacity:1;transform:translate(0)}14%{stroke:var(--del);opacity:1;transform:translate(0)}22%{stroke:var(--del);opacity:0;transform:translate(7px)}22.1%,52%{stroke:currentColor;opacity:0;animation-timing-function:cubic-bezier(.34,1.56,.64,1);transform:translate(-7px)}62%,to{stroke:currentColor;opacity:1;transform:translate(0)}}@keyframes lm-rewrite{0%,24%{stroke:currentColor;stroke-dashoffset:0}28%{stroke:currentColor;stroke-dashoffset:10.2px}28.1%{stroke:var(--brand);stroke-dashoffset:10.2px}38%,60%{stroke:var(--brand);stroke-dashoffset:0}66%,to{stroke:currentColor;stroke-dashoffset:0}}@keyframes lm-plus-h{0%,28%{stroke:currentColor}30%,60%{stroke:var(--brand)}66%,to{stroke:currentColor}}@keyframes lm-plus-v{0%,24%{stroke:currentColor;transform:scaleY(1)}27%{stroke:currentColor;transform:scaleY(0)}27.1%,36%{stroke:var(--brand);animation-timing-function:cubic-bezier(.34,1.56,.64,1);transform:scaleY(0)}42%,60%{stroke:var(--brand);transform:scaleY(1)}66%,to{stroke:currentColor;transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.living-mark path{animation:none}}:root[data-motion=off] .living-mark path{animation:none}.wordmark{display:inline-flex}.wordmark-letter{animation:wordmark-retype 9s var(--ease-out) infinite;animation-delay:calc(var(--i,0) * 90ms);display:inline-block}@keyframes wordmark-retype{0%,12%{color:currentColor;opacity:1;transform:translateY(0)}15%,20%{color:var(--del);opacity:1;transform:translateY(0)}22%{color:var(--del);opacity:0;transform:translateY(-5px)}22.1%,28%{color:var(--brand);opacity:0;animation-timing-function:cubic-bezier(.34,1.56,.64,1);transform:translateY(6px)}32%,60%{color:var(--brand);opacity:1;transform:translateY(0)}66%,to{color:currentColor;opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.wordmark-letter{animation:none}}:root[data-motion=off] .wordmark-letter{animation:none}.center-note .center-mark{color:var(--ink);margin-bottom:var(--s-4)}.dev-badge{font-family:var(--mono);font-size:var(--t-11);letter-spacing:0;border-radius:var(--r-pill);color:var(--attn);background:var(--attn-wash);border:1px solid var(--attn-line);padding:3px 6px;font-weight:600;line-height:1}.repo{font-family:var(--mono);font-size:var(--t-13);color:var(--ink-3);text-overflow:ellipsis;min-width:0;overflow:hidden}.cmp-dot{color:var(--ink-3)}.where-bit{font-family:var(--mono);font-size:var(--t-12);color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:3px;min-width:0;max-width:22ch;display:inline-flex;overflow:hidden}.where-bit svg{opacity:.75;flex:none}.grow{min-width:var(--s-3);flex:1}.cmp{font-size:var(--t-125);color:var(--ink-2);flex-shrink:0;align-items:center;gap:7px;display:inline-flex}.cmp-side{font-family:var(--mono);font-size:var(--t-12);color:var(--ink)}.cmp-side-base{color:var(--ink-2)}.cmp-arrow{color:var(--ink-3);width:12px;height:12px}.cmp-size{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:11.5px}.cmp-n{font-family:var(--mono);font-variant-numeric:tabular-nums;padding-left:var(--s-3);border-left:1px solid var(--hair);margin-left:var(--s-1);font-size:11.5px}.prog-track{background:var(--fill-2);border-radius:2px;width:56px;height:3px;overflow:hidden}.prog-track i{background:var(--brand);height:3px;transition:width .35s var(--ease-out);border-radius:2px;display:block}.stat-add{color:var(--add)}.stat-del{color:var(--del)}@media (width<=1080px){.top{gap:var(--s-5)}.cmp-n{display:none}}@media (width<=900px){.cmp,.repo{display:none}}.body{flex:1;min-height:0;display:flex}.rail{width:var(--rail-w,264px);border-right:1px solid var(--hair);min-height:0;transition:width var(--dur-move) var(--ease-out), opacity .18s ease;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden;container-type:inline-size}.rail-dragging .rail{transition:none}.nav-hidden .rail{opacity:0;pointer-events:none;visibility:hidden;width:0;transition:width var(--dur-move) var(--ease-out), opacity .16s ease, visibility 0s var(--dur-move);border-right-color:#0000}.nav-hidden .rail-resize{display:none}.rail-resize{z-index:5;cursor:col-resize;touch-action:none;flex:none;width:7px;margin:0 -3px;position:relative}.rail-resize:after{content:"";width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.rail-resize:hover:after,.rail-resize:active:after{background:var(--acc)}.rail-search{padding:var(--s-5) 14px var(--s-4);align-items:center;gap:var(--s-2);display:flex}.sb{flex:1;align-items:center;min-width:0;display:flex;position:relative}.rail-filter-on{color:var(--attn)}.rail-tally{padding:0 var(--s-6) var(--s-3);font-size:var(--t-11);color:var(--ink-3)}.menu-n{font-size:var(--t-11);color:var(--ink-3);font-variant-numeric:tabular-nums;margin-left:6px}.sb>svg{color:var(--ink-3);pointer-events:none;position:absolute;left:9px}.nav-search{width:100%;height:30px;font:inherit;font-size:var(--t-13);color:var(--ink);background:var(--fill);border-radius:var(--r-sm);border:0;padding:0 34px 0 31px}.nav-search::placeholder{color:var(--ink-3)}.nav-search::-webkit-search-cancel-button{appearance:none}.sb-clear{border-radius:var(--r-sm);width:22px;height:22px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;right:5px}.sb-clear:hover{background:var(--fill-2);color:var(--ink)}.sb-clear:focus-visible,.nav-search:focus{outline:2px solid var(--acc);outline-offset:-1px}.sb .kbd{right:var(--s-3);background:var(--paper);position:absolute}.tabs{background:var(--fill);border-radius:var(--r-sm);flex:none;gap:2px;margin:10px 12px 6px;padding:2px;display:flex}.tab{text-overflow:ellipsis;min-width:0;font:inherit;font-size:var(--t-12);color:var(--ink-3);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;flex:1;justify-content:center;align-items:center;gap:5px;padding:5px 6px;display:inline-flex;overflow:hidden}.tab[aria-selected=true]{background:var(--paper);color:var(--ink);font-weight:600}.tab-n{font-size:var(--t-11);color:var(--ink-3);font-variant-numeric:tabular-nums}.tab[aria-selected=true] .tab-n{color:var(--ink-2)}.tab-dot{background:var(--attn);border-radius:50%;flex:none;width:6px;height:6px}.clist{padding-bottom:var(--s-4);flex:1;overflow:auto}.crow{align-items:start;gap:var(--s-3);width:100%;padding:7px 14px 8px var(--s-5);grid-template-columns:15px minmax(0,1fr) auto;display:grid}.crow>*{min-width:0}.crow:hover{background:var(--fill)}.crow[aria-current=true]{background:var(--acc-wash)}.crow-mark{border:1.25px solid var(--hair);color:#0000;cursor:pointer;width:15px;height:15px;transition:background var(--dur), border-color var(--dur), color var(--dur);background:0 0;border-radius:50%;justify-content:center;align-items:center;margin-top:2px;padding:0;display:flex}.crow-mark svg{width:9px;height:9px}.crow:hover .crow-mark:not(:disabled){border-color:var(--ink-3);color:var(--ink-3)}.crow .crow-mark:hover:not(:disabled){border-color:var(--ink-2);color:var(--ink-2);background:var(--fill-2)}.crow-mark:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.crow-mark:disabled{cursor:default}.crow-mark[aria-pressed=true]{background:var(--acc);border-color:var(--acc);color:var(--acc-fg)}.crow:hover .crow-mark[aria-pressed=true]{border-color:var(--acc);color:var(--acc-fg)}.crow-pick{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;display:block}.crow-pick:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:var(--r-sm)}.crow-q{font-size:var(--t-13);color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;line-height:1.4;display:block;overflow:hidden}.crow-hot .crow-q{color:var(--ink);font-weight:600}.crow-done .crow-q{color:var(--ink-3)}.crow-sub{font-size:var(--t-12);color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;line-height:1.4;display:block;overflow:hidden}.crow-where{font-family:var(--mono);font-size:var(--t-11)}.crow-where-gone{text-decoration:line-through}.crow-sep{opacity:.5;padding:0 2px}.crow-kind{color:var(--ink-2);font-weight:600}.crow-state-agent{color:var(--attn)}.crow-when{font-size:var(--t-11);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;grid-area:1/3;margin-top:3px}.crow-hot .crow-when{color:var(--attn)}.crow .crow-del{grid-area:1/3;align-self:start;display:none}.crow:hover .crow-when,.crow:focus-within .crow-when{display:none}.crow:hover .crow-del,.crow:focus-within .crow-del{opacity:1;transition:opacity var(--dur) ease;display:flex}@starting-style{.crow:hover .crow-del,.crow:focus-within .crow-del{opacity:0}}.row-act-danger:hover{background:var(--danger-wash);color:var(--danger)}.clist-clear{width:100%;padding:var(--s-4) var(--s-6);font:inherit;font-size:var(--t-12);color:var(--ink-3);text-align:left;cursor:pointer;background:0 0;border:none;display:block}.clist-clear:hover{color:var(--danger)}.rail-empty .clist-clear{padding:var(--s-3) 0 0}.clist-quiet{padding:var(--s-4) var(--s-6) var(--s-2);font-size:var(--t-13);color:var(--ink-2);line-height:1.5}.clist-quiet-n{color:var(--ink-3);font-size:var(--t-12)}.row-count-hot{color:var(--attn)}.row-since{background:var(--ink-3);border-radius:50%;flex:none;width:6px;height:6px}.row-since-changed{background:var(--attn)}.src-seg{background:var(--fill-2);border-radius:var(--r-sm);flex:none;gap:2px;margin:0 12px 8px;padding:2px;display:flex}.src-chip{border-radius:calc(var(--r-sm) - 2px);min-width:0;height:22px;color:var(--ink-3);cursor:pointer;font:inherit;font-size:var(--t-12);white-space:nowrap;background:0 0;border:0;flex:1;justify-content:center;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.src-chip:hover{color:var(--ink)}.src-chip[aria-checked=true]{background:var(--paper);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0000001f}.src-chip:focus-visible{outline:2px solid var(--acc);outline-offset:-1px}.rail-scroll{padding-bottom:var(--s-4);scrollbar-width:thin;scrollbar-color:var(--hair) transparent;flex:1;overflow-y:auto}.rail-rule{background:var(--hair);height:1px;margin:var(--s-0) 0}.rail-hidden{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-6);border-top:1px solid var(--hair);background:var(--paper);font-size:var(--t-12);color:var(--ink-3);flex:none;display:flex}.rail-hidden-show{color:var(--ink-2);font:inherit;font-size:var(--t-12);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.rail-hidden-show:hover{color:var(--ink);text-decoration:underline}.rail-empty{color:var(--ink-3);padding:var(--s-3) var(--s-6);font-size:var(--t-13)}.sec-head{letter-spacing:.04em;text-transform:uppercase;width:100%;color:var(--ink-3);padding:5px var(--s-6) 7px;background:0 0;border:0;align-items:center;gap:7px;font-family:inherit;font-size:11.5px;font-weight:600;display:flex}.sec-n{font-variant-numeric:tabular-nums;letter-spacing:0;margin-left:auto}.sec-head-fold{cursor:pointer}.sec-head-fold:hover{color:var(--ink-2)}.sec-row{align-items:center;display:flex}.sec-row .sec-head{flex:1;min-width:0}.sec-row .sec-act{margin-right:9px;display:none}.sec-row:hover .sec-act,.sec-row:focus-within .sec-act{opacity:1;transition:opacity var(--dur) ease;display:flex}@starting-style{.sec-row:hover .sec-act,.sec-row:focus-within .sec-act{opacity:0}}.sec-row-hasact:hover .sec-n,.sec-row-hasact:focus-within .sec-n{display:none}.sec-head-hot{color:var(--attn)}.pin{padding:var(--s-0) 0 var(--s-4)}.pin-row{width:100%;padding:7px var(--s-6);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:15px 1fr;gap:9px;display:grid}.pin-row:hover{background:var(--attn-wash)}.pin-row>svg{color:var(--attn);margin-top:2px}.pin-text{flex-direction:column;min-width:0;display:flex}.pin-t1{font-size:var(--t-125);color:var(--ink);letter-spacing:-.008em;text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.pin-more{width:100%;padding:var(--s-1) var(--s-6) var(--s-0) 40px;color:var(--ink-3);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-size:11.5px;display:block}.pin-more:hover{color:var(--ink-2)}.pin-t2{color:var(--ink-3);font-size:11.5px;font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;overflow:hidden}.row{align-items:center;gap:var(--s-3);width:100%;padding:5px 14px 5px var(--s-5);font-size:var(--t-13);color:var(--ink-2);transition:background var(--dur) ease;animation:slide-in .18s var(--ease-out) both;grid-template-columns:15px 1fr auto;display:grid}@keyframes slide-in{0%{opacity:0;transform:translate(-4px)}}.pin-row{animation:slide-in .18s var(--ease-out) both}.row:hover{background:var(--fill)}.row[aria-current=true]{background:var(--fill);color:var(--ink)}.row-pick{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.row-pick:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:var(--r-sm)}.row-name{align-items:baseline;gap:var(--s-2);min-width:0;font-family:var(--mono);font-size:var(--t-12);white-space:nowrap;display:flex;overflow:hidden}.row-base{text-overflow:ellipsis;overflow:hidden}.row[aria-current=true] .row-base{color:var(--ink);font-weight:600}.row-box{cursor:pointer;background:0 0;border:none;flex:0 0 15px;justify-content:center;align-items:center;width:15px;height:15px;padding:0;display:flex}.row-box:disabled{cursor:default}.row-box:focus-visible{outline:2px solid var(--acc);outline-offset:1px;border-radius:var(--s-1)}.row-box:hover:not(:disabled) .markbox{border-color:var(--ink-2)}.markbox{border-radius:var(--s-1);border:1.5px solid var(--ink-3);color:#0000;width:15px;height:15px;transition:background var(--dur), border-color var(--dur);background:0 0;flex:0 0 15px;justify-content:center;align-items:center;display:flex}.markbox svg{width:10px;height:10px}.markbox[data-state=on]{background:var(--brand-solid);border-color:var(--brand-solid);color:var(--brand-fg)}.markbox[data-state=mixed]:after{content:"";background:var(--ink-2);border-radius:1px;flex:none;width:8px;height:2px}.row-dir .row-pick{grid-column:2;align-items:center;display:flex}.row-dir .row-name{align-items:center;gap:var(--s-2)}.dir-ico{color:var(--dir-ico);flex:none;display:flex}.row-done .dir-ico{color:var(--ink-3)}.row-st{font-variant-numeric:tabular-nums;flex:none;font-weight:600}.row-st-add{color:var(--add)}.row-st-del{color:var(--del)}.row-was{color:var(--ink-3);text-overflow:ellipsis;flex:0 auto;overflow:hidden}.row-base-del{text-decoration:line-through}.row-done{color:var(--ink-3)}.row-right{align-items:center;gap:7px;display:flex}.row-acts{align-items:center;gap:1px;display:none}.row:hover .row-acts,.row:focus-within .row-acts{opacity:1;transition:opacity var(--dur) ease;display:flex}@starting-style{.row:hover .row-acts,.row:focus-within .row-acts{opacity:0}}.row-passive{align-items:center;gap:7px;display:inline-flex}.row:hover .row-passive,.row:focus-within .row-passive{display:none}.row-act{border-radius:var(--r-sm);width:22px;height:22px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.row-act:hover{background:var(--fill-2);color:var(--ink)}.row-act:focus-visible{outline:2px solid var(--acc);outline-offset:-1px}.row-count{font-size:var(--t-11);color:var(--ink-3);font-variant-numeric:tabular-nums;align-items:center;gap:3px;display:inline-flex}.reading-pane{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--hair) transparent;flex-direction:column;flex:1;display:flex;overflow-y:scroll}.reading-pane-barred{overflow-anchor:none}.reading-col{padding:var(--s-3) var(--s-8) 120px;flex:1 0 auto}.reading-pane-barred .reading-col{padding-top:var(--s-6)}.pane-bar{z-index:5;align-items:center;gap:var(--s-3);height:36px;padding:0 var(--s-8);background:var(--paper);border-bottom:1px solid var(--hair);flex:none;display:flex;position:sticky;top:0}.pane-left{font-family:var(--mono);font-size:var(--t-12);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.prog-track-pane{border-radius:3px;width:84px;height:5px}.prog-track-pane i{border-radius:3px;height:5px}.pane-at{font-family:var(--mono);font-size:var(--t-12);color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:var(--s-2);border-left:1px solid var(--hair)}.pane-q{align-items:center;gap:var(--s-2);min-width:0;height:22px;padding:0 var(--s-3) 0 var(--s-4);border-radius:var(--r-pill);background:var(--fill-2);font:inherit;font-size:var(--t-12);color:var(--ink);cursor:pointer;transition:color var(--dur) var(--ease-out), background var(--dur) var(--ease-out);border:1px solid #0000;flex-shrink:1;display:inline-flex}.pane-q:hover{border-color:var(--ink-3)}.pane-q:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.pane-q .icon{color:var(--ink-3);flex:none}.pane-q-word{text-overflow:ellipsis;white-space:nowrap;max-width:14ch;font-family:var(--mono);overflow:hidden}.pane-size{gap:var(--s-2);font-family:var(--mono);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11.5px;display:inline-flex}.pane-sw{align-items:center;gap:var(--s-1);height:22px;padding:0 var(--s-4);border-radius:var(--r-pill);font:inherit;font-size:var(--t-12);color:var(--ink-3);cursor:pointer;transition:color var(--dur) var(--ease-out), background var(--dur) var(--ease-out);background:0 0;border:1px solid #0000;flex-shrink:0;display:inline-flex}.pane-sw:hover{background:var(--fill);color:var(--ink)}.pane-sw-on{background:var(--fill-2);color:var(--ink)}.pane-sw-on .menu-n{color:var(--ink-2)}.pane-sw .pane-track{display:none}.pane-sw:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.pane-track{background:var(--fill-2);width:20px;height:12px;transition:background var(--dur) var(--ease-out);border-radius:6px;flex:0 0 20px;position:relative}.pane-track i{background:var(--ink-3);width:8px;height:8px;transition:transform var(--dur) var(--ease-out), background var(--dur) var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px}.pane-sw-on .pane-track{background:var(--acc)}.pane-sw-on .pane-track i{background:var(--acc-fg);transform:translate(8px)}.pane-icon{border-radius:var(--r-sm);width:24px;height:24px;color:var(--ink-3);cursor:pointer;transition:color var(--dur) var(--ease-out), background var(--dur) var(--ease-out);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.pane-icon:hover{background:var(--fill);color:var(--ink)}.pane-icon[aria-pressed=true]{background:var(--fill-2);color:var(--ink)}.pane-icon:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.pane-nav[aria-pressed=true]{background:0 0}.pane-nav[aria-pressed=false]{color:var(--ink-2)}.pane-modes{border-radius:var(--r-sm);background:var(--fill);flex:none;align-items:center;gap:1px;padding:1px;display:inline-flex}.pane-modes .pane-icon{width:22px;height:22px}.pane-modes .pane-icon:not([aria-pressed=true]):hover{background:var(--fill-2)}.pane-act{align-items:center;gap:var(--s-2);height:24px;padding:0 var(--s-3);border-radius:var(--r-sm);font:inherit;font-size:var(--t-12);color:var(--ink-3);cursor:pointer;transition:color var(--dur) var(--ease-out), background var(--dur) var(--ease-out);background:0 0;border:none;flex:none;display:inline-flex}.pane-act:hover{background:var(--fill);color:var(--ink)}.pane-act:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.pane-sep{width:1px;height:16px;margin:0 var(--s-1);background:var(--hair);flex:none}.reading-pane-barred .file-header{top:36px}.empty-acts{align-items:center;gap:var(--s-3);margin-top:var(--s-6);display:flex}.pane-done{text-align:center;padding:68px var(--s-8) 56px;flex-direction:column;align-items:center;display:flex}.pane-done h2{color:var(--ink);animation:done-rise .5s var(--ease-out) .82s both;margin:0;font-size:21px;font-weight:600}.done-meter{width:min(300px,100%);margin-top:var(--s-6);animation:done-rise .5s var(--ease-out) .96s both}.done-bar{background:var(--fill);border-radius:3px;height:6px;overflow:hidden}.done-bar i{background:var(--brand);transform-origin:0;height:100%;transform:scaleX(var(--p,1));animation:done-fill .85s var(--ease-out) 1.02s both;display:block}.done-stats{justify-content:center;align-items:center;gap:var(--s-2) var(--s-5);margin-top:var(--s-4);font-size:var(--t-125);color:var(--ink-2);flex-wrap:wrap;display:flex}.done-stat{align-items:center;gap:5px;display:inline-flex}.done-size{gap:var(--s-2);font-family:var(--mono);font-variant-numeric:tabular-nums}.done-unsent{padding:1px var(--s-2) 1px 5px;border:1px solid var(--attn-line);border-radius:var(--r-pill);background:var(--attn-wash);color:var(--attn);font-variant-numeric:tabular-nums;gap:4px;font-weight:600}.pane-done .empty-acts{animation:done-rise .5s var(--ease-out) 1.08s both}.done-n{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}.done-card{z-index:6;margin:0 var(--s-8) var(--s-6);border:1px solid var(--hair);background:var(--paper);box-shadow:var(--lift);border-radius:12px;flex:none;padding:14px 16px;animation:.52s cubic-bezier(.18,1.3,.34,1) both done-dock;position:sticky;bottom:0}.done-card .done-seal{animation:.44s cubic-bezier(.2,1.55,.35,1) .14s both done-seal-pop;position:relative}.done-card .done-seal:after{content:"";border-radius:var(--r-pill);border:1.5px solid var(--acc);animation:seal-ring .8s var(--ease-out) .44s both;position:absolute;inset:-2px}.done-card .done-said{animation:done-line .42s var(--ease-out) .2s both}.done-card .done-acts{animation:done-line .42s var(--ease-out) .27s both}.done-card .done-caveat{animation:done-line .42s var(--ease-out) .32s both}.done-card .done-close{animation:fade-in .3s var(--ease-out) .4s both}.done-card-row{align-items:center;gap:14px;display:flex}.done-seal{border-radius:var(--r-pill);border:1.5px solid var(--acc);width:30px;height:30px;color:var(--acc);flex:none;justify-content:center;align-items:center;display:inline-flex}.done-seal-drawn{width:52px;height:52px;margin-bottom:var(--s-6);background:var(--acc);color:var(--acc-fg);border:0;animation:.62s cubic-bezier(.2,1.6,.35,1) 60ms both seal-in;position:relative}.done-seal-drawn:after{content:"";border-radius:var(--r-pill);border:2px solid var(--acc);animation:seal-ring .95s var(--ease-out) .82s both;position:absolute;inset:0}.done-tick{z-index:1;position:relative}.done-tick path{stroke-dasharray:22;animation:.5s cubic-bezier(.65,0,.35,1) .44s both tick-draw}.done-spark{position:absolute;inset:0}.done-spark i{background:var(--acc);width:2.5px;height:10px;transform:rotate(var(--a)) translateY(-28px);border-radius:2px;margin:-5px 0 0 -1.25px;animation:.66s cubic-bezier(.2,.8,.3,1) .78s both spark-out;position:absolute;top:50%;left:50%}.done-spark i:first-child{--a:0deg}.done-spark i:nth-child(2){--a:45deg}.done-spark i:nth-child(3){--a:90deg}.done-spark i:nth-child(4){--a:135deg}.done-spark i:nth-child(5){--a:180deg}.done-spark i:nth-child(6){--a:225deg}.done-spark i:nth-child(7){--a:270deg}.done-spark i:nth-child(8){--a:315deg}.done-spark i:nth-child(2n){opacity:.5;height:6px;animation-delay:.86s}.done-said{flex:1;min-width:0}.done-head{font-size:var(--t-14);color:var(--ink);font-weight:600;display:block}.done-card .done-stats{justify-content:flex-start;gap:var(--s-1) var(--s-4);color:var(--ink-3);margin-top:3px}.done-acts{flex:none}.done-close{border-radius:var(--r-sm);width:24px;height:24px;color:var(--ink-3);cursor:pointer;transition:color var(--dur) var(--ease-out), background var(--dur) var(--ease-out);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.done-close:hover{background:var(--fill);color:var(--ink)}.done-close:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.landed-card{margin-bottom:var(--s-6);border:1px solid var(--hair);background:var(--paper);box-shadow:var(--lift);border-radius:12px;flex:none;align-items:center;gap:14px;padding:12px 16px;display:flex}.landed-seal{border-radius:var(--r-pill);border:1.5px solid var(--ink-3);width:30px;height:30px;color:var(--ink-3);flex:none;justify-content:center;align-items:center;display:inline-flex}.landed-said{min-width:0;font-size:var(--t-14);color:var(--ink-2);flex:1}.landed-acts{align-items:center;gap:var(--s-3);flex:none;display:flex}.landed-sha{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}.landed-subject{color:var(--ink)}.landed-strip{align-items:center;gap:var(--s-4);margin-bottom:var(--s-6);padding:7px var(--s-5);border-radius:var(--r-sm);font-size:var(--t-13);color:var(--ink-2);border:1px solid;flex:none;display:flex}.landed-strip-merged{color:var(--ink-2);background:#8250df14;border-color:#8250df4d}.landed-strip-merged>svg,.landed-strip-merged b{color:#8250df}.landed-strip-closed{background:var(--del-tint);border-color:#cf222e4d}.landed-strip-closed>svg,.landed-strip-closed b{color:var(--del)}.landed-strip>svg{flex:none}.landed-strip b{font-weight:600}.landed-strip-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.landed-strip-act{font:inherit;font-size:var(--t-125);color:var(--ink-2);cursor:pointer;text-underline-offset:3px;white-space:nowrap;background:0 0;border:0;flex:none;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.landed-strip-act:hover:not(:disabled){color:var(--danger)}.landed-strip-act:disabled{opacity:.5;cursor:default}.landed-strip-err{font-size:var(--t-12);color:var(--danger);flex:none}.landed-full .landed-sha,.landed-full .landed-subject{color:var(--ink-2)}.cov-note-error{color:var(--danger)}.done-caveat{align-items:center;gap:var(--s-3);margin-top:var(--s-4);border-top:1px solid var(--hair);font-size:var(--t-125);color:var(--ink-2);text-align:left;padding-top:11px;display:flex}.done-caveat .icon{color:var(--attn);flex:none}.done-caveat-text{flex:1}.done-caveat-act{border:1px solid var(--hair);border-radius:var(--r-sm);height:24px;font:inherit;font-size:var(--t-12);color:var(--ink-2);cursor:pointer;white-space:nowrap;transition:background var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out);background:0 0;flex:none;padding:0 10px}.done-caveat-act:hover{background:var(--fill);border-color:var(--ink-3);color:var(--ink)}.pane-done .done-caveat{max-width:48ch;margin-top:var(--s-6);animation:done-rise .5s var(--ease-out) 1.02s both}@keyframes done-dock{0%{opacity:0;transform:translateY(78px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes done-seal-pop{0%{opacity:0;transform:scale(.3)rotate(-30deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes done-line{0%{opacity:0;transform:translateY(7px)}}@keyframes done-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes done-fill{0%{transform:scaleX(0)}}@keyframes seal-in{0%{opacity:0;transform:scale(.5)}}@keyframes spark-out{0%{opacity:0;transform:rotate(var(--a)) translateY(-26px) scaleY(.3)}25%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateY(-46px) scaleY(1)}}@keyframes seal-ring{0%{opacity:.4;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}@keyframes tick-draw{0%{stroke-dashoffset:22px}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.done-seal-drawn,.done-seal-drawn:after,.done-spark i,.done-tick path,.done-bar i,.pane-done h2,.done-meter,.pane-done .empty-acts,.pane-done .done-caveat,.done-card,.done-card .done-seal,.done-card .done-said,.done-card .done-acts,.done-card .done-caveat,.done-card .done-close{animation:none}.done-seal-drawn:after,.done-card .done-seal:after,.done-spark{display:none}.done-tick path{stroke-dasharray:none}}.reading-pane::-webkit-scrollbar{width:12px}.rail-scroll::-webkit-scrollbar{width:12px}.reading-pane::-webkit-scrollbar-thumb{background:var(--border);border:3px solid var(--bg);background-clip:padding-box;border-radius:6px}.rail-scroll::-webkit-scrollbar-thumb{background:var(--border);border:3px solid var(--bg);background-clip:padding-box;border-radius:6px}.reading-pane::-webkit-scrollbar-thumb:hover{background:var(--fg-muted);border:3px solid var(--bg);background-clip:padding-box}.rail-scroll::-webkit-scrollbar-thumb:hover{background:var(--fg-muted);border:3px solid var(--bg);background-clip:padding-box}.reading-pane::-webkit-scrollbar-track{background:0 0}.rail-scroll::-webkit-scrollbar-track{background:0 0}.file-section{margin-bottom:var(--s-6);border:1px solid var(--hair);border-radius:var(--r);background:var(--paper);scroll-margin-top:var(--s-3);overflow:clip;container-type:inline-size}.file-header{align-items:center;gap:var(--s-3);min-height:42px;padding:5px var(--s-3) 5px var(--s-2);background:var(--fill);border-bottom:1px solid var(--hair);z-index:3;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;position:sticky;top:0}.file-section-collapsed .file-header{border-bottom:none}.file-chevron{color:var(--ink-3);padding:0 var(--s-0);cursor:pointer;background:0 0;border:0;flex-shrink:0}.file-status{color:var(--ink-3);flex:none;font-size:11.5px}.file-status-added{color:var(--add)}.file-status-deleted{color:var(--del)}.file-since{padding:3px var(--s-2);border-radius:var(--r-pill);background:var(--attn-wash);color:var(--attn);font-size:var(--t-11);font-family:var(--sans);white-space:nowrap;flex:none;font-weight:600}@container (width<560px){.file-header .dstat .sq{display:none}}@container (width<480px){.file-header .dstat{display:none}}.file-path{font-family:var(--mono);font-size:var(--t-125);white-space:nowrap;grid-auto-columns:minmax(auto,max-content);grid-auto-flow:column;align-items:baseline;display:grid}.file-dir{color:var(--ink-3);text-overflow:ellipsis;direction:rtl;min-width:1.5ch;overflow:hidden}.file-base{color:var(--ink);font-weight:600}.file-oldpath{color:var(--ink-3);text-overflow:ellipsis;min-width:0;text-decoration:line-through;overflow:hidden}.ghb{border-radius:var(--r-sm);width:26px;height:26px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;transition:background .13s,color .13s;display:flex;position:relative}.ghb:hover{background:var(--fill-2);color:var(--ink)}.ghb:focus-visible{outline:2px solid var(--acc);outline-offset:-1px}.file-copy{opacity:0;transition:opacity .14s}.file-header:hover .file-copy,.file-copy:focus-visible{opacity:1}.ghb-badge{border-radius:var(--r-pill);background:var(--acc);min-width:13px;height:13px;color:var(--acc-fg);text-align:center;font-size:9px;font-weight:700;line-height:13px;font-family:var(--sans);padding:0 3px;position:absolute;top:-1px;right:-1px}.dstat{font-family:var(--mono);font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:7px;font-size:11.5px;display:flex}.sq{gap:2px;display:flex}.sq i{background:var(--hair-2);width:8px;height:8px;box-shadow:inset 0 0 0 1px var(--hair);border-radius:2px;display:block}.sq i.sq-a{background:var(--add);box-shadow:none}.sq i.sq-d{background:var(--del);box-shadow:none}.file-stub{padding:var(--s-6) var(--s-5);color:var(--ink-3)}.file-stub-large{align-items:center;gap:var(--s-2) var(--s-4);flex-wrap:wrap;display:flex}.hunk-boundary td{background:var(--fill);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);padding:0}.hunk:first-child .hunk-boundary td{border-top:0}.hunk-boundary-bar{align-items:center;gap:var(--s-2);padding:0 var(--s-3) 0 0;min-height:27px;font-family:var(--mono);font-size:var(--t-11);font-variant-numeric:tabular-nums;color:var(--ink-3);display:flex}.hunk-boundary-bar>.hunk-at:first-child{margin-left:var(--s-3)}.hunk-at{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.hunk-at-scope{color:var(--ink-2)}.hunk-lines{border-collapse:collapse;width:100%;font-family:var(--mono);font-size:var(--t-125);--line-h:calc(1.65 * var(--t-125));line-height:1.65}.hunk-lines tr.line{height:var(--line-h)}.line:hover{background:var(--fill)}.line-no{text-align:right;width:1%;min-width:2.9em;color:var(--ink-3);font-size:var(--t-11);-webkit-user-select:none;user-select:none;vertical-align:top;font-variant-numeric:tabular-nums;padding:0 .7em;position:relative}.line-no+.line-no{border-right:1px solid var(--hair)}.line-marker{text-align:center;width:1%;color:var(--ink-3);-webkit-user-select:none;user-select:none;vertical-align:top;padding:0 .35em;font-weight:600}.line-code{white-space:pre-wrap;word-break:break-word;padding:0 .6em 0 .5em}.line-add{background:var(--add-row)}.line-add .line-marker{color:var(--add);box-shadow:inset 2px 0 0 var(--add)}.line-del{background:var(--del-row)}.line-del .line-marker{color:var(--del);box-shadow:inset 2px 0 0 var(--del)}.line-add .word-changed,.line-half-add .word-changed{background:var(--add-word);box-shadow:0 0 0 1px var(--add-word);border-radius:3px}.line-del .word-changed,.line-half-del .word-changed{background:var(--del-word);box-shadow:0 0 0 1px var(--del-word);border-radius:3px}.hunk-viewed .hunk-lines>tbody>tr.line,.hunk-viewed .hunk-lines>tbody>tr.hunk-boundary{opacity:.45}.hunk-selected{box-shadow:inset 3px 0 0 var(--acc), 0 0 0 1px var(--acc-line)}.gap-x{flex-direction:column;flex:none;align-self:stretch;width:3em;display:flex}.gap-btn{background:var(--exp-wash);min-height:0;color:var(--exp-ink);cursor:pointer;font:inherit;transition:background var(--dur) var(--ease-out), color var(--dur) var(--ease-out);border:0;flex:1;justify-content:center;align-items:center;padding:0;display:inline-flex}.gap-btn:hover{background:var(--exp-hover);color:var(--exp-hover-fg)}.gap-fold{color:var(--ink-3);border-radius:var(--r-sm);padding:0 var(--s-2);cursor:pointer;min-width:28px;font:inherit;background:0 0;border:0;justify-content:center;align-self:stretch;align-items:center;display:inline-flex}.gap-fold:hover{background:var(--fill-2);color:var(--ink)}.hunk-boundary-merged td{background:0 0;border-top:0;border-bottom:0}.hunk-boundary-merged .hunk-boundary-bar{min-height:0}.hunk-boundary-merged .gap-fold{margin-left:var(--s-1);padding:0 var(--s-2);opacity:.55;min-height:16px}.hunk-boundary-merged .gap-fold:hover{opacity:1}.gap-band .hunk-boundary td{border-bottom:0}.hunk-expand-failed{padding:3px var(--s-2);border-radius:var(--r-pill);background:var(--attn-wash);color:var(--attn);font-family:var(--sans);white-space:nowrap}.hunk-lines-split{table-layout:fixed}.hunk-lines-split .split-col-no{width:3.2em}.hunk-lines-split .line-no{padding:0 .6em}.line-half{white-space:pre-wrap;word-break:break-word;width:50%;padding:0 1em 0 .4em}.line-half-add{background:var(--add-bg)}.line-half-del{background:var(--del-bg)}.line-half-empty{background:var(--bg-subtle);opacity:.5}.image-diff{justify-content:center;gap:1rem;padding:1rem;display:flex}.image-side{text-align:center;margin:0}.image-side img{border:1px solid var(--border);border-radius:6px;max-width:100%;max-height:420px}.image-side-base img{border-color:var(--del-fg)}.image-side-head img{border-color:var(--add-fg)}.image-side figcaption{color:var(--fg-muted);margin-top:.3rem;font-size:12px}.file-preview-btn{align-items:center;gap:var(--s-2);border-radius:var(--r-sm);border:1px solid var(--hair);background:var(--paper);height:26px;font:inherit;font-size:var(--t-125);color:var(--ink-2);cursor:pointer;flex:none;padding:0 9px;transition:border-color .13s,color .13s;display:inline-flex}.file-preview-btn:hover{border-color:var(--ink-3);color:var(--ink)}.file-preview-btn:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.file-preview-btn .icon{color:var(--ink-3)}.file-preview-btn:hover .icon{color:var(--ink-2)}.file-viewed-toggle{align-items:center;gap:var(--s-2);border-radius:var(--r-sm);border:1px solid var(--hair);background:var(--paper);height:26px;font:inherit;font-size:var(--t-125);color:var(--ink-2);cursor:pointer;flex:none;padding:0 9px;transition:border-color .13s,color .13s;display:inline-flex}.file-viewed-toggle:hover{border-color:var(--ink-3);color:var(--ink)}.file-viewed-toggle .markbox{flex:0 0 14px;width:14px;height:14px}.file-viewed-toggle[aria-pressed=true]{color:var(--ink)}.file-viewed-toggle:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.hunk-badge{margin-left:var(--s-4);padding:3px var(--s-2);border-radius:var(--r-pill);background:var(--attn-wash);color:var(--attn);font-size:var(--t-11);font-family:var(--sans)}.hunk-since-review{box-shadow:inset 2px 0 0 var(--attn)}@keyframes hunk-pulse{0%{box-shadow:inset 2px 0 0 var(--attn);background:var(--attn-wash)}to{background:0 0;box-shadow:inset 2px 0 #0000}}.hunk-fresh{animation:2.5s ease-out hunk-pulse}@keyframes thread-found{0%{box-shadow:0 0 #0000}22%{box-shadow:0 0 16px 1px var(--found)}55%{box-shadow:0 0 16px 1px var(--found)}to{box-shadow:0 0 22px 4px #0000}}.thread[data-found]{--found:color-mix(in srgb, var(--acc) 26%, transparent);animation:1.6s ease-in-out thread-found}@keyframes file-found{0%,to{background:var(--fill)}22%,55%{background:color-mix(in srgb, var(--acc) 14%, var(--fill))}}.file-section[data-found]>.file-header{animation:1.6s ease-in-out file-found}@media (prefers-reduced-motion:reduce){.file-section[data-found]>.file-header,.thread[data-found]{animation:none}}@keyframes line-found{0%,to{background:0 0}18%,55%{background:color-mix(in srgb, var(--acc) 16%, transparent)}}.hunk-lines tr.line[data-found]>td{animation:1.6s ease-in-out line-found}@media (prefers-reduced-motion:reduce){.hunk-lines tr.line[data-found]>td{animation:none}}.center-note{justify-content:center;align-items:center;gap:var(--s-3);height:100%;padding:var(--s-8);color:var(--ink-3);text-align:center;flex-direction:column;display:flex}.center-note h2{font-size:var(--t-17);color:var(--ink);margin:0;font-weight:600}.center-note p{max-width:52ch;margin:0;font-size:13.5px}.center-note-error svg{color:var(--danger)}.center-note-error p{font-family:var(--mono);font-size:var(--t-125);color:var(--ink-2)}.shimmer{border-radius:var(--r-sm);width:min(340px,60vw);height:11px;margin-bottom:var(--s-0);background:linear-gradient(90deg, var(--fill) 25%, var(--fill-2) 37%, var(--fill) 63%);background-size:400% 100%;animation:1.5s linear infinite shimmer}.shimmer-short{width:min(220px,40vw);margin-bottom:var(--s-4)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.shimmer{animation:none}}.load-more{padding:var(--s-6) 0}.pane-hidden{justify-content:center;align-items:center;gap:var(--s-2) var(--s-4);margin:var(--s-6) auto var(--s-8);font-size:var(--t-125);color:var(--ink-3);flex-wrap:wrap;display:flex}.pane-hidden-said{align-items:center;gap:var(--s-2);display:inline-flex}.pane-hidden-said .icon{color:var(--ink-3)}.empty-state{padding:52px var(--s-8);text-align:center;color:var(--ink-3);flex-direction:column;align-items:center;gap:5px;display:flex}.empty-state svg{color:var(--ink-3);margin-bottom:var(--s-4)}.empty-state h2{font-size:var(--t-17);color:var(--ink);margin:0;font-weight:600}.empty-state p{max-width:44ch;font-size:var(--t-14);margin:0}.line-comment-btn{opacity:0;border-radius:var(--r-sm);background:var(--acc);width:18px;height:18px;color:var(--acc-fg);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:50%;left:1px;transform:translateY(-50%)}.line-comment-btn svg{width:11px;height:11px}tr:hover .line-comment-btn,.line-comment-btn:focus-visible{opacity:1}.hunk-lines tr.line-ranged>td:first-child,.hunk-lines tr.thread-row-ranged>td{box-shadow:inset 2px 0 0 var(--ink-3)}.line-range-glyph{color:var(--ink-2);pointer-events:none;align-items:center;display:flex;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.line-range-glyph svg{width:10px;height:10px}tr:hover .line-range-glyph{opacity:0}.hunk-lines tr.line-focus>td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.hunk-lines tr.line-sel>td{background:var(--exp-wash)}.hunk-lines tr.line-sel>td:first-child,.hunk-lines tr.thread-row-ranged.thread-row-lit>td{box-shadow:inset 2px 0 0 var(--exp-ink)}.thread-row>td{background:var(--bg-subtle);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:.35rem .8rem}.thread-list{flex-direction:column;gap:.5rem;display:flex}.thread{border:1px solid var(--hair);border-radius:var(--r);background:var(--paper);font-family:var(--sans);font-size:var(--t-13);max-width:var(--conv);scroll-margin-top:var(--s-3);overflow:hidden}.file-section .thread{scroll-margin-top:50px}.reading-pane-barred .thread{scroll-margin-top:44px}.reading-pane-barred .file-section .thread{scroll-margin-top:86px}.thread-resolved{opacity:.6}.thread-head{align-items:center;gap:var(--s-2);padding:5px var(--s-4) 5px var(--s-2);border-bottom:1px solid var(--hair);background:var(--hair-2);font-size:var(--t-12);color:var(--ink-3);display:flex}.thread-shut{border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;padding:3px}.thread-shut:hover{color:var(--ink);background:var(--fill-2)}.thread-where{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.thread-where-n{color:var(--ink-3);font-variant-numeric:tabular-nums}.thread-where-gone{font-family:var(--mono);text-decoration:line-through}.thread-shut-peek{width:100%;padding:var(--s-3) var(--s-5);color:var(--ink-2);font:inherit;font-size:var(--t-13);text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;contain:inline-size;background:0 0;border:0;display:block;overflow:hidden}.thread-shut-peek:hover{background:var(--hair-2)}.thread-marks{align-items:center;gap:var(--s-2);margin-left:auto;display:inline-flex}.thread-collapsed{border-bottom:0}.thread-collapsed .thread-collapsed-summary{padding:var(--s-1) 0}.thread-spacer{flex:1}.chip{border-radius:var(--r-pill);font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:500;display:inline-flex}.chip-mute{color:var(--ink-3);background:var(--fill)}.chip-ok{color:var(--add);background:var(--add-tint)}.chip-attn{color:var(--attn);background:var(--attn-wash)}.thread-badge{white-space:nowrap;padding:3px var(--s-2);border-radius:var(--r-pill);background:var(--attn-wash);color:var(--attn);font-size:var(--t-11);flex:none;align-items:center;gap:5px;display:inline-flex}.thread-badge-kind{background:var(--fill-2);color:var(--ink-2);font-weight:600}.thread-message-pending{opacity:.9}.thread-message-pending .cmt-when{color:var(--ink-3)}.pending-dots{align-items:center;gap:4px;padding:3px 0;display:inline-flex}.pending-dots i{background:var(--ink-3);opacity:.5;border-radius:50%;width:6px;height:6px}.thread-message-unanswered{opacity:1}.thread-message-unanswered .cmt-when{font-style:italic}.pending-none{color:var(--ink-3);font-size:12px}.thread-copied{color:var(--add-fg);font-size:12px}.thread-context-toggle{border:none;border-bottom:1px solid var(--border);background:var(--bg-subtle);width:100%;color:var(--ink-3);font:inherit;font-size:var(--t-125);padding:5px var(--s-4);cursor:pointer;text-align:left;align-items:center;gap:6px;display:flex}.thread-context-toggle:hover{color:var(--ink-2)}.thread-context-n{font-size:var(--t-11);opacity:.75;margin-left:auto}.thread-context{margin:0 var(--s-4) var(--s-3);border:1px solid var(--hair);border-radius:var(--r-sm);background:var(--paper);font-family:var(--mono);white-space:pre;padding:.35rem 0;font-size:11px;overflow-x:auto}.ctx-line{padding:0 .6rem;display:block}.ctx-add{background:var(--add-bg)}.ctx-del{background:var(--del-bg)}.thread-messages{flex-direction:column;display:flex}.cmt{padding:var(--s-4) var(--s-5)}.cmt+.cmt{border-top:1px solid var(--hair-2)}.cmt-head{align-items:center;gap:var(--s-1) var(--s-3);flex-wrap:wrap;margin-bottom:5px;display:flex}.cmt-who{font-size:var(--t-13);color:var(--ink);font-weight:600}.cmt-who-reviewer{color:var(--acc)}.cmt-who-agent{color:var(--attn)}.cmt-when{font-size:var(--t-12);color:var(--ink-3);font-variant-numeric:tabular-nums}.cmt-body{font-size:var(--t-14);color:var(--ink);padding-left:30px;line-height:1.6}.cmt-body>:is(p,ul,ol,blockquote,h1,h2,h3,h4,h5,h6){max-width:88ch}.cmt-edit{opacity:0;transition:opacity var(--dur) ease;margin-left:auto}.thread-message:hover .cmt-edit,.cmt-edit:focus-visible{opacity:1}@media (hover:none){.cmt-edit{opacity:1}}.cmt-edit[aria-disabled=true]{color:var(--ink-3);cursor:not-allowed}.cmt-edit-box{gap:var(--s-3);flex-direction:column;max-width:calc(88ch + 30px);padding-left:30px;display:flex}.thread-message-editing{background:var(--fill)}.cmt-edit-input{width:calc(100% + 2 * var(--s-3));margin:-7px calc(-1 * var(--s-3)) 0;min-height:0;max-height:40vh;padding:6px var(--s-3);border:1px solid var(--hair);border-radius:var(--r-sm);background:var(--paper);color:var(--ink);font-family:inherit;font-size:var(--t-14);resize:none;field-sizing:content;line-height:1.6}.cmt-edit-input:focus,.cmt-edit-input:focus-visible{border-color:var(--ink-3);outline:none}.cmt-edit-error{color:var(--danger);font-size:var(--t-12)}.cmt-edit-foot{justify-content:flex-end;gap:var(--s-2);display:flex}.cmt-cut{padding:var(--s-3) var(--s-5) 0;border-top:1px solid var(--hair-2);color:var(--attn);font-size:var(--t-12)}.cmt-cut+.cmt{padding-top:var(--s-2)}.thread-message-cut{opacity:.4;transition:opacity var(--dur) ease}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p,.markdown ul,.markdown ol,.markdown blockquote,.markdown pre{margin:0 0 var(--s-4)}.markdown ul,.markdown ol{padding-left:var(--s-7)}.markdown li{margin-bottom:3px}.markdown code{font-family:var(--mono);font-size:var(--t-125);background:var(--fill);border-radius:5px;padding:2px 5px}.markdown pre{background:var(--fill);border-radius:var(--s-3);padding:9px 11px;overflow-x:auto}.markdown pre code{background:0 0;padding:0}.markdown blockquote{border-left:2px solid var(--hair);padding-left:var(--s-5);color:var(--ink-2)}.markdown a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--ink-3);text-decoration-color:var(--ink-3)}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-size:var(--t-14);margin:var(--s-5) 0 var(--s-1);font-weight:600}.markdown table{border-collapse:collapse;font-size:var(--t-125);margin-bottom:var(--s-4)}.markdown th,.markdown td{border:1px solid var(--hair);padding:var(--s-1) var(--s-3);text-align:left}.markdown hr{border:0;border-top:1px solid var(--hair);margin:var(--s-5) 0}.markdown .mermaid-figure{background:var(--fill);border-radius:var(--s-3);padding:var(--s-3);margin-bottom:var(--s-4);overflow-x:auto}.markdown .mermaid-figure svg{max-width:100%;height:auto;margin:0 auto;display:block}.markdown .mermaid-figure text.diffo-ref{cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--ink-3);text-decoration-color:var(--ink-3)}.markdown .mermaid-figure text.diffo-ref:hover,.markdown .mermaid-figure text.diffo-ref:focus-visible{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink);outline:none}.markdown .mermaid-broken{font-size:var(--t-125);color:var(--ink-2);margin-bottom:var(--s-1)}.md-doc{font-size:var(--t-14);max-width:74ch;line-height:1.65}.md-doc p,.md-doc ul,.md-doc ol,.md-doc blockquote,.md-doc pre,.md-doc table{margin-bottom:var(--s-5)}.md-doc h1,.md-doc h2,.md-doc h3,.md-doc h4,.md-doc h5,.md-doc h6{margin:var(--s-8) 0 var(--s-3)}.md-doc h1{letter-spacing:-.015em;font-size:22px}.md-doc h2{font-size:var(--t-17);padding-bottom:var(--s-2);border-bottom:1px solid var(--hair)}.md-doc h3{font-size:var(--t-15)}.md-doc img{max-width:100%;height:auto}.cbox{border:1px solid var(--hair);border-radius:var(--r);background:var(--paper);margin:var(--s-4) 0;max-width:var(--conv);font-family:var(--sans);overflow:hidden}.cbox:focus-within{border-color:var(--acc-line)}.cbox-head{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--hair);background:var(--fill);align-items:center;gap:9px;display:flex}.cbox-title{font-size:var(--t-125);color:var(--ink-2)}.cbox-head .scope-chip,.cbox-head .cbox-widen{flex:none}.cbox-close{border-radius:var(--r-sm);width:24px;height:24px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-left:auto;padding:0;display:inline-flex}.cbox-close:hover{background:var(--fill-2);color:var(--ink)}.cbox-close:focus-visible{outline:2px solid var(--acc);outline-offset:-1px}.avatar{background:var(--fill-2);width:22px;height:22px;color:var(--ink-2);border-radius:50%;flex:0 0 22px;justify-content:center;align-items:center;display:flex}.avatar-you{background:var(--acc);color:var(--acc-fg)}.avatar-agent{background:var(--attn-wash);color:var(--attn);box-shadow:inset 0 0 0 1px var(--attn-line)}.avatar svg{width:12px;height:12px}.cbox-tabs{gap:var(--s-0);padding:var(--s-2) var(--s-2) 0;border-bottom:1px solid var(--hair);background:var(--fill);display:flex}.cbox-tab{font:inherit;font-size:var(--t-125);padding:var(--s-2) var(--s-5);color:var(--ink-3);cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:7px 7px 0 0;margin-bottom:-1px}.cbox-tab[aria-selected=true]{background:var(--paper);color:var(--ink);border-color:var(--hair);border-bottom:1px solid var(--paper);font-weight:600}.cbox-mdbar{border-bottom:1px solid var(--hair-2);flex-wrap:wrap;align-items:center;gap:1px;padding:5px 7px;display:flex}.cbox-mdb{border-radius:var(--r-sm);width:26px;height:26px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.cbox-mdb:hover{background:var(--fill);color:var(--ink)}.cbox-mdb:focus-visible{outline:2px solid var(--acc);outline-offset:-1px}.cbox-mdsep{width:1px;height:var(--s-6);background:var(--hair);margin:0 5px}.cbox-body{padding:11px var(--s-5)}.cbox .cbox-input{min-height:66px;font-size:var(--t-14);background:0 0;border:0;padding:0}.cbox .cbox-input:focus{border:0;outline:none}.cbox-preview{font-size:var(--t-14);color:var(--ink);min-height:66px;line-height:1.6}.cbox-preview-empty{color:var(--ink-3)}.scope-chip{align-items:center;gap:var(--s-2);font-size:11.5px;font-family:var(--mono);background:var(--fill);border:1px solid var(--hair);border-radius:var(--r-pill);padding:3px var(--s-1) 3px 9px;color:var(--ink-2);display:inline-flex}.scope-chip svg{color:var(--ink-3)}.scope-chip-x{width:16px;height:16px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.scope-chip-steppers{gap:1px;display:inline-flex}.scope-chip-step{width:16px;height:16px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.scope-chip-step svg{width:9px;height:9px}.scope-chip-step:hover:not(:disabled){background:var(--fill-2);color:var(--ink)}.scope-chip-step:disabled{opacity:.35;cursor:default}.scope-chip-x svg{width:9px;height:9px}.scope-chip-x:hover{background:var(--fill-2);color:var(--ink)}.cbox-widen{color:var(--ink-3);cursor:pointer;padding:3px var(--s-2);border-radius:var(--r-sm);background:0 0;border:0;font-family:inherit;font-size:11.5px}.cbox-widen:hover{background:var(--fill);color:var(--ink)}.cbox-openers{padding:0 var(--s-5) 9px;flex-wrap:wrap;align-items:center;gap:5px;display:flex}.cbox-opener{font:inherit;font-size:var(--t-12);color:var(--ink-2);border:1px solid var(--hair);border-radius:var(--r-pill);cursor:pointer;background:0 0;padding:4px 9px;line-height:1;transition:border-color .14s,background .14s,color .14s}.cbox-opener:hover{background:var(--fill);border-color:var(--ink-3);color:var(--ink)}.cbox-opener:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.cbox-foot{align-items:center;gap:var(--s-3);padding:9px var(--s-5);border-top:1px solid var(--hair);background:var(--fill);display:flex}.cbox-attach{font-size:var(--t-12);color:var(--ink-3);align-items:center;gap:5px;display:inline-flex}.cbox-rich{border-radius:var(--r-sm);min-width:26px;height:24px;color:var(--ink-3);cursor:pointer;font:inherit;font-size:var(--t-125);letter-spacing:-.01em;background:0 0;border:0;padding:0 6px;font-weight:600}.cbox-rich:hover,.cbox-rich[aria-pressed=true]{background:var(--fill-2);color:var(--ink)}.cbox-rich:focus-visible{outline:2px solid var(--acc);outline-offset:-1px}.cbox-intent{background:var(--fill-2);border-radius:var(--r-sm);align-items:center;gap:2px;padding:2px;display:inline-flex}.cbox-intent-chip{border-radius:calc(var(--r-sm) - 2px);height:20px;color:var(--ink-3);cursor:pointer;font:inherit;font-size:var(--t-12);background:0 0;border:0;padding:0 8px}.cbox-intent-chip:hover{color:var(--ink)}.cbox-intent-chip[aria-checked=true]{background:var(--paper);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0000001f}.cbox-intent-chip:focus-visible{outline:2px solid var(--acc);outline-offset:-1px}.cbox-actions{align-items:center;gap:var(--s-2);margin-left:auto;display:flex}.btn-kbd{font-family:var(--mono);opacity:.6;margin-left:1px;font-size:10.5px}.thread-composer{max-width:var(--conv)}.thread-input{border:1px solid var(--border);background:var(--bg);width:100%;min-height:2.2em;color:var(--fg);font:inherit;resize:vertical;border-radius:6px;flex:1;padding:.35rem .5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px}.thread-input:focus{border-color:var(--accent);outline:none}.btn{align-items:center;gap:var(--s-2);border-radius:var(--r-pill);background:var(--fill);height:30px;color:var(--ink);cursor:pointer;font:inherit;font-size:var(--t-13);letter-spacing:-.008em;white-space:nowrap;border:0;padding:0 13px;font-weight:500;transition:background .15s,opacity .15s;display:inline-flex}.btn:hover:not(:disabled){background:var(--fill-2)}.btn:disabled{opacity:.5;cursor:default}.btn:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.btn-primary{background:color-mix(in srgb, var(--brand) 14%, var(--paper));color:var(--brand);font-weight:600}.btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--brand) 24%, var(--paper))}.btn-outline{background:var(--paper);border:1px solid var(--ink-3);color:var(--ink)}.btn-outline:hover:not(:disabled){background:var(--fill);border-color:var(--ink)}.btn-outline svg{color:var(--ink-2)}.btn-danger{background:var(--danger);color:var(--acc-fg);font-weight:600}.btn-danger:hover:not(:disabled){background:var(--danger);opacity:.85}.btn-ghost{color:var(--ink-2);padding:0 var(--s-3);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--fill);color:var(--ink)}.btn-ghost-danger:hover:not(:disabled){background:var(--danger-wash);color:var(--danger)}.btn-attn{color:var(--attn);border:1px solid var(--attn-line);background:0 0;font-weight:600}.btn-attn:hover:not(:disabled){background:var(--attn-wash)}.btn-sm{height:26px;font-size:var(--t-125);padding:0 11px}.btn-icon{justify-content:center;width:30px;padding:0}.btn-icon.btn-sm{width:26px}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.menu{flex-shrink:0;position:relative}.menu-panel{right:0;top:calc(100% + var(--s-2));z-index:20;border:1px solid var(--hair);border-radius:var(--r);background:var(--paper);min-width:218px;box-shadow:var(--lift-lg);text-align:left;flex-direction:column;padding:5px;display:flex;position:absolute}.menu-panel-left{left:0;right:auto}.menu-item{color:var(--ink-2);text-align:left;cursor:pointer;font:inherit;font-size:var(--t-13);background:0 0;border:none;border-radius:7px;align-items:center;gap:9px;padding:7px 9px;display:flex}.menu-item:hover{background:var(--fill);color:var(--ink)}.menu-item svg{color:var(--ink-3)}.menu-item-label{flex:1;min-width:0}.menu-item[aria-checked=true]{color:var(--ink)}.menu-item svg.menu-item-check{color:var(--acc)}.menu-item-danger{color:var(--danger)}.menu-item-danger:hover{background:var(--danger-wash);color:var(--danger)}.menu-sep{background:var(--hair);border:0;height:1px;margin:5px 7px}.menu-label{font-size:var(--t-11);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding:5px 9px 2px;font-weight:600}.notices{top:calc(53px + var(--s-3));right:var(--s-6);z-index:30;width:min(380px, calc(100vw - 2 * var(--s-6)));gap:var(--s-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.notice{pointer-events:auto;align-items:flex-start;gap:var(--s-1);padding:var(--s-3) var(--s-3) var(--s-3) var(--s-5);background:var(--paper);border:1px solid var(--hair);border-radius:var(--r);box-shadow:var(--lift);view-transition-class:notice;transition:transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out);display:flex;position:relative}.notice:hover{border-color:var(--acc-line);transform:translateY(-1px);box-shadow:0 2px 4px #0000000d,0 18px 40px -16px #00000038}.notice .notice-x{opacity:.55;transition:opacity var(--dur) var(--ease-out)}.notice:hover .notice-x,.notice .notice-x:focus-visible{opacity:1}.notice-drain{left:var(--s-5);right:var(--s-5);background:var(--attn);opacity:.55;transform-origin:0;border-radius:1px;height:2px;animation:linear forwards notice-drain;position:absolute;bottom:0}@keyframes notice-drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}:root{view-transition-name:none}::view-transition-group(.notice){animation-duration:var(--dur-move);animation-timing-function:var(--ease-out)}::view-transition-new(.notice):only-child{animation:.32s cubic-bezier(.2,.9,.25,1.15) notice-in}::view-transition-old(.notice):only-child{animation:notice-out .22s var(--ease-out) forwards}@keyframes notice-in{0%{opacity:0;transform:translate(28px)scale(.96)}to{opacity:1;transform:none}}@keyframes notice-out{to{opacity:0;transform:translate(28px)scale(.96)}}@supports not (view-transition-name:none){.notice{animation:.32s cubic-bezier(.2,.9,.25,1.15) notice-in}}@media (prefers-reduced-motion:reduce){.notice{transition:none;animation:none}::view-transition-group(.notice){animation:none}::view-transition-old(.notice){animation:none}::view-transition-new(.notice){animation:none}}.notice-body{align-items:flex-start;gap:var(--s-4);min-width:0;font:inherit;text-align:left;color:inherit;cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;flex:1;margin:0;padding:0;display:flex}.notice-body:focus-visible{outline:2px solid var(--acc);outline-offset:4px}.notice-body .avatar{margin-top:1px}.notice-text{gap:var(--s-0);flex-direction:column;flex:1;min-width:0;display:flex}.notice-head{font-size:var(--t-13);color:var(--ink-2);align-items:center;gap:0 var(--s-2);flex-wrap:wrap;line-height:1.4;display:flex}.notice-who{color:var(--ink);font-weight:600}.notice-anchor{font-family:var(--mono);font-size:var(--t-11);color:var(--ink-2);background:var(--fill);border:1px solid var(--hair);padding:0 var(--s-1);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;max-width:100%;line-height:1.5;overflow:hidden}.notice-preview{font-size:var(--t-13);color:var(--ink);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.notice-body:hover .notice-preview{text-decoration:underline;-webkit-text-decoration-color:var(--hair-2);text-decoration-color:var(--hair-2);text-underline-offset:2px}.notice-x{flex-shrink:0;margin:-2px -2px -2px 0}.notice-more{padding-top:var(--s-2);padding-bottom:var(--s-2);background:var(--fill);box-shadow:none;align-items:center}.notice-more .notice-body{align-items:center;gap:var(--s-3);color:var(--ink-2)}.notice-more .notice-body .icon{color:var(--ink-3);flex-shrink:0}.notice-more .notice-body:hover{color:var(--ink)}.notice-more-label{font-size:var(--t-12);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.thread-collapsed{align-items:center;gap:.4rem;padding:.2rem .6rem;display:flex}.thread-collapsed-summary{min-width:0;color:var(--fg-muted);cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:.5rem;padding:.15rem 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;display:flex}.thread-collapsed-text{text-overflow:ellipsis;white-space:nowrap;contain:inline-size;flex:1;min-width:0;overflow:hidden}.thread-collapsed-count{opacity:.75;flex-shrink:0;font-size:11px}.thread-collapsed-hint{color:var(--ink-3);flex-shrink:0;align-items:center;display:flex}.thread-reply-stub{text-align:left;width:100%;padding:7px var(--s-4);border:1px solid var(--hair);border-radius:var(--r-sm);background:var(--paper);color:var(--ink-3);cursor:text;font:inherit;font-size:var(--t-13);align-items:center;gap:9px;display:flex}.thread-reply-stub:hover{border-color:var(--ink-3);color:var(--ink-2)}.thread-foot{align-items:flex-end;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-top:1px solid var(--hair);background:var(--hair-2);display:flex}.thread-foot-bare{justify-content:flex-end}.thread-foot .thread-reply-stub,.thread-foot .thread-input{flex:1;width:auto;min-width:0}.thread-foot .thread-input{min-height:30px;max-height:40vh;padding:6px var(--s-4);border-radius:var(--r-sm);border-color:var(--hair);background:var(--paper);field-sizing:content;line-height:1.45}.thread-foot .thread-input:focus{border-color:var(--ink-3)}.thread-foot .thread-offer{align-items:center;gap:var(--s-2);flex:1;min-width:0;display:flex}.thread-offer-icon{color:var(--attn);flex:none}.thread-reply-stub-offer .thread-offer-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.thread-offer-use{flex:none}.thread-foot .thread-input-wrap{flex:1;min-width:0;display:flex;position:relative}.thread-input-wrap-ghost .thread-input{padding-left:30px}.thread-input-ghost::placeholder{color:var(--ink-3);opacity:1}.thread-input-wrap .thread-input-ghost{padding-right:46px}.thread-ghost-icon{pointer-events:none;position:absolute;top:8px;left:10px}.thread-offer-kbd{border:1px solid var(--hair);background:var(--paper);color:var(--ink-3);font-family:var(--mono);border-radius:4px;flex:none;padding:1px 5px;font-size:10.5px;line-height:1.3}.thread-ghost-hint{cursor:pointer;position:absolute;bottom:7px;right:8px}.thread-ghost-hint:hover{border-color:var(--ink-3);color:var(--ink-2)}.thread-context-wrap{border-bottom:1px solid var(--border);background:var(--bg-subtle)}.thread-context-wrap .thread-context-toggle{border-bottom:none}.notes-header{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border:none}.file-threads{border-bottom:1px solid var(--border);background:var(--bg-subtle);padding:.5rem .8rem}.changeset-strip{margin-bottom:var(--s-6);scroll-margin-top:var(--s-3)}.strip-head{align-items:center;gap:var(--s-2);width:100%;padding:var(--s-2) 0 var(--s-4);color:var(--ink-3);font-family:var(--sans);font-size:var(--t-11);letter-spacing:.06em;text-transform:uppercase;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;font-weight:600;display:flex}.strip-head:hover,.strip-n{color:var(--ink-2)}.strip-body{align-items:flex-start;gap:var(--s-4);padding:0 0 var(--s-2);flex-direction:column;display:flex}.strip-body .thread-list,.strip-body .thread-composer{align-self:stretch}.strip-body .thread,.strip-body .thread-composer,.strip-body .cbox{max-width:none}.strip-add{font-family:var(--sans);font-size:var(--t-125);color:var(--ink-3);cursor:pointer;background:0 0;border:none;padding:0}.strip-add:hover{color:var(--ink)}.fin-row-anchor-gone{text-decoration:line-through}.past-hint{padding:0 .2rem var(--s-3);color:var(--fg-muted);font-size:12px;font-style:italic;line-height:1.5}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:var(--s-8);z-index:40;background:#0000008c;justify-content:center;align-items:center;animation:.16s both fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.modal{background:var(--paper);color:var(--ink);border-radius:var(--r-lg);box-shadow:var(--lift-lg);width:min(452px,100%);max-height:100%;font-size:var(--t-13);animation:modal-in var(--dur-move) var(--ease-out) both;flex-direction:column;display:flex;overflow:hidden}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}.modal:focus{outline:none}.modal-wide{width:min(640px,100%)}.md-preview{width:min(860px,100%);height:100%}.md-preview .modal-head h3{font-family:var(--mono);font-size:var(--t-13);color:var(--ink-2);font-weight:500}.md-preview .modal-body{padding-bottom:var(--s-8)}.modal-head{align-items:center;gap:var(--s-4);padding:15px var(--s-5) 15px var(--s-7);flex-shrink:0;display:flex}.modal-head h3{font-size:var(--t-17);letter-spacing:-.018em;flex:1;margin:0}.modal-body{padding:var(--s-1) var(--s-7) var(--s-7);gap:var(--s-6);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.modal-foot{padding:15px var(--s-7);border-top:1px solid var(--hair);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:9px;display:flex}.input{height:30px;padding:0 var(--s-4);font:inherit;font-size:var(--t-13);color:var(--ink);background:var(--fill);border-radius:var(--s-3);border:0;width:100%}.input:focus{outline:2px solid var(--acc);outline-offset:-1px}select.input{cursor:pointer}.fin-sect{gap:var(--s-3);flex-direction:column;display:flex}.fin-sect-h{align-items:baseline;gap:var(--s-2);min-width:0;display:flex}.fin-sect-label{font-size:var(--t-11);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;font-weight:600}.fin-sect-n{border:1px solid var(--hair);border-radius:var(--r-pill);font-family:var(--mono);font-size:var(--t-11);color:var(--ink-2);padding:0 6px}.fin-sect-why{font-size:var(--t-12);color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fin-dest{align-items:center;gap:var(--s-3);border-radius:var(--r);background:var(--attn-wash);font-size:var(--t-125);color:var(--ink-2);padding:9px 12px;display:flex}.fin-dest-pip{background:var(--attn);border-radius:50%;flex-shrink:0;width:7px;height:7px}.fin-dest-text{flex:1;min-width:0}.fin-dest b{color:var(--ink);font-weight:600}.fin-rows{border:1px solid var(--hair);border-radius:var(--r);grid-template-columns:max-content fit-content(180px) 1fr max-content;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.fin-row{grid-column:1/-1;grid-template-columns:subgrid;align-items:start;column-gap:var(--s-3);padding:9px 11px;display:grid}.fin-rows-span{grid-column:1/-1}.fin-row+.fin-row,.fin-rows li+li{border-top:1px solid var(--hair)}.fin-chip{border-radius:var(--r-pill);width:46px;font-size:var(--t-11);text-align:center;height:fit-content;padding:1px 0;line-height:1.5}.fin-chip-fresh{background:var(--acc-wash);color:var(--acc)}.fin-chip-resent{background:var(--fill);color:var(--ink-3)}.fin-checkoff .fin-chip{width:92px}.fin-chip-fixed{background:var(--add-tint);color:var(--add)}.fin-chip-answered,.fin-chip-changed{background:var(--fill);color:var(--ink-2)}.fin-chip-no-answer{background:var(--fill);color:var(--ink-3);font-style:italic}.fin-row-checkoff{align-items:center}.fin-row-acts{gap:var(--s-2);opacity:0;transition:opacity .12s var(--ease-out);flex-shrink:0;display:flex}.fin-row-checkoff:hover .fin-row-acts,.fin-row-acts:focus-within{opacity:1}@media (hover:none){.fin-row-acts{opacity:1}}.fin-row-open{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:contents}.fin-row-open>svg{color:var(--ink-3);transition:transform var(--dur) ease;cursor:pointer;margin-top:4px}.fin-row-open[aria-expanded=true]>svg{transform:rotate(180deg)}.fin-row-open:hover .fin-row-text{color:var(--ink)}.fin-row-open .fin-row-text{cursor:pointer}.fin-row-anchor{font-family:var(--mono);font-size:var(--t-12);color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;padding-top:2px;display:block;overflow:hidden}.fin-row-text{font-size:var(--t-125);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.fin-row-text-full{white-space:pre-wrap;word-break:break-word;line-height:1.55;overflow:visible}.fin-more{align-items:center;gap:var(--s-2);width:100%;font:inherit;font-size:var(--t-125);color:var(--ink-3);text-align:left;cursor:pointer;background:0 0;border:0;padding:8px 11px;display:flex}.fin-more:hover{color:var(--ink)}.fin-foot-peek{align-items:center;gap:var(--s-1);margin-left:auto;display:inline-flex}.fin-link{font:inherit;font-size:var(--t-125);color:var(--ink-3);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;text-decoration:underline;display:inline-flex}.fin-link:hover{color:var(--ink)}.fin-note{box-sizing:border-box;resize:vertical;width:100%;min-height:48px;padding:var(--s-2) var(--s-3);font:inherit;font-size:var(--t-125);color:var(--ink);background:var(--paper);border:1px solid var(--hair);border-radius:var(--r)}.fin-note:focus{border-color:var(--accent);outline:none}.fin-cov-bar{background:var(--fill);border-radius:3px;height:6px;display:flex;overflow:hidden}.fin-cov-bar i{height:100%;display:block}.fin-cov-read{background:var(--add)}.fin-cov-moved{background:var(--attn)}.fin-cov-status{gap:var(--s-2) var(--s-5);font-size:var(--t-125);color:var(--ink-2);flex-wrap:wrap;display:flex}.fin-cov-status>span{align-items:center;gap:6px;display:inline-flex}.fin-cov-sw{border-radius:2px;flex-shrink:0;width:8px;height:8px}.fin-cov-sw-read{background:var(--add)}.fin-cov-sw-moved{background:var(--attn)}.fin-cov-sw-unread{background:var(--hair)}.fin-cov-ok{color:var(--add-fg)}.fin-cov-attn{color:var(--attn)}.cov-note{color:var(--ink-2);margin:0;font-size:13.5px}.cov-note strong{color:var(--ink)}.warn{border-radius:var(--r);background:var(--attn-wash);color:var(--ink-2);gap:9px;padding:13px 15px;font-size:13.5px;display:flex}.warn svg{color:var(--attn);margin-top:2px}.warn b{color:var(--ink);font-weight:600}.keys{gap:0 var(--s-8);grid-template-columns:1fr 1fr;display:grid}.keys-name{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);padding:0 0 var(--s-2);font-size:11.5px;font-weight:600}.keys-row{align-items:center;gap:var(--s-4);border-bottom:1px solid var(--hair-2);color:var(--ink-2);padding:7px 0;font-size:13.5px;display:flex}.keys-row:last-child{border-bottom:0}.thread-hint{border-bottom:1px solid var(--border);color:var(--fg-muted);padding:.3rem .6rem;font-size:12px;font-style:italic}.presence{--face-cut:var(--fill);align-items:center;gap:var(--s-2);padding:4px var(--s-4) 4px var(--s-3);border:1px solid var(--hair);border-radius:var(--r-pill);background:var(--fill);font-family:var(--sans);font-size:var(--t-12);color:var(--ink-2);white-space:nowrap;transition:background-color var(--dur-move) var(--ease-out), border-color var(--dur-move) var(--ease-out), color var(--dur-move) var(--ease-out);display:inline-flex;position:relative;overflow:hidden}.presence-label{text-overflow:ellipsis;max-width:34ch;position:relative;overflow:hidden}.presence-verb{color:var(--ink);font-weight:600}.presence-detail,.presence-ago{color:var(--ink-3)}.presence-face{color:var(--ink-3);transition:opacity var(--dur-move) var(--ease-out), color var(--dur-move) var(--ease-out);flex:none;display:inline-flex;position:relative}.presence-face-away{opacity:.35}.presence-face-cheer{animation:face-cheer .6s var(--ease-out) 2}@keyframes face-cheer{0%,to{transform:translateY(0)}35%{transform:translateY(-3px)}}.critter-face{fill:currentColor;display:block}.critter-face-open rect{fill:var(--face-cut)}.critter-face-eyes{fill:none;stroke:var(--face-cut);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.presence-dot{background:var(--ink-3);border-radius:50%;flex:none;width:7px;height:7px}.presence-invite,.presence-suggests,.presence-batch{line-height:inherit;cursor:pointer}.presence-invite:hover,.presence-invite:focus-visible,.presence-suggests:hover,.presence-suggests:focus-visible{border-color:var(--ink-3)}.presence-invite:focus-visible,.presence-suggests:focus-visible,.presence-batch:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.presence-invite .presence-verb{color:var(--acc)}.presence-cta{margin-left:var(--s-1);padding-left:var(--s-3);border-left:1px solid var(--hair);color:var(--acc);font-weight:600;position:relative}.presence-listening{border-color:var(--here-line)}.presence-listening .presence-face{color:var(--here)}.presence-working{--face-cut:var(--attn-wash);border-color:var(--attn-line);background:var(--attn-wash)}.presence-working .presence-face,.presence-working .presence-verb{color:var(--attn)}.presence-batch{--face-cut:var(--fill);background:var(--fill)}.presence-fill{background:var(--attn-wash);box-shadow:inset -1px 0 0 var(--attn);transition:width var(--dur-move) var(--ease-out);position:absolute;inset:0 auto 0 0}.presence-batch:hover .presence-verb,.presence-batch:focus-visible .presence-verb{text-underline-offset:2px;text-decoration:underline}.presence-batch-n{font-size:var(--t-11);font-variant-numeric:tabular-nums;color:var(--ink-3);font-weight:650;position:relative}.monitor-qbar{gap:2px;display:flex}.monitor-qbar i{background:var(--hair);border-radius:2px;flex:1}i.q-done{background:var(--add)}i.q-now{background:var(--attn)}.monitor-anchor{position:relative}.monitor{right:0;top:calc(100% + var(--s-2));z-index:20;border:1px solid var(--hair);border-radius:var(--r-lg);background:var(--paper);width:min(480px,100vw - 32px);max-height:min(72vh,640px);box-shadow:var(--lift-lg);text-align:left;white-space:normal;animation:fade-in var(--dur-move) var(--ease-out) both;position:absolute;overflow-y:auto}.monitor-inner{padding:var(--s-5) var(--s-5) var(--s-6);gap:var(--s-3);flex-direction:column;display:flex}.monitor-qbar{height:8px}.monitor-qbar i{border-radius:2px}.monitor-counts{color:var(--ink-2);font-size:var(--t-125)}.monitor-counts-done{color:var(--add-fg)}.monitor-group{margin-top:var(--s-4);font-size:var(--t-11);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:600}.monitor-rows{gap:var(--s-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.monitor-rows-done{opacity:.75}.monitor-row{width:100%;padding:var(--s-3) var(--s-4);background:var(--fill);border:1px solid var(--hair);border-radius:var(--r);font:inherit;color:inherit;text-align:left;cursor:pointer;flex-direction:column;gap:3px;display:flex}.monitor-row:hover{border-color:var(--ink-3)}.monitor-row-top{align-items:center;gap:var(--s-3);display:flex}.monitor-st{font-family:var(--mono);border-radius:5px;align-items:center;gap:5px;padding:2px 7px;font-size:10.5px;font-weight:600;display:inline-flex}.monitor-st-done{color:var(--add-fg);background:var(--add-tint)}.monitor-st-now{color:var(--attn);background:var(--attn-wash)}.monitor-st-wait{color:var(--ink-3);background:var(--paper)}.monitor-st-silent{color:var(--ink-3);background:var(--paper);font-style:italic}.monitor-pulse{background:var(--attn);border-radius:50%;width:6px;height:6px;animation:1.3s ease-in-out infinite presence-pulse}.monitor-took{font-family:var(--mono);font-size:var(--t-11);color:var(--ink-3)}.monitor-q{font-size:var(--t-125);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.monitor-anchor{font-family:var(--mono);font-size:var(--t-12);color:var(--ink-3);margin-right:var(--s-3)}.monitor-a{border-left:2px solid var(--hair);padding-left:var(--s-3);font-size:var(--t-12);color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (prefers-reduced-motion:reduce){.monitor-pulse{animation:none}}.invite-prompt{margin:var(--s-3) 0 var(--s-4);padding:var(--s-3) var(--s-4);background:var(--fill);border:1px solid var(--hair);border-radius:var(--r);max-height:320px;font-family:var(--mono);font-size:var(--t-12);color:var(--ink-2);white-space:pre-wrap;word-break:break-word;line-height:1.65;overflow:auto}.invite-cmd{align-items:center;gap:var(--s-2);width:100%;margin-top:var(--s-2);padding:var(--s-2) var(--s-3);background:var(--fill);border:1px solid var(--hair);border-radius:var(--r-sm);color:var(--ink-2);font:inherit;text-align:left;cursor:pointer;display:flex}.invite-cmd:hover{color:var(--ink);border-color:var(--hair-2)}.invite-cmd code{font-family:var(--mono);font-size:var(--t-12);flex:1}.invite-live{align-items:center;gap:var(--s-2);margin-top:var(--s-2);padding:var(--s-2) var(--s-3);background:var(--acc-wash);border-radius:var(--r-sm);color:var(--ink-2);font-size:var(--t-12);display:flex}.invite-live .presence-dot{animation:presence-pulse 1.6s var(--ease-out) infinite}.invite-connected{align-items:center;gap:var(--s-3);padding:var(--s-2) 0;display:flex}.invite-connected .presence-dot{background:var(--add)}.invite-connected .cov-note{margin:0}@keyframes presence-pulse{0%,to{opacity:1}50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.invite-live .presence-dot,.presence-face-cheer{animation:none}}.file-section>:not(.file-header){animation:body-in .2s var(--ease-out) both}@keyframes body-in{0%{opacity:0;transform:translateY(-4px)}}.btn,.ghb,.row-act,.sec-act,.sb-clear,.row-pick,.pin-row,.sec-head-fold,.file-viewed-toggle,.thread-collapsed-summary{transition-property:background,color,border-color,opacity,transform,box-shadow;transition-duration:var(--dur);transition-timing-function:ease}.btn:active,.ghb:active,.row-act:active,.sec-act:active,.sb-clear:active,.file-viewed-toggle:active{transform:scale(.95)}.row-pick:active,.pin-row:active,.thread-collapsed-summary:active{transform:translate(1px)}@keyframes pop{0%{transform:scale(.5)}60%{transform:scale(1.18)}to{transform:scale(1)}}.markbox[data-state=on] svg{animation:pop .28s var(--ease-out)}.tip{z-index:60;border-radius:var(--r-sm);background:var(--ink);max-width:300px;color:var(--paper);font-family:var(--sans);font-size:var(--t-11);letter-spacing:.01em;overflow-wrap:break-word;box-shadow:var(--lift);pointer-events:none;opacity:0;transition:opacity var(--dur) var(--ease-out);padding:4px 9px;font-weight:500;line-height:1.45;position:fixed}.tip-on{opacity:1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}::highlight(sym-occ){background:color-mix(in srgb, var(--acc) 14%, transparent);border-radius:3px}.sym-card{z-index:30;border:1px solid var(--hair);border-radius:var(--r);background:var(--paper);width:max-content;min-width:260px;max-width:min(560px,100vw - 16px);box-shadow:var(--lift-lg);opacity:0;transition:opacity var(--dur) var(--ease-out);position:fixed}.sym-card-on{opacity:1}.sym-card:before{content:"";height:14px;position:absolute;left:0;right:0}.sym-card[data-place=above]:before{top:100%}.sym-card[data-place=below]:before{bottom:100%}.sym-card-head{align-items:baseline;gap:var(--s-4);padding:7px 11px;display:flex}.sym-card-word{font-family:var(--mono);font-size:var(--t-125);color:var(--ink);font-weight:600}.sym-card-count{white-space:nowrap;font-size:var(--t-11);color:var(--ink-3);margin-left:auto}.sym-card-side{margin-left:var(--s-2);border-radius:var(--r-pill);background:var(--del-row);color:var(--del);padding:0 5px;font-weight:500}.sym-card-list{border-top:1px solid var(--hair);max-height:min(360px,50vh);padding:4px;overflow-y:auto}.sym-card-path{align-items:center;gap:var(--s-2);width:100%;color:var(--ink-3);font:inherit;font-size:var(--t-12);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 7px 5px 5px;display:flex}.sym-card-path:hover,.sym-card-path:focus-visible{background:var(--fill);outline:none}.sym-card-path>svg{color:var(--ink-3);transition:transform var(--dur) var(--ease-out);flex-shrink:0;transform:rotate(-90deg)}.sym-card-path[aria-expanded=true]>svg{transform:none}.sym-card-name{color:var(--ink);font-weight:600}.sym-card-dir{text-overflow:ellipsis;color:var(--ink-3);overflow:hidden}.sym-card-n{padding-left:var(--s-4);font-size:var(--t-11);font-variant-numeric:tabular-nums;margin-left:auto}.sym-card-n-here{color:var(--ink-3)}.sym-card-file:has(.sym-card-row){padding-bottom:3px}.sym-card-row{align-items:baseline;gap:var(--s-3);width:100%;color:var(--ink-2);font:inherit;font-family:var(--mono);font-size:var(--t-12);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 7px 2px 26px;line-height:1.6;display:flex}.sym-card-row:hover,.sym-card-row:focus-visible{background:var(--fill);color:var(--ink);outline:none}.sym-card-here{color:var(--ink-3)}.sym-card-here .sym-card-ln:after{content:"•";color:var(--acc);position:absolute;left:-11px}.sym-card-ln{text-align:right;min-width:3ch;color:var(--ink-3);font-size:var(--t-11);font-variant-numeric:tabular-nums;flex-shrink:0;position:relative}.sym-card-code{white-space:pre;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.sym-card-code mark{background:color-mix(in srgb, var(--acc) 16%, transparent);color:inherit;border-radius:3px;margin:0 -1px;padding:0 1px}.sym-card-ellipsis{color:var(--ink-3)}.row-layer{padding-top:7px;padding-bottom:7px}.row-layer .row-pick{flex-direction:column;align-items:stretch;gap:2px;width:100%;min-width:0;display:flex}.row-layer .row-name{font-family:var(--sans);font-size:var(--t-13);gap:var(--s-3)}.row-layer .row-base{color:var(--ink);font-weight:500;line-height:1.3}.row-layer[aria-current=true] .row-base{font-weight:600}.row-layer.row-done .row-base{color:var(--ink-3);font-weight:500}.ch-sub{align-items:center;gap:var(--s-3);min-width:0;font-size:var(--t-11);color:var(--ink-3);font-variant-numeric:tabular-nums;display:flex}.ch-sub>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ch-sub .prog-track{flex:none;width:44px}.row-layer .row-count{gap:7px}.row-layer .ch-fold{display:flex}.ch-files{border-left:1px solid var(--hair);margin:0 0 4px 27px}.row-layer-since .row-base{color:var(--attn)}.ch-foot{width:100%;padding:var(--s-4) var(--s-6);font:inherit;font-size:var(--t-12);color:var(--ink-3);text-align:left;background:0 0;border:none;display:block}.ch-foot-act{cursor:pointer}.ch-foot-act:hover{color:var(--acc)}.ch-foot-live{color:var(--attn)}.ch-empty{gap:var(--s-1);min-width:0;padding:var(--s-8) var(--s-5) var(--s-6);flex-direction:column;display:flex}.ch-empty-title{align-items:center;gap:var(--s-3);font-size:var(--t-15);color:var(--ink);margin:0;font-weight:600;line-height:1.3;display:flex}.ch-empty-sub,.ch-empty-note{font-size:var(--t-125);color:var(--ink-3);overflow-wrap:anywhere;margin:0;line-height:1.45}.ch-empty-note{margin-top:var(--s-4)}.ch-empty-cta.btn{width:100%;height:auto;min-height:32px;margin-top:var(--s-4);white-space:normal;text-align:center;justify-content:center;padding:6px 14px;line-height:1.25}.ch-empty-note+.ch-empty-cta.btn{margin-top:var(--s-3)}@container (width<=232px){.ch-empty-cta .icon{display:none}}.ch-working{vertical-align:1px;align-items:center;gap:6px;margin-right:4px;display:inline-flex}.ch-empty-title .ch-working{margin-right:0}.ch-working i{background:var(--attn);border-radius:50%;width:5px;height:5px;animation:1.1s infinite ch-blink}.ch-working i:nth-child(2){animation-delay:.2s}.ch-working i:nth-child(3){animation-delay:.4s}.ch-working-idle i{opacity:.45;animation:none}@media (prefers-reduced-motion:reduce){.ch-working i{animation:none}}@keyframes ch-blink{0%,to{opacity:.25}50%{opacity:1}}.row-layer-overview .row-box{visibility:hidden}.file-header:has(.ch-file-note) .file-path{flex-shrink:0}.ch-file-note{min-width:0;font-size:var(--t-12);color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;padding-left:2px;overflow:hidden}.ch-file-note:before{content:"— "}.ch-pager{align-items:center;gap:4px;display:inline-flex}.ch-pager .btn{height:26px;font-size:var(--t-12);max-width:24ch;padding:0 9px}.ch-pager-t{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ch-kind{font-size:var(--t-11);border-radius:var(--r-pill);background:var(--fill);color:var(--ink-3);font-family:var(--sans);vertical-align:2px;margin-left:8px;padding:2px 7px;font-weight:500}.ch-head{margin-bottom:var(--s-6);border:1px solid var(--hair);border-radius:var(--r);background:var(--paper);padding:12px 20px 16px}.ch-head-top{justify-content:space-between;align-items:center;gap:var(--s-3);min-height:26px;display:flex}.ch-head-kicker{font-size:var(--t-11);color:var(--ink-3);font-variant-numeric:tabular-nums;letter-spacing:.01em}.ch-head-ask{margin-right:calc(-1 * var(--s-3));color:var(--ink-3)}.ch-head-ask:hover:not(:disabled){color:var(--ink)}.ch-head h2{letter-spacing:-.015em;color:var(--ink);margin:2px 0 0;font-size:20px;font-weight:600;line-height:1.3}.ch-head-body{margin-top:var(--s-3);grid-template-columns:minmax(0,1fr);row-gap:14px;display:grid}.ch-head-about{align-items:flex-start;gap:var(--s-2);flex-direction:column;max-width:72ch;display:flex}.ch-head .ch-summary{font-size:var(--t-14);color:var(--ink-2);padding-left:0;line-height:1.5}.ch-head .ch-summary p{margin:0 0 6px}.ch-head .ch-summary p:last-child{margin-bottom:0}.ch-head .ch-summary a{color:var(--exp-ink);border-bottom:1px solid var(--exp-wash);text-decoration:none}.ch-head-files{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ch-chip{font-family:var(--mono);font-size:var(--t-11);border-radius:var(--r-pill);background:var(--fill);color:var(--ink-2);padding:3px 8px}.ch-chip-done{color:var(--ink-3);text-decoration:line-through}.ch-head-missing{font-size:var(--t-11);color:var(--ink-3)}.ch-head-empty{font-size:var(--t-12);color:var(--ink-3)}.ch-head-threads{border-top:1px solid var(--hair-2);gap:var(--s-3);flex-direction:column;margin-top:14px;padding-top:14px;display:flex}:root,:root[data-theme=light]{--gh:#0969da;--gh-wash:#ddf4ff;--gh-line:#b6d9fb}@media (prefers-color-scheme:dark){:root{--gh:#58a6ff;--gh-wash:#388bfd29;--gh-line:#388bfd73}}:root[data-theme=dark]{--gh:#58a6ff;--gh-wash:#388bfd29;--gh-line:#388bfd73}.chip-pr{color:var(--gh);background:var(--gh-wash)}.thread-public{border-color:var(--gh-line);border-left:3px solid var(--gh)}.thread-public>.thread-head{background:var(--gh-wash)}.thread-private{border-style:dashed;border-color:var(--attn-line);border-left:3px solid var(--attn)}.thread-private>.thread-head{background:var(--attn-wash)}.thread-side{border-radius:var(--r-pill);background:var(--paper);font-size:var(--t-11);letter-spacing:.01em;border:1px solid #0000;flex:none;align-items:center;gap:4px;padding:2px 7px 2px 5px;font-weight:600;display:inline-flex}.thread-side-pr{color:var(--gh);border-color:var(--gh-line)}.thread-side-agent{color:var(--attn);border-color:var(--attn-line)}.thread-aside{margin:var(--s-3) 0 0}.thread-asides{margin:0 var(--s-5) var(--s-4) var(--s-8);border-left:2px solid var(--attn-line);padding-left:var(--s-4)}.thread-aside-compose{padding:0 var(--s-5) var(--s-4)}.thread-badge-pr{color:var(--gh);background:var(--gh-wash)}.thread-badge-approved{color:var(--add);background:var(--add-tint)}.thread-badge-changes_requested{color:var(--del);background:var(--del-tint)}.thread-badge-link{color:var(--ink-3);text-decoration:none}.thread-badge-link:hover,.cmt-who-github{color:var(--gh)}.avatar-github{background:var(--gh-wash);color:var(--gh);font-size:var(--t-11);object-fit:cover;box-shadow:inset 0 0 0 1px var(--gh-line);font-weight:700}.psc{margin:var(--s-3) 0 var(--s-2) 30px;border:1px solid var(--gh-line);border-left:3px solid var(--gh);border-radius:var(--r-sm);background:var(--paper);max-width:88ch;overflow:hidden}.psc-head{padding:5px var(--s-4);background:var(--gh-wash);color:var(--gh);font-size:var(--t-11);align-items:center;gap:6px;font-weight:600;display:flex}.psc-head-note{color:var(--ink-3);margin-left:auto;font-weight:500}.psc .psc-body{padding:var(--s-3) var(--s-4) 0;font-size:var(--t-14);color:var(--ink);line-height:1.6}.psc-foot{padding:6px var(--s-4);border-top:1px solid var(--gh-line);background:color-mix(in srgb, var(--gh-wash) 35%, var(--paper));flex-wrap:wrap;align-items:center;gap:6px;display:flex}.psc-hint{color:var(--gh);font-size:var(--t-11);margin-right:auto}.psc .psc-add{background:var(--gh);color:#fff}.psc .psc-add:hover:not(:disabled){background:color-mix(in srgb, var(--gh) 86%, var(--ink));color:#fff}.psc-editing{background:0 0;border:0;border-radius:0;overflow:visible}.psc-done{font-size:var(--t-125);color:var(--ink-2);background:color-mix(in srgb, var(--gh-wash) 25%, var(--paper))}.psc-done-line{padding:3px var(--s-2) 3px var(--s-4);align-items:center;gap:6px;min-height:30px;display:flex}.psc-done-text{flex:auto}.psc-done .psc-body{padding-bottom:var(--s-3);border-top:1px solid var(--gh-line)}.psc-done-line>svg{color:var(--gh)}.psc-done-status{color:var(--ink-3)}.psc-dismissed .psc-done-text,.psc-superseded .psc-done-text{opacity:.7}.cmt-origin{color:var(--ink-3)}.crow-pill-pr{align-items:center;gap:3px;display:inline-flex}.sub-pending-origin{color:var(--ink-3)}.sub-undecided{margin:var(--s-3) 0 0;padding:var(--s-3) var(--s-4);border:1px dashed var(--attn-line);border-radius:var(--r-sm);font-size:var(--t-125);color:var(--ink-2)}.cbox-cite{align-items:baseline;gap:var(--s-3);margin:var(--s-3) var(--s-5) 0;padding:var(--s-3) var(--s-4);border-left:3px solid var(--hair);background:var(--fill);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:var(--t-13);line-height:1.5;display:flex}.cbox-cite-label{letter-spacing:.01em;border-radius:var(--r-pill);background:var(--fill-2);color:var(--ink-2);flex:none;padding:1px 7px;font-size:10.5px;font-weight:600}.cbox-cite-text{color:var(--ink);font-weight:500}.cbox-head-aud{padding:0 var(--s-4) 0 var(--s-3);background:var(--paper);min-height:36px}.cbox-head-right{align-items:center;gap:9px;min-width:0;margin-left:auto;display:inline-flex}.aud-tabs{align-self:stretch;gap:2px;display:inline-flex}.aud-tab{color:var(--ink-3);font:inherit;font-size:var(--t-125);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:0 8px;font-weight:500;display:inline-flex}.aud-tab:hover{color:var(--ink)}.aud-tab:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}.aud-tab-pr.aud-tab-on,.aud-tab-pr.aud-tab-on:hover{color:var(--gh);border-bottom-color:var(--gh);font-weight:600}.aud-tab-agent.aud-tab-on,.aud-tab-agent.aud-tab-on:hover{color:var(--attn);border-bottom-color:var(--attn);font-weight:600}.cbox-pr,.cbox-pr:focus-within{border-color:var(--gh-line);border-left:3px solid var(--gh)}.cbox-pr .cbox-foot{border-top-color:var(--gh-line);background:color-mix(in srgb, var(--gh-wash) 40%, var(--paper))}.cbox-pr .cbox-hint{color:var(--gh)}.cbox-pr .btn-primary{background:color-mix(in srgb, var(--gh) 14%, var(--paper));color:var(--gh)}.cbox-pr .btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--gh) 24%, var(--paper))}.cbox-agent,.cbox-agent:focus-within{border-style:dashed;border-color:var(--attn-line);border-left:3px solid var(--attn)}.cbox-agent .cbox-foot{border-top-color:var(--attn-line);background:color-mix(in srgb, var(--attn-wash) 45%, var(--paper))}.cbox-agent .cbox-hint{color:var(--attn)}.cbox-agent .btn-primary{background:color-mix(in srgb, var(--attn) 14%, var(--paper));color:var(--attn)}.cbox-agent .btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--attn) 24%, var(--paper))}.cbox-hint{color:var(--ink-3);align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.pr-chips{gap:var(--s-3);flex:0 auto;min-width:0}.pr-title{border-radius:var(--r-sm);min-width:0;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;margin:0 -6px;padding:3px 6px;font-weight:600;display:inline-flex}.pr-title:hover,.pr-title[aria-expanded=true]{background:var(--fill)}.pr-title svg{color:var(--gh);flex:none}.pr-number{color:var(--ink-3);font-variant-numeric:tabular-nums;font-weight:500}.pr-title-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pr-avatar{border-radius:50%;width:16px;height:16px}.pr-check-failure{color:var(--del);background:var(--del-tint)}.pr-check-pending{color:var(--attn);background:var(--attn-wash)}.pr-state-merged{color:#8250df;background:#8250df1a}.pr-state-closed{color:var(--del);background:var(--del-tint)}.pr-card{white-space:normal;width:360px;font-size:var(--t-125);animation:pr-card-in .16s var(--ease-out);transform-origin:0 0;gap:0;padding:0;overflow:hidden}@keyframes pr-card-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}.pr-card-who{align-items:center;gap:var(--s-4);min-width:0;padding:var(--s-4) var(--s-5);background:var(--fill);border-bottom:1px solid var(--hair);display:flex}.pr-avatar-lg{width:36px;height:36px;box-shadow:0 0 0 2px var(--paper);flex:none}.pr-avatar-none{background:var(--fill-2);color:var(--ink-3);justify-content:center;align-items:center;display:inline-flex}.pr-card-who-text{flex-direction:column;gap:1px;min-width:0;line-height:1.3;display:flex}.pr-card-login{color:var(--ink);font-weight:600}.pr-card-where{font-size:var(--t-12);color:var(--ink-3);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pr-card-body{gap:var(--s-4);padding:var(--s-4) var(--s-5);flex-direction:column;display:flex}.pr-card-refs{align-items:center;gap:var(--s-2);white-space:nowrap;min-width:0;display:flex}.pr-card-refs .cmp-arrow{flex:none}.pr-ref{text-overflow:ellipsis;border-radius:var(--r-sm);background:var(--fill);min-width:0;color:var(--ink);font-family:var(--mono);font-size:var(--t-12);flex:0 auto;padding:3px 8px;overflow:hidden}.pr-ref-base{max-width:45%;color:var(--ink-2);flex:none}.pr-card-facts{gap:var(--s-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pr-fact{align-items:center;gap:var(--s-3);min-width:0;color:var(--ink-2);display:flex}.pr-fact svg,.pr-fact-dot{flex:none}.pr-fact a{color:inherit;text-decoration:none}.pr-fact a:hover{text-decoration:underline}.pr-fact-dot{border:1.5px solid var(--ink-3);box-sizing:border-box;border-radius:50%;width:12px;height:12px}.pr-fact-success .pr-fact-dot{border-color:var(--add);background:var(--add)}.pr-fact-failure .pr-fact-dot{border-color:var(--del);background:var(--del)}.pr-fact-pending .pr-fact-dot{border-color:var(--attn);border-style:dashed}.pr-fact-ok svg{color:var(--add)}.pr-fact-attn svg{color:var(--attn)}.pr-fact-mute{color:var(--ink-3)}.pr-commits{gap:var(--s-2);margin-top:calc(var(--s-1) * -1);flex-direction:column;display:flex}.pr-commits-toggle{align-items:center;gap:var(--s-2);border-radius:var(--r-sm);color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;margin-left:-3px;padding:2px 6px 2px 3px;display:inline-flex}.pr-commits-toggle:hover{background:var(--fill);color:var(--ink)}.pr-commit-list{border-left:2px solid var(--hair);padding:0;padding-left:var(--s-3);flex-direction:column;margin:0 0 0 5px;list-style:none;display:flex}.pr-commit{align-items:baseline;gap:var(--s-3);border-radius:var(--r-sm);min-width:0;color:var(--ink-2);margin:0 -6px;padding:4px 6px;text-decoration:none;display:flex}.pr-commit:hover{background:var(--fill);color:var(--ink)}.pr-commit-sha{font-family:var(--mono);font-size:var(--t-12);color:var(--ink-3);flex:none}.pr-commit-subject{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.pr-commit-ago{font-size:var(--t-12);color:var(--ink-3);font-variant-numeric:tabular-nums;flex:none}.pr-card-link{border-top:1px solid var(--hair);height:32px;color:var(--gh);border-radius:0;justify-content:center;text-decoration:none}.pr-card-link:hover{color:var(--gh)}.side{border-left:3px solid var(--gh);margin-top:var(--s-2)}.side-agent{border-left-color:var(--attn)}.side-head{align-items:center;gap:var(--s-2);width:100%;padding:7px var(--s-5) 7px 9px;font:inherit;font-size:var(--t-125);text-align:left;color:var(--gh);background:var(--gh-wash);cursor:pointer;border:0;font-weight:600;display:flex}.side-agent .side-head{color:var(--attn);background:var(--attn-wash)}.side-head .chevron{color:inherit;opacity:.7}.side-head:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}.side-n{font-size:var(--t-11);opacity:.75;font-variant-numeric:tabular-nums;font-weight:500}.side-badge{font-size:var(--t-11);border-radius:var(--r-pill);background:var(--paper);border:1px solid var(--gh-line);white-space:nowrap;margin-left:auto;padding:0 7px;font-weight:600;line-height:17px}.side-agent .side-badge{border-color:var(--attn-line)}.side-badge-hot{background:var(--attn);border-color:var(--attn);color:#fff}.side-empty{padding:var(--s-2) var(--s-5) var(--s-3) 21px;font-size:var(--t-12);color:var(--ink-3)}.side-tail{gap:var(--s-4);padding:4px var(--s-5) 8px 21px;display:flex}.side-more,.strip-more{font:inherit;color:var(--ink-3);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:11.5px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.side-more:hover,.strip-more:hover{color:var(--ink-2)}.strip-more{padding:var(--s-1) 0;align-self:flex-start}.crow-pill{border-radius:var(--r-pill);color:var(--gh);background:var(--gh-wash);vertical-align:1px;margin-right:3px;padding:0 5px;font-size:10.5px;font-weight:600;line-height:15px;display:inline-block}.fin-row-note{font-size:var(--t-11);color:var(--attn)}.sub-where{align-items:center;gap:var(--s-2);min-width:0;margin-top:calc(var(--s-3) * -1);font-size:var(--t-12);color:var(--ink-3);display:flex}.sub-where svg{color:var(--gh);flex:none}.sub-where-repo{font-variant-numeric:tabular-nums;white-space:nowrap}.sub-where-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-2);overflow:hidden}.sub-editor{border:1px solid var(--hair);border-radius:var(--r);flex:none;overflow:hidden}.sub-editor:focus-within{border-color:var(--gh);box-shadow:0 0 0 3px color-mix(in srgb, var(--gh) 18%, transparent)}.sub-editor-bar{background:var(--fill);border-bottom:1px solid var(--hair);align-items:flex-end;display:flex}.sub-tabs{background:0 0;border-bottom:0}.sub-tools{align-items:center;gap:1px;margin-left:auto;padding:0 7px 4px;display:flex}.sub-body{box-sizing:border-box;width:100%;min-height:96px;padding:var(--s-3) var(--s-4);background:var(--paper);color:var(--ink);font:inherit;font-size:var(--t-14);resize:vertical;border:0;line-height:1.5;display:block}.sub-body:focus{outline:none}.sub-preview{min-height:96px;padding:var(--s-3) var(--s-4);font-size:var(--t-14);line-height:1.6}.sub-preview-empty{color:var(--ink-3)}.sub-verdicts{gap:var(--s-3);flex-direction:column;display:flex}.sub-verdict{align-items:flex-start;gap:var(--s-3);cursor:pointer;display:flex}.sub-verdict input{accent-color:var(--gh);flex:none;margin:3px 0 0}.sub-verdict-text{flex-direction:column;gap:1px;line-height:1.35;display:flex}.sub-verdict-text b{font-weight:600;font-size:var(--t-14)}.sub-verdict-text small{font-size:var(--t-125);color:var(--ink-3)}.sub-verdict-off{cursor:default;opacity:.6}.sub-verdict-why{color:var(--attn)}.sub-pending{border:1px solid var(--gh-line);border-left:3px solid var(--gh);border-radius:var(--r);margin:0;padding:0;list-style:none;overflow:hidden}.sub-pending-row{padding:9px var(--s-4);flex-direction:column;gap:4px;display:flex}.sub-pending-row+.sub-pending-row{border-top:1px solid var(--hair)}.sub-pending-at{align-items:center;gap:var(--s-2);min-width:0;font-family:var(--mono);font-size:var(--t-11);color:var(--ink-3);display:flex}.sub-pending-kind{font-family:var(--sans);font-size:var(--t-11);color:var(--gh);background:var(--gh-wash);border-radius:var(--r-pill);white-space:nowrap;padding:1px 7px;font-weight:600}.sub-pending-anchor{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sub-pending-text{font-size:var(--t-13);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}.sub-agent{min-width:0;font-size:var(--t-12);color:var(--attn);flex:200px;align-items:flex-start;gap:6px;display:inline-flex}.sub-agent svg{flex:none;margin-top:2px}.sub-agent .fin-link{color:inherit}.sub-agent-off{color:var(--ink-2)}.btn-gh{background:var(--gh);color:#fff}.btn-gh:hover:not(:disabled){background:color-mix(in srgb, var(--gh) 88%, black)}.sub-kbd{font-family:inherit;font-size:var(--t-11);opacity:.7;font-weight:500}.sub-done{gap:var(--s-4);flex-direction:column;display:flex}.sub-done-card{align-items:center;gap:var(--s-4);padding:var(--s-4) var(--s-5);border:1px solid var(--add);border-left:3px solid var(--add);border-radius:var(--r);background:var(--add-tint);display:flex}.sub-done-mark{background:var(--add);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.sub-done-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sub-done-text b{font-size:var(--t-14);color:var(--ink);font-weight:600}.sub-done-detail{font-size:var(--t-125);color:var(--ink-2)}.sub-done-card .btn{flex:none;text-decoration:none}.sub-done-agent{font-size:var(--t-125);color:var(--attn);align-items:flex-start;gap:6px;margin:0;display:flex}.sub-done-agent svg{flex:none;margin-top:2px}.btn-busy{cursor:progress}.spin{border:2px solid;border-right-color:#0000;border-radius:50%;width:12px;height:12px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.telemetry-notice{left:50%;bottom:var(--s-4);z-index:40;align-items:center;gap:var(--s-3);width:min(720px, calc(100vw - 2 * var(--s-4)));padding:var(--s-3) var(--s-4);background:var(--paper);border:1px solid var(--hair);animation:card-in var(--dur-move) var(--ease-out);border-radius:10px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 28px #0000001f}@keyframes card-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.telemetry-notice{animation:none}}.telemetry-notice>.icon{color:var(--ink-3);flex-shrink:0}.telemetry-notice-text{min-width:0;font-size:var(--t-13);color:var(--ink-2);flex:1;margin:0;line-height:1.45}.telemetry-notice-text strong{color:var(--ink);font-weight:600}.telemetry-notice-text a{color:var(--ink);text-underline-offset:2px;text-decoration:underline}.telemetry-notice-ok{flex-shrink:0;place-items:center;width:40px;height:40px;display:grid;position:relative}.telemetry-notice-ring{pointer-events:none;position:absolute;inset:0;transform:rotate(-90deg)}.telemetry-notice-ring circle{fill:none;stroke-width:2px}.telemetry-notice-ring-track{stroke:var(--hair)}.telemetry-notice-ring-left{stroke:var(--ink-3);stroke-linecap:round;transition:stroke-dashoffset .25s linear}.telemetry-notice-ok-btn{border-radius:50%;justify-content:center;width:30px;height:30px;padding:0}.privacy-row{justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-3);display:flex}.privacy-row .pane-sw:disabled{opacity:.55;cursor:default}.privacy-state{font-size:var(--t-12);color:var(--ink-3);text-align:right}.privacy-confirm{margin-top:var(--s-3)}.critter-track{min-width:var(--s-3);flex:1;align-self:stretch;position:relative}.critter-walker{z-index:1;transform-origin:0 0;display:flex;position:absolute;bottom:-4px;left:0}.critter-tucked .critter-leg,.critter-tucked .critter-glasses{opacity:0}.critter-leg,.critter-glasses{transition:opacity .2s var(--ease-out)}.critter{color:var(--here);transition:transform var(--dur-move) var(--ease-out);flex:none;overflow:visible}.critter-waiting{color:var(--ink-3)}.critter-working{color:var(--attn)}.critter *{transform-box:fill-box;transform-origin:50%}.critter .critter-leg{transform-origin:top}.critter .critter-torso{transform-origin:bottom}.critter-body,.critter-leg,.critter-hands,.critter-pen circle,.critter-mag-hand,.critter-thought{fill:currentColor}.critter-eyes,.critter-glasses{fill:none;stroke:var(--paper);stroke-linecap:round;stroke-linejoin:round}.critter-eyes{stroke-width:1.6px}.critter-glasses{stroke-width:.6px}.critter-eyes-open{fill:var(--paper)}.critter-page rect{fill:var(--paper);stroke:currentColor;stroke-width:1.1px}.critter-page path,.critter-pen path,.critter-mag path,.critter-lens{fill:none;stroke-linecap:round}.critter-page path{stroke-width:1.1px}.critter-line-del{stroke:var(--del)}.critter-line-ctx{stroke:var(--ink-3)}.critter-line-add{stroke:var(--add)}.critter-pen path{stroke:var(--ink-2);stroke-width:1.3px}.critter-lens{fill:var(--paper);fill-opacity:.55;stroke:var(--ink-2);stroke-width:1.2px}.critter-mag path{stroke:var(--ink-2);stroke-width:1.7px}.critter-z,.critter-spark{fill:none;stroke:currentColor;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round}.critter-badge circle{fill:var(--brand)}.critter-badge path{fill:none;stroke:var(--paper);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.critter-eyes-shut,.critter-eyes-plus,.critter-eyes-happy,.critter-page,.critter-hands,.critter-pen,.critter-mag,.critter-z,.critter-thought,.critter-spark,.critter-badge,.critter-act-write .critter-eyes-open,.critter-working.critter-act-walk .critter-eyes-open,.critter-act-sleep .critter-eyes-open,.critter-act-poke .critter-eyes-open,.critter-act-approve .critter-eyes-open{display:none}.critter-act-write .critter-eyes-plus,.critter-working.critter-act-walk .critter-eyes-plus,.critter-act-sleep .critter-eyes-shut,.critter-act-poke .critter-eyes-happy,.critter-act-approve .critter-eyes-happy{display:inline}.critter-right .critter{transform:rotate(5deg)}.critter-left .critter{transform:rotate(-5deg)}.critter-act-sleep .critter-leg,.critter-act-sit .critter-leg,.critter-act-sleep .critter-glasses{display:none}.critter-act-sleep .critter-figure,.critter-act-sit .critter-figure{transform:translateY(3px)}.critter-act-sleep .critter-torso{animation:3s ease-in-out infinite critter-breathe}.critter-act-sleep .critter-z{stroke:var(--ink-2);stroke-width:1.5px;display:inline}.critter-act-sleep .critter-z path{animation:3s ease-out infinite critter-rise}.critter-act-sleep .critter-z-b{animation-delay:1.5s}.critter-act-stand .critter-eyes-open rect,.critter-act-sit .critter-eyes-open rect{animation:4s infinite critter-blink}.critter-act-stand .critter-torso{animation:3.2s ease-in-out infinite critter-sway}.critter-act-walk .critter-leg-l{animation:.4s steps(2,end) infinite critter-step}.critter-act-walk .critter-leg-r{animation:.4s steps(2,end) infinite reverse critter-step}.critter-act-walk .critter-torso{animation:.4s steps(2,end) infinite critter-bob}.critter-act-read .critter-page,.critter-act-read .critter-hands,.critter-act-write .critter-page,.critter-act-write .critter-pen{display:inline}.critter-act-read .critter-eyes-open{animation:2.4s step-end infinite critter-scan}.critter-act-read .critter-page{animation:2.4s ease-in-out infinite critter-nod}.critter-act-inspect .critter-mag{animation:1.8s ease-in-out infinite critter-sweep;display:inline}.critter-act-inspect .critter-eyes-open{animation:1.8s ease-in-out infinite critter-follow}.critter-act-write .critter-pen{animation:.25s steps(2,end) infinite critter-scribble}.critter-act-write .critter-line-add{stroke-dasharray:1;animation:1.6s steps(6,end) infinite critter-draw}.critter-act-write .critter-eyes-plus{transform:translate(.6px,.9px)}.critter-act-write .critter-spark{animation:1.2s ease-out infinite critter-rise;display:inline}.critter-act-write .critter-spark-b{animation-delay:.6s}.critter-act-think .critter-torso{transform:rotate(-6deg)}.critter-act-think .critter-eyes-open{transform:translate(1px,-1.2px)}.critter-act-think .critter-thought{display:inline}.critter-act-think .critter-thought circle{opacity:0;animation:1.8s step-end infinite critter-dot}.critter-act-think .critter-thought circle:nth-child(2){animation-delay:.3s}.critter-act-think .critter-thought circle:nth-child(3){animation-delay:.6s}.critter-act-poke .critter-figure{animation:critter-hop .5s var(--ease-out) 2}.critter-act-approve .critter-figure{animation:critter-hop .6s var(--ease-out) 2}.critter-act-approve .critter-badge{animation:critter-pop .6s var(--ease-out) both;display:inline}.critter-calm .critter-act-stand .critter-torso,.critter-calm .critter-act-read .critter-page{animation:none}@keyframes critter-breathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(.94)}}@keyframes critter-rise{0%{opacity:0;transform:translateY(2px)scale(.6)}30%{opacity:1}to{opacity:0;transform:translate(2px,-5px)scale(1)}}@keyframes critter-sway{0%,to{transform:rotate(0)}30%{transform:rotate(-4deg)}60%{transform:rotate(4deg)}}@keyframes critter-blink{0%,40%,44%,to{transform:scaleY(1)}42%{transform:scaleY(.1)}}@keyframes critter-step{0%,to{transform:scaleY(1)}50%{transform:scaleY(.5)}}@keyframes critter-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-1px)}}@keyframes critter-scan{0%{transform:translate(-1px,.9px)}15%{transform:translateY(.9px)}30%{transform:translate(1px,.9px)}45%{transform:translate(-1px,1.5px)}60%{transform:translateY(1.5px)}75%,to{transform:translate(1px,1.5px)}}@keyframes critter-nod{0%,to{transform:rotate(0)}50%{transform:rotate(-3deg)}}@keyframes critter-sweep{0%,to{transform:translate(-2.5px,1px)rotate(-8deg)}50%{transform:translate(1px,-.5px)rotate(6deg)}}@keyframes critter-follow{0%,to{transform:translate(-.4px,.4px)}50%{transform:translate(1px)}}@keyframes critter-scribble{0%,to{transform:translate(0)}50%{transform:translate(-.8px,.4px)}}@keyframes critter-draw{0%{stroke-dashoffset:1px}70%,to{stroke-dashoffset:0}}@keyframes critter-dot{0%,to{opacity:0}10%,80%{opacity:1}}@keyframes critter-hop{0%,to{transform:translateY(0)}40%{transform:translateY(-5px)}}@keyframes critter-pop{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.25)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.critter-track .critter-walker .critter *{animation:none}.critter-act-think .critter-thought circle{opacity:1}.critter-act-write .critter-line-add{stroke-dashoffset:0}}.ch-dec{min-width:0}.ch-dec-h{font-size:var(--t-11);color:var(--ink-3);letter-spacing:.01em;padding:0 0 2px}.ch-dec-item{border-top:1px solid var(--hair-2);transition:background var(--dur) var(--ease-out);border-radius:8px;scroll-margin-top:48px;position:relative}.ch-dec-item:first-of-type,.ch-dec-item-open,.ch-dec-item-open+.ch-dec-item{border-top-color:#0000}.ch-dec-item-open{background:var(--fill)}.ch-dec-main{align-items:flex-start;gap:var(--s-3);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px 8px 6px;display:flex}.ch-dec-item:not(.ch-dec-item-open)>.ch-dec-main:hover{background:var(--fill)}.ch-dec-main:focus-visible{outline:2px solid var(--acc-line);outline-offset:-2px}.ch-dec-chev{margin-top:3px}.ch-dec-text{font-size:var(--t-14);color:var(--ink);font-weight:500;line-height:1.45}.ch-dec-card{gap:12px;padding:0 12px 12px 27px;display:grid}.ch-dec-card .ch-dec-detail{font-size:var(--t-14);color:var(--ink-2);max-width:64ch;margin:0;line-height:1.55}.ch-dec-detail p{margin:0}.ch-dec-detail strong{color:var(--ink);font-weight:600}.ch-dec-acts{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ch-dec-place{border:1px solid var(--hair);background:var(--paper);font-family:var(--mono);font-size:var(--t-12);color:var(--ink-2);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:4px 9px;display:inline-flex}.ch-dec-place:hover{border-color:var(--ink-3)}.ch-dec-place-path{color:var(--ink);font-weight:500}.ch-dec-place-lines{color:var(--ink-3)}.ch-dec-comment{font-family:var(--sans);font-size:var(--t-13);color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:6px;margin-left:4px;padding:5px 8px}.ch-dec-comment:hover{color:var(--ink);background:var(--fill-2)}.ch-dec-gone{font-size:var(--t-11);color:var(--ink-3)}