[hidden] { display: none !important; } /* the button and card styles would otherwise show hidden elements */
/* Gondola is printed, not drawn: a two-colour linocut (Prussian blue, vermilion) on newsprint. */
@font-face { font-family: "Schibsted Grotesk"; src: url(/fonts/schibsted-grotesk-latin-wght-normal.woff2) format("woff2"); font-weight: 400 900; font-display: swap; }
@font-face { font-family: "Atkinson Next"; src: url(/fonts/atkinson-hyperlegible-next-latin-wght-normal.woff2) format("woff2"); font-weight: 200 800; font-display: swap; }
@font-face { font-family: "Atkinson Mono"; src: url(/fonts/atkinson-hyperlegible-mono-latin-wght-normal.woff2) format("woff2"); font-weight: 200 800; font-display: swap; }
:root {
  --paper: #f3e9d4; --card: #f9f2e3; --ink: #1b2f4a; --muted: #686252; --line: #d6c7a6; --rule: #b7a37c;
  --red: #d9472b; --sea: #2f6690; --sea-calm: #bfd4df; --cut: #f3e9d4; --lamp: #f0b43c; --smoke: rgba(104, 98, 82, .45);
  --btn: #1b2f4a; --btn-fg: #f6eedd; --ok: #2b7a4b; --bad: #c0412b; --wait: #b9790c; --off: #a39d8f;
  --sky: #a9c7d9; --sky-sea: #24476b; --sky-ink: #1b2f4a; --sky-muted: #2c4866; --sky-link: #a8341c; --sky-ok: #2b7a4b;
  --sky-speckle: .16; --sky-smoke: rgba(27, 47, 74, .35); --t-sky: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22420%22 height=%22150%22%3E%3Cg fill=%22%23f3e9d4%22 fill-opacity=%22.55%22%3E%3Cpath d=%22M29.67 20.96L35.92 21.94 42.21 22.22 48.51 22.39 54.8 22.46 61.1 22.37 67.39 22.13 73.69 21.94 79.97 21.65 86.25 21.27 92.52 20.97 98.8 20.73 105.07 20.67 111.34 20.67 117.62 20.91 123.9 21.08 130.19 21.35 136.48 21.64 142.77 21.77 149.05 21.85 155.34 21.75 155.34 21.75 149.06 21.61 142.78 21.41 136.5 21.06 130.22 20.75 123.94 20.38 117.66 20 111.36 19.82 105.07 19.65 98.78 19.66 92.48 19.73 86.19 19.93 79.9 20.17 73.62 20.51 67.35 20.86 61.07 21 54.8 21.05 48.53 21.01 42.26 20.84 35.98 20.6 29.67 20.96Z%22/%3E%3Cpath d=%22M291.45 10.86L298.06 11.92 304.71 12.19 311.36 12.37 318.01 12.51 324.67 12.34 331.32 12.23 337.97 12.05 344.62 11.74 351.25 11.26 357.87 10.9 364.5 10.75 371.13 10.61 377.76 10.68 384.39 10.89 391.03 11.11 397.68 11.28 404.32 11.56 410.97 11.72 417.61 11.76 424.25 11.65 424.25 11.65 417.61 11.51 410.98 11.27 404.35 10.95 397.71 10.62 391.07 10.17 384.43 9.82 377.78 9.62 371.14 9.51 364.48 9.45 357.83 9.61 351.18 9.75 344.53 9.88 337.89 10.2 331.26 10.57 324.64 10.84 318.01 10.81 311.39 10.84 304.76 10.68 298.13 10.42 291.45 10.86Z%22/%3E%3Cpath d=%22M-128.55 10.86L-121.94 11.87 -115.29 12.19 -108.64 12.38 -101.99 12.39 -95.33 12.44 -88.68 12.11 -82.04 11.78 -75.4 11.48 -68.76 11.25 -62.13 10.81 -55.5 10.73 -48.87 10.68 -42.24 10.7 -35.6 10.79 -28.96 11.02 -22.32 11.32 -15.68 11.54 -9.03 11.71 -2.39 11.73 4.25 11.65 4.25 11.65 -2.39 11.53 -9.02 11.28 -15.66 10.97 -22.29 10.59 -28.93 10.25 -35.57 9.91 -42.21 9.61 -48.86 9.45 -55.52 9.47 -62.16 9.69 -68.82 9.76 -75.46 10.15 -82.1 10.47 -88.73 10.69 -95.36 10.73 -101.99 10.92 -108.61 10.83 -115.24 10.68 -121.88 10.48 -128.55 10.86Z%22/%3E%3Cpath d=%22M14.29 57.46L18.79 58.49 23.33 58.77 27.88 58.96 32.44 58.99 37 58.98 41.55 58.72 46.11 58.6 50.65 58.27 55.17 57.84 59.69 57.45 64.21 57.36 68.73 57.19 73.25 57.27 77.78 57.38 82.31 57.66 86.86 57.87 91.4 58.12 95.94 58.29 100.49 58.36 105.03 58.25 105.03 58.25 100.49 58.11 95.96 57.9 91.43 57.58 86.9 57.24 82.37 56.81 77.83 56.52 73.29 56.23 68.74 56.13 64.18 56.04 59.63 56.26 55.08 56.37 50.53 56.56 45.99 56.85 41.48 57.28 36.95 57.39 32.44 57.53 27.92 57.45 23.4 57.3 18.88 57.06 14.29 57.46Z%22/%3E%3Cpath d=%22M222.9 55.61L230.29 56.53 237.7 56.87 245.12 57.16 252.55 57.18 259.98 57.24 267.39 56.87 274.81 56.56 282.23 56.33 289.64 55.98 297.04 55.58 304.44 55.44 311.84 55.38 319.25 55.48 326.65 55.62 334.06 55.85 341.48 56.06 348.89 56.32 356.31 56.45 363.73 56.49 371.14 56.4 371.14 56.4 363.73 56.27 356.32 56.03 348.92 55.68 341.51 55.34 334.1 54.92 326.69 54.58 319.27 54.32 311.85 54.24 304.43 54.25 297 54.42 289.58 54.52 282.16 54.79 274.76 55.19 267.35 55.43 259.94 55.42 252.55 55.63 245.15 55.54 237.74 55.49 230.34 55.3 222.9 55.61Z%22/%3E%3Cpath d=%22M39.02 95.65L45.57 96.75 52.15 97.14 58.75 97.16 65.35 97.42 71.95 97.2 78.54 96.93 85.13 96.73 91.72 96.45 98.29 96.04 104.87 95.7 111.44 95.6 118.01 95.39 124.58 95.53 131.16 95.62 137.74 95.88 144.33 96.12 150.91 96.32 157.5 96.48 164.09 96.56 170.68 96.44 170.68 96.44 164.09 96.29 157.52 96.09 150.94 95.77 144.36 95.37 137.78 94.98 131.2 94.67 124.61 94.36 118.01 94.32 111.42 94.18 104.83 94.39 98.23 94.56 91.64 94.76 85.06 95.11 78.49 95.46 71.92 95.55 65.35 95.48 58.78 95.63 52.21 95.31 45.63 95.18 39.02 95.65Z%22/%3E%3Cpath d=%22M259.06 92.29L265.49 93.09 271.96 93.52 278.43 93.58 284.9 93.79 291.37 93.66 297.85 93.45 304.31 93.16 310.77 92.78 317.23 92.48 323.68 92.15 330.14 92 336.59 91.96 343.04 92.01 349.5 92.14 355.96 92.4 362.42 92.68 368.89 92.92 375.36 93.06 381.82 93.16 388.28 93.08 388.28 93.08 381.82 92.97 375.36 92.78 368.91 92.44 362.45 92.08 355.99 91.73 349.53 91.43 343.06 91.15 336.59 91.02 330.12 91.06 323.65 91.21 317.18 91.39 310.72 91.7 304.26 91.95 297.8 92.21 291.35 92.37 284.9 92.39 278.45 92.49 272 92.2 265.54 92.1 259.06 92.29Z%22/%3E%3Cpath d=%22M34.96 125.76L40.63 126.85 46.35 127 52.07 127.19 57.79 127.31 63.51 127.2 69.23 127.05 74.95 126.81 80.66 126.42 86.36 126.2 92.05 125.78 97.75 125.7 103.44 125.62 109.14 125.58 114.84 125.77 120.55 125.89 126.26 126.24 131.97 126.43 137.69 126.59 143.4 126.67 149.11 126.55 149.11 126.55 143.4 126.4 137.7 126.2 132 125.88 126.3 125.45 120.59 125.17 114.88 124.74 109.17 124.52 103.45 124.3 97.73 124.29 92.01 124.52 86.29 124.6 80.58 125 74.87 125.24 69.17 125.54 63.48 125.77 57.79 125.8 52.09 125.82 46.4 125.66 40.71 125.28 34.96 125.76Z%22/%3E%3Cpath d=%22M217.99 128.78L221.59 129.6 225.22 130.06 228.88 130.29 232.54 130.23 236.2 130.24 239.86 130.05 243.5 129.63 247.14 129.34 250.78 129.1 254.4 128.81 258.01 128.55 261.63 128.47 265.26 128.45 268.88 128.71 272.51 128.95 276.16 129.17 279.8 129.39 283.45 129.57 287.09 129.66 290.73 129.57 290.73 129.57 287.09 129.45 283.46 129.26 279.83 128.96 276.21 128.58 272.58 128.17 268.94 127.85 265.29 127.7 261.64 127.5 257.98 127.49 254.33 127.55 250.67 127.76 247.03 128.13 243.4 128.47 239.77 128.59 236.15 128.78 232.54 128.94 228.93 128.77 225.31 128.65 221.67 128.58 217.99 128.78Z%22/%3E%3Cpath d=%22M410.51 116.57L418.2 117.37 425.9 117.64 433.6 117.86 441.31 117.92 449.02 117.95 456.73 117.7 464.43 117.35 472.13 117.07 479.83 116.68 487.52 116.53 495.21 116.21 502.91 116.17 510.6 116.26 518.29 116.46 525.99 116.67 533.7 116.89 541.4 117.18 549.1 117.37 556.8 117.44 564.5 117.36 564.5 117.36 556.8 117.24 549.11 117.04 541.41 116.74 533.71 116.43 526.02 116.02 518.32 115.67 510.61 115.46 502.91 115.37 495.2 115.4 487.49 115.39 479.79 115.74 472.09 115.97 464.39 116.31 456.69 116.51 449 116.64 441.31 116.82 433.62 116.76 425.93 116.64 418.23 116.38 410.51 116.57Z%22/%3E%3Cpath d=%22M-9.49 116.57L-1.81 117.52 5.89 117.89 13.6 117.94 21.31 118.14 29.02 117.98 36.73 117.73 44.43 117.45 52.13 117.08 59.83 116.89 67.52 116.48 75.21 116.37 82.91 116.23 90.6 116.28 98.29 116.45 105.99 116.74 113.69 116.92 121.4 117.2 129.1 117.37 136.8 117.44 144.5 117.36 144.5 117.36 136.8 117.24 129.11 117.03 121.41 116.72 113.72 116.39 106.02 115.95 98.32 115.67 90.61 115.44 82.91 115.31 75.2 115.24 67.49 115.45 59.78 115.53 52.09 115.96 44.39 116.22 36.69 116.48 29 116.6 21.31 116.59 13.62 116.68 5.93 116.39 -1.76 116.23 -9.49 116.57Z%22/%3E%3C/g%3E%3C/svg%3E");
  --display: "Schibsted Grotesk", "Helvetica Neue", Arial, sans-serif;
  --text: "Atkinson Next", "Atkinson Hyperlegible", system-ui, sans-serif;
  --mono: "Atkinson Mono", ui-monospace, Consolas, monospace;
  --m-peaks: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22260%22 height=%2270%22 viewBox=%220 0 260 70%22%3E%3Cpath d=%22M0 40L1.8 38.38 3.61 36.77 5.5 35.24 7.63 34.01 9.55 32.52 10.81 30.28 12.32 28.33 13.93 26.48 16.72 26.01 18.7 24.6 20.54 23.01 21.81 21.22 23.73 22.61 26.03 23.56 27.73 25.21 29.4 26.89 30.69 29 32.14 30.94 34.45 31.88 36.71 32.89 37.36 34.46 39.49 33.07 41.05 31.21 42.93 29.61 44.7 27.92 46.13 25.94 46.98 23.47 48.03 21.18 50.3 19.92 52.42 18.52 54.33 16.95 55.32 14.6 56.63 12.53 58.33 10.77 60.65 8.44 61.87 10.63 63.11 12.81 64.12 15.19 65.9 16.89 68.5 17.91 70.34 19.57 71.53 21.78 72.83 23.91 73.97 26.17 75.76 27.87 77.28 29.81 79.27 31.34 81.28 32.86 82.81 34.78 84.04 37.06 86.53 36.69 88.27 35.05 89.87 33.18 91.61 31.56 93.91 30.85 95.81 29.48 98.23 28.99 100.24 27.81 102.37 26.81 103.91 25.09 106.58 25.84 108.2 27.75 109.67 29.82 111.01 32.03 112.77 33.77 114.97 35.03 116.94 36.55 118.97 38 120.85 39.62 122.58 41.4 123.6 43.95 126.74 45.63 127.33 42.9 128.68 40.82 130.69 39.31 132.22 37.38 134.12 35.77 135.93 34.08 137.48 32.17 138.68 29.97 139.68 27.59 141.67 26.05 143.85 24.68 145.63 22.97 146.84 20.77 148.39 18.86 150.17 16.83 151.95 18.43 153.76 20 155.24 21.92 156.21 24.33 157.72 26.2 160.45 26.86 162.62 28.08 163.99 30.09 165.23 32.23 166.72 34.13 168.28 35.95 170.05 37.57 172.03 39.06 173.91 37.36 176.04 36.18 178.28 35.19 180.88 34.94 183.33 34.38 185.05 32.37 187.13 31.08 189.23 29.83 191.44 28.78 193.78 28.01 195.97 27.04 197.43 29.03 199.73 30.03 202.14 30.9 204.06 32.35 205.32 34.58 206.6 36.81 208.55 38.22 210.65 39.45 212.45 41.05 214.65 42.16 216.81 43.32 218.45 45.11 220.21 47.25 222.67 46.45 224.09 44.44 225.18 42.04 226.85 40.32 228.72 38.83 230.98 37.81 232.93 36.42 234.74 34.87 236.47 33.21 238.08 31.42 240.29 29.43 242.48 30.6 244.16 32.79 246.27 34.13 248.85 34.52 251.2 35.38 253.44 36.45 255.83 37.22 257.82 38.8 260 40 260 70 0 70Z%22/%3E%3C/svg%3E");
  --t-snow: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22260%22 height=%2270%22 viewBox=%220 0 260 70%22%3E%3Cg fill=%22%23f3e9d4%22 fill-opacity=%22.9%22%3E%3Cpath d=%22M20.96 24.1L19.5 24.24 18.74 24.83 18.16 25.43 17.64 25.94 17.05 26.27 16.51 26.75 15.93 27.26 15.27 27.75 14.6 28.33 13.99 29.07 13.47 29.94 12.96 30.87 12.96 30.87 13.79 30.22 14.59 29.69 15.32 29.25 15.99 28.9 16.66 28.65 17.41 28.5 18.21 28.28 18.95 27.77 19.76 27.22 20.52 26.51 21.09 25.58 20.96 24.1Z%22/%3E%3Cpath d=%22M18.18 28.1L17.02 28.4 16.45 29.06 15.89 29.59 15.39 30.06 14.82 30.3 14.31 30.67 13.75 31.05 13.14 31.44 12.58 31.98 11.97 32.56 11.46 33.31 11 34.16 11 34.16 11.74 33.55 12.42 33.02 13.01 32.54 13.64 32.27 14.23 32.03 14.87 31.87 15.56 31.66 16.18 31.18 16.88 30.7 17.52 30.05 18.14 29.31 18.18 28.1Z%22/%3E%3Cpath d=%22M16.04 31.54L14.92 31.79 14.28 32.29 13.92 32.89 13.48 33.29 12.99 33.51 12.55 33.86 11.97 34.03 11.42 34.43 10.84 34.86 10.33 35.46 9.92 36.21 9.53 37.03 9.53 37.03 10.23 36.48 10.9 36.04 11.48 35.69 11.98 35.4 12.52 35.27 13.03 34.99 13.67 34.86 14.27 34.46 14.91 34 15.64 33.52 16.08 32.72 16.04 31.54Z%22/%3E%3Cpath d=%22M23.06 24.12L23.11 25.24 23.61 26 24.22 26.61 24.86 27.09 25.44 27.53 26.13 27.6 26.66 27.86 27.25 27.97 27.76 28.29 28.4 28.63 29.02 29.16 29.67 29.77 29.67 29.77 29.21 28.99 28.73 28.3 28.26 27.65 27.68 27.23 27.16 26.78 26.59 26.57 26.18 26.14 25.66 25.93 25.2 25.53 24.7 25.02 24.11 24.45 23.06 24.12Z%22/%3E%3Cpath d=%22M24.47 26.96L24.23 28.06 24.65 28.69 25.15 29.22 25.8 29.48 26.29 29.84 26.84 29.82 27.25 29.93 27.63 30.01 28.05 30.13 28.52 30.37 29.03 30.77 29.56 31.27 29.56 31.27 29.24 30.6 28.9 30.01 28.52 29.5 28.09 29.1 27.63 28.84 27.19 28.69 26.9 28.39 26.54 28.32 26.34 27.93 25.99 27.56 25.56 27.09 24.47 26.96Z%22/%3E%3Cpath d=%22M26.84 30.64L26.36 31.68 26.65 32.26 27.17 32.65 27.68 32.98 28.18 33.25 28.65 33.16 28.97 32.97 29.2 32.97 29.48 32.95 29.81 33.12 30.22 33.42 30.65 33.83 30.65 33.83 30.44 33.26 30.22 32.75 29.92 32.34 29.57 31.99 29.16 31.84 28.85 31.59 28.68 31.4 28.55 31.43 28.42 31.29 28.31 30.97 27.97 30.63 26.84 30.64Z%22/%3E%3Cpath d=%22M58.95 12.44L57.58 12.79 57.05 13.56 56.62 14.27 56.23 14.89 55.72 15.29 55.23 15.69 54.8 16.26 54.28 16.78 53.79 17.42 53.31 18.17 52.84 19 52.47 19.96 52.47 19.96 53.17 19.23 53.78 18.53 54.39 17.98 54.97 17.56 55.54 17.22 56.19 16.99 56.78 16.57 57.35 16.01 58.04 15.44 58.69 14.72 59.24 13.85 58.95 12.44Z%22/%3E%3Cpath d=%22M55.99 17.53L54.81 17.9 54.38 18.62 53.96 19.22 53.53 19.65 53.13 20.01 52.68 20.3 52.32 20.79 51.76 21.14 51.37 21.78 50.96 22.46 50.55 23.22 50.29 24.13 50.29 24.13 50.98 23.5 51.52 22.88 52.06 22.42 52.62 22.15 53.02 21.78 53.6 21.65 54.11 21.27 54.66 20.82 55.18 20.22 55.7 19.53 56.23 18.77 55.99 17.53Z%22/%3E%3Cpath d=%22M53.24 22.39L51.85 22.6 51.46 23.28 51.18 23.9 50.73 24.23 50.37 24.52 50.14 25.02 49.67 25.31 49.31 25.85 48.83 26.33 48.49 27.02 48.15 27.78 47.85 28.62 47.85 28.62 48.45 27.97 49.02 27.41 49.57 27.03 49.98 26.66 50.52 26.55 50.95 26.27 51.62 26.17 52.15 25.71 52.6 25.06 53.21 24.47 53.72 23.73 53.24 22.39Z%22/%3E%3Cpath d=%22M61.61 13.08L61.66 14.64 62.22 15.84 63.06 16.76 63.93 17.53 64.71 18.26 65.47 18.88 66.3 19.36 67.01 19.98 67.76 20.64 68.61 21.36 69.47 22.23 70.37 23.16 70.37 23.16 69.82 21.97 69.22 20.88 68.61 19.88 67.9 19.05 67.14 18.38 66.52 17.64 65.82 17.02 65.13 16.36 64.54 15.51 63.93 14.57 63.03 13.7 61.61 13.08Z%22/%3E%3Cpath d=%22M64.21 17.71L64.01 19.28 64.78 20.18 65.46 21.07 66.14 21.85 66.9 22.44 67.57 22.99 68.31 23.38 68.98 23.85 69.68 24.38 70.41 25.04 71.2 25.79 72 26.66 72 26.66 71.5 25.58 71 24.57 70.42 23.7 69.83 22.93 69.2 22.3 68.64 21.66 68.01 21.16 67.47 20.54 66.85 19.9 66.23 19.12 65.71 18.14 64.21 17.71Z%22/%3E%3Cpath d=%22M67.37 23L66.91 24.25 67.22 25.05 67.7 25.7 68.25 26.23 68.9 26.49 69.38 26.77 69.83 26.91 70.27 27.01 70.68 27.26 71.2 27.58 71.73 28.09 72.34 28.66 72.34 28.66 72.12 27.84 71.82 27.12 71.52 26.46 71.1 25.96 70.71 25.5 70.33 25.17 69.99 24.94 69.81 24.55 69.52 24.19 69.17 23.73 68.66 23.2 67.37 23Z%22/%3E%3Cpath d=%22M103 27.8L101.73 27.83 101.08 28.39 100.38 28.72 99.85 29.17 99.27 29.48 98.61 29.66 97.93 29.95 97.18 30.2 96.5 30.7 95.8 31.23 95.18 31.93 94.6 32.7 94.6 32.7 95.42 32.21 96.2 31.81 96.91 31.48 97.62 31.37 98.27 31.18 98.99 31.12 99.73 30.92 100.55 30.7 101.42 30.4 102.12 29.73 102.87 29.09 103 27.8Z%22/%3E%3Cpath d=%22M100.42 30.95L99.15 30.66 98.8 30.96 98.57 31.14 98.46 31.27 98.33 31.45 98.05 31.45 97.62 31.56 97.11 31.74 96.61 32.06 96.18 32.48 95.86 33.01 95.67 33.66 95.67 33.66 96.28 33.41 96.75 33.21 97.11 33.13 97.4 33.2 97.68 33.31 98.04 33.44 98.55 33.42 99.21 33.44 99.89 33.18 100.45 32.74 100.89 32.2 100.42 30.95Z%22/%3E%3Cpath d=%22M98.15 33.91L97.14 33.91 96.69 34.28 96.36 34.62 96.05 34.87 95.71 35.01 95.3 35.03 94.84 35.28 94.33 35.4 93.84 35.7 93.38 36.07 92.96 36.56 92.56 37.12 92.56 37.12 93.1 36.7 93.61 36.38 94.07 36.17 94.52 36.13 94.94 36.1 95.41 36.29 95.93 36.2 96.52 36.09 97.15 35.87 97.75 35.49 98.23 34.94 98.15 33.91Z%22/%3E%3Cpath d=%22M105.18 28.27L105.33 29.75 106.14 30.66 106.83 31.63 107.72 32.28 108.69 32.69 109.47 33.22 110.3 33.58 111.16 33.9 111.99 34.39 112.79 35.04 113.66 35.78 114.52 36.63 114.52 36.63 113.83 35.63 113.13 34.7 112.39 33.92 111.65 33.21 110.96 32.52 110.23 31.95 109.45 31.53 108.86 30.83 108.2 30.16 107.33 29.55 106.59 28.68 105.18 28.27Z%22/%3E%3Cpath d=%22M107.39 31.88L107.32 32.99 107.79 33.7 108.37 34.25 108.97 34.68 109.53 35.05 110.08 35.25 110.6 35.36 111.07 35.53 111.55 35.77 112.05 36.14 112.67 36.56 113.3 37.11 113.3 37.11 112.95 36.34 112.58 35.62 112.1 35.08 111.59 34.64 111.07 34.32 110.61 34.02 110.18 33.79 109.75 33.58 109.36 33.2 108.97 32.7 108.45 32.15 107.39 31.88Z%22/%3E%3Cpath d=%22M110.59 36.39L110.13 37.59 110.71 38.09 111.17 38.63 111.74 38.98 112.22 39.38 112.79 39.28 113.2 39.34 113.55 39.4 113.94 39.51 114.43 39.72 114.89 40.13 115.4 40.63 115.4 40.63 115.11 39.96 114.77 39.4 114.46 38.85 114.04 38.45 113.59 38.2 113.2 38.01 112.97 37.64 112.64 37.62 112.41 37.33 112.07 36.98 111.85 36.39 110.59 36.39Z%22/%3E%3Cpath d=%22M148.03 21.49L146.64 21.83 145.99 22.52 145.45 23.13 144.97 23.63 144.56 24.1 144.12 24.56 143.73 25.19 143.07 25.59 142.64 26.35 142.19 27.15 141.76 28.03 141.45 29.04 141.45 29.04 142.23 28.34 142.9 27.69 143.55 27.19 144.22 26.89 144.65 26.41 145.36 26.25 146.02 25.89 146.7 25.39 147.32 24.7 147.88 23.87 148.32 22.92 148.03 21.49Z%22/%3E%3Cpath d=%22M145.25 26.34L143.9 26.76 143.11 27.43 142.55 28.09 142.28 28.89 141.7 29.3 141.21 29.81 140.76 30.43 140.09 30.88 139.6 31.63 139.16 32.49 138.64 33.36 138.24 34.38 138.24 34.38 139 33.61 139.65 32.87 140.38 32.35 141.06 31.95 141.56 31.45 142.27 31.2 142.96 30.8 143.54 30.16 144.45 29.68 145.05 28.82 145.43 27.76 145.25 26.34Z%22/%3E%3Cpath d=%22M143.04 30.52L142.04 30.85 141.49 31.33 141.21 31.83 140.89 32.15 140.75 32.59 140.4 32.79 140.08 33.15 139.65 33.44 139.32 33.93 138.94 34.45 138.66 35.13 138.35 35.85 138.35 35.85 138.83 35.23 139.33 34.74 139.73 34.33 140.18 34.13 140.53 33.92 141 33.86 141.43 33.6 142.07 33.44 142.54 32.93 143.04 32.37 143.26 31.57 143.04 30.52Z%22/%3E%3Cpath d=%22M151.91 21.11L151.94 22.56 152.59 23.52 153.42 24.25 154.22 24.89 154.96 25.47 155.77 25.81 156.5 26.19 157.25 26.56 157.94 27.11 158.73 27.68 159.48 28.45 160.24 29.3 160.24 29.3 159.61 28.34 158.97 27.46 158.38 26.63 157.68 26.01 157.04 25.4 156.38 24.88 155.8 24.29 155.16 23.79 154.57 23.13 154.01 22.32 153.27 21.53 151.91 21.11Z%22/%3E%3Cpath d=%22M154.03 24.83L153.63 26.12 154.02 26.9 154.65 27.45 155.27 27.91 155.88 28.23 156.48 28.34 156.93 28.55 157.41 28.64 157.88 28.86 158.44 29.17 158.99 29.66 159.58 30.24 159.58 30.24 159.25 29.47 158.88 28.79 158.51 28.15 158.05 27.67 157.61 27.23 157.13 27.01 156.8 26.66 156.49 26.36 156.18 25.98 155.88 25.45 155.35 24.93 154.03 24.83Z%22/%3E%3Cpath d=%22M155.83 28.23L155.37 29.35 155.61 30.06 156.26 30.42 156.61 31.04 157.22 31.21 157.72 31.23 158.11 31.19 158.41 31.26 158.74 31.36 159.1 31.62 159.6 31.96 160.15 32.41 160.15 32.41 159.98 31.71 159.75 31.07 159.39 30.6 159.01 30.2 158.58 29.95 158.25 29.68 158.04 29.44 157.93 29.21 157.56 29.19 157.48 28.68 157.01 28.31 155.83 28.23Z%22/%3E%3Cpath d=%22M194.41 30L193.25 29.86 192.75 30.32 192.15 30.42 191.81 30.84 191.33 30.83 190.83 31.07 190.22 31.02 189.59 31.31 188.95 31.64 188.35 32.08 187.81 32.64 187.4 33.36 187.4 33.36 188.16 33.07 188.79 32.79 189.36 32.63 189.89 32.6 190.42 32.7 190.97 32.57 191.65 32.68 192.33 32.4 193.16 32.32 193.73 31.68 194.39 31.19 194.41 30Z%22/%3E%3Cpath d=%22M192.24 32.68L190.96 32.56 190.26 33 189.68 33.46 189.04 33.63 188.48 33.98 187.82 34.16 187.1 34.33 186.36 34.63 185.66 35.1 184.92 35.52 184.28 36.17 183.64 36.84 183.64 36.84 184.43 36.37 185.23 36.05 185.93 35.73 186.66 35.7 187.35 35.7 188.07 35.64 188.84 35.55 189.71 35.5 190.51 35.04 191.37 34.63 192.1 33.99 192.24 32.68Z%22/%3E%3Cpath d=%22M189.3 35.75L188.1 35.53 187.63 35.95 187.18 36.22 186.85 36.57 186.39 36.53 185.93 36.71 185.36 36.81 184.76 37.06 184.17 37.39 183.64 37.84 183.14 38.35 182.66 38.93 182.66 38.93 183.29 38.53 183.89 38.23 184.47 38.11 184.99 38.11 185.49 38.21 186.03 38.25 186.67 38.34 187.32 38.05 188.1 37.94 188.76 37.5 189.4 37 189.3 35.75Z%22/%3E%3Cpath d=%22M197.37 30.34L197.42 31.5 197.95 32.26 198.56 32.89 199.32 33.24 199.99 33.55 200.63 33.74 201.2 33.94 201.75 34.18 202.37 34.39 202.99 34.77 203.62 35.32 204.26 35.95 204.26 35.95 203.76 35.19 203.23 34.52 202.71 33.93 202.18 33.41 201.58 33.09 201.01 32.83 200.5 32.52 200.02 32.18 199.62 31.66 199.09 31.18 198.47 30.62 197.37 30.34Z%22/%3E%3Cpath d=%22M200.53 34.57L200.46 35.8 201.07 36.47 201.75 37.01 202.39 37.48 203.03 37.83 203.63 38.1 204.19 38.3 204.77 38.38 205.31 38.66 205.94 38.99 206.56 39.5 207.27 40.05 207.27 40.05 206.85 39.24 206.35 38.56 205.86 37.93 205.27 37.49 204.73 37.04 204.16 36.8 203.64 36.59 203.16 36.31 202.67 35.94 202.23 35.38 201.72 34.76 200.53 34.57Z%22/%3E%3Cpath d=%22M203.13 38.34L202.93 39.52 203.33 40.26 204.01 40.69 204.54 41.23 205.15 41.55 205.78 41.54 206.22 41.76 206.72 41.7 207.19 41.85 207.71 42.13 208.25 42.57 208.92 43.03 208.92 43.03 208.62 42.25 208.2 41.63 207.75 41.09 207.25 40.66 206.79 40.2 206.27 40.11 205.93 39.75 205.58 39.57 205.14 39.4 204.86 38.87 204.29 38.44 203.13 38.34Z%22/%3E%3Cpath d=%22M238.69 33.32L237.31 33.55 236.68 34.32 235.94 34.82 235.43 35.44 234.85 35.91 234.23 36.33 233.57 36.75 232.87 37.21 232.18 37.77 231.55 38.5 230.93 39.31 230.38 40.24 230.38 40.24 231.21 39.56 231.97 38.94 232.73 38.48 233.42 38.08 234.11 37.77 234.83 37.5 235.6 37.21 236.4 36.81 237.27 36.34 237.92 35.51 238.68 34.74 238.69 33.32Z%22/%3E%3Cpath d=%22M236.58 36.71L235.29 36.83 234.69 37.39 234.1 37.77 233.78 38.3 233.37 38.7 232.88 38.99 232.29 39.21 231.78 39.73 231.21 40.22 230.71 40.85 230.23 41.57 229.77 42.36 229.77 42.36 230.44 41.75 231.1 41.25 231.73 40.9 232.3 40.65 232.92 40.6 233.47 40.36 234.11 40.14 234.84 39.88 235.65 39.53 236.2 38.79 236.74 38.02 236.58 36.71Z%22/%3E%3Cpath d=%22M234.39 40.16L233.26 40.24 232.77 40.65 232.49 41.06 232.14 41.19 231.98 41.59 231.6 41.63 231.19 41.87 230.74 42.2 230.28 42.58 229.91 43.11 229.58 43.72 229.26 44.39 229.26 44.39 229.8 43.9 230.33 43.53 230.81 43.31 231.21 43.18 231.62 43.2 232.06 43.2 232.53 42.97 233.23 42.96 233.73 42.45 234.3 41.98 234.68 41.3 234.39 40.16Z%22/%3E%3Cpath d=%22M241.02 32.71L241.21 33.92 241.81 34.67 242.57 35.22 243.49 35.34 244.29 35.5 245.03 35.59 245.7 35.68 246.33 35.78 247.02 35.77 247.66 36.06 248.43 36.34 249.27 36.7 249.27 36.7 248.73 35.94 248.13 35.28 247.4 34.87 246.71 34.38 245.96 34.2 245.26 34.09 244.63 33.96 244.05 33.74 243.59 33.26 242.98 32.96 242.21 32.67 241.02 32.71Z%22/%3E%3Cpath d=%22M243.44 35.52L243.41 36.61 243.9 37.2 244.5 37.66 245.24 37.77 245.89 37.94 246.48 37.75 246.97 37.7 247.41 37.73 247.85 37.76 248.39 37.82 248.93 38.11 249.55 38.44 249.55 38.44 249.16 37.83 248.68 37.36 248.2 36.89 247.62 36.63 247.04 36.55 246.52 36.49 246.09 36.24 245.72 36.22 245.44 35.91 245.03 35.7 244.5 35.42 243.44 35.52Z%22/%3E%3Cpath d=%22M245.4 38.1L245.18 39.01 245.5 39.5 245.99 39.86 246.62 39.86 247.12 39.81 247.54 39.76 247.84 39.58 248.08 39.45 248.32 39.44 248.66 39.46 249.04 39.67 249.44 39.98 249.44 39.98 249.18 39.53 248.88 39.15 248.54 38.81 248.11 38.69 247.68 38.63 247.3 38.6 247.04 38.67 246.88 38.59 246.82 38.35 246.64 38.21 246.29 38.01 245.4 38.1Z%22/%3E%3C/g%3E%3C/svg%3E");
  --m-valley: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22140%22 height=%2222%22 viewBox=%220 0 140 22%22%3E%3Cpath d=%22M0 15L2.21 14.39 4.48 14.26 6.71 13.8 9.04 14 11.32 13.92 13.48 12.96 15.71 12.56 18.05 12.11 20.26 12.33 22.38 13.27 24.59 13.47 26.78 13.88 29.02 13.84 31.28 13.73 33.41 14.51 35.63 14.71 37.77 15.41 40.07 15.99 42.11 14.78 44.27 14.44 46.46 14.3 48.66 14.26 50.91 14.59 53.03 13.99 55.18 13.53 57.31 12.99 59.41 12.22 61.64 12.37 63.86 12.46 65.98 12.17 68.12 12.64 70.35 12.44 72.54 12.57 74.7 12.94 76.82 13.57 78.95 14.11 81.11 14.47 83.34 14.31 85.5 14.66 87.73 14.45 89.85 15.12 92.05 15.93 94.21 15.44 96.4 15.22 98.52 14.47 100.69 14.13 102.94 14.35 105.11 14.01 107.33 14.03 109.51 13.79 111.63 12.98 113.79 12.53 116.04 12.08 118.18 12.79 120.29 13.71 122.52 13.47 124.72 13.45 126.94 13.32 129.13 13.46 131.27 14.12 133.42 14.68 135.62 14.72 137.79 15.09 140 15 140 22 0 22Z%22/%3E%3Cpath d=%22M2.69 15.23L3.02 13.91 3.68 12.7 3.98 11.37 4.13 9.98 4.68 8.74 5.14 7.46 5.33 6.09 6.37 4.76 6.65 6.1 6.96 7.43 7.5 8.68 7.7 10.04 8.01 11.37 8.37 12.68 8.9 13.93 9.49 14.92 8.1 14.92 6.7 15.31 5.3 15.08 3.9 15.16Z%22/%3E%3Cpath d=%22M17.36 13.91L18.05 12.68 18.31 11.3 18.53 9.91 19.08 8.63 19.32 7.25 19.59 5.87 20.44 4.7 20.89 3.38 21.33 4.7 21.6 6.07 21.98 7.41 22.8 8.6 23.13 9.95 23.74 11.21 24.25 12.5 24.47 14.13 23.04 13.86 21.61 13.84 20.18 13.66 18.75 13.61Z%22/%3E%3Cpath d=%22M31.13 15.88L31.61 14.59 31.86 13.22 32.03 11.82 32.39 10.48 32.79 9.16 33.47 7.94 34.2 6.73 34.78 5.47 34.62 4.14 35.4 5.33 36.07 6.56 36.4 7.9 36.71 9.26 36.9 10.65 37.46 11.92 37.77 13.27 38.31 14.54 38.88 15.92 37.55 15.84 36.22 16.04 34.89 15.94 33.56 15.7 32.22 15.77Z%22/%3E%3Cpath d=%22M42.42 15.65L42.64 14.33 43.29 13.15 43.83 11.94 44.31 10.7 44.6 9.4 45.37 8.27 45.83 7.02 45.75 5.74 46.52 6.88 47.04 8.1 47.6 9.31 47.72 10.66 48.2 11.9 48.48 13.2 49 14.43 49.37 15.51 48.01 15.46 46.64 15.41 45.28 15.78 43.91 15.98Z%22/%3E%3Cpath d=%22M61.15 13.12L61.71 11.82 62.19 10.49 62.79 9.19 63.33 7.88 63.42 6.42 63.73 5.03 64.32 3.73 65 2.38 65.44 3.73 65.52 5.2 65.99 6.53 66.68 7.79 67.21 9.11 67.76 10.42 68.41 11.69 68.53 13.39 67.07 13.06 65.61 12.89 64.15 13.03 62.69 13.03Z%22/%3E%3Cpath d=%22M82.46 15.64L82.73 14.25 83.07 12.88 83.6 11.58 84.23 10.31 84.84 9.03 85.26 7.7 85.62 6.36 85.78 7.78 86.23 9.12 86.93 10.36 87.33 11.71 87.99 12.96 88.46 14.29 88.82 15.64 87.55 15.93 86.29 16.06 85.02 15.8 83.76 15.64Z%22/%3E%3Cpath d=%22M96.02 15.55L96.44 14.2 96.71 12.8 97.18 11.47 97.94 10.23 98.39 8.89 98.96 7.59 99.25 6.24 99.34 7.7 99.93 8.99 100.57 10.27 101.16 11.56 101.65 12.89 102.15 14.21 102.49 15.86 101.22 15.78 99.94 15.65 98.67 15.7 97.4 15.67Z%22/%3E%3Cpath d=%22M107 14.18L107.39 12.76 108.3 11.52 108.71 10.11 109.13 8.7 109.76 7.37 110.15 5.86 110.84 7.18 111.12 8.64 111.46 10.07 111.86 11.48 112.26 12.9 112.86 13.93 111.44 14.27 110.03 14.52 108.61 14.33Z%22/%3E%3Cpath d=%22M122.59 14.53L123.19 13.25 123.66 11.92 123.78 10.47 124.14 9.1 124.84 7.85 125.09 6.45 126.13 5.03 126.3 6.46 126.65 7.83 127.24 9.12 127.53 10.5 127.72 11.93 128.26 13.23 128.88 14.3 127.61 14.29 126.34 14.28 125.07 14.14 123.8 14.53Z%22/%3E%3C/svg%3E");
  --t-speckle: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22220%22 height=%22220%22%3E%3Cfilter id=%22n%22 x=%220%22 y=%220%22 width=%22100%25%22 height=%22100%25%22%3E%3CfeTurbulence type=%22fractalNoise%22 baseFrequency=%22.85%22 numOctaves=%222%22 seed=%224%22 stitchTiles=%22stitch%22/%3E%3CfeColorMatrix values=%220 0 0 0 .95  0 0 0 0 .91  0 0 0 0 .83  0 0 0 -9 2.75%22/%3E%3C/filter%3E%3Crect width=%22220%22 height=%22220%22 filter=%22url(%23n)%22/%3E%3C/svg%3E");
  --t-grain: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22180%22 height=%22180%22%3E%3Cfilter id=%22g%22 x=%220%22 y=%220%22 width=%22100%25%22 height=%22100%25%22%3E%3CfeTurbulence type=%22fractalNoise%22 baseFrequency=%22.75%22 numOctaves=%223%22 seed=%229%22 stitchTiles=%22stitch%22/%3E%3CfeColorMatrix values=%220 0 0 0 .35  0 0 0 0 .28  0 0 0 0 .18  0 0 0 .5 -.22%22/%3E%3C/filter%3E%3Crect width=%22180%22 height=%22180%22 filter=%22url(%23g)%22/%3E%3C/svg%3E");
  --m-edge-bottom: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22160%22 height=%2210%22 viewBox=%220 0 160 10%22 preserveAspectRatio=%22none%22%3E%3Cpath d=%22M0 0L0 3 2.19 3.46 4.38 4.26 6.58 3.22 8.77 3.22 10.96 2.53 13.15 1.85 15.34 2.25 17.53 2.97 19.73 2.86 21.92 3.16 24.11 4.14 26.3 3.17 28.49 3.63 30.68 3.69 32.88 2.23 35.07 2.4 37.26 2.38 39.45 2.56 41.64 2.46 43.84 3.13 46.03 3.56 48.22 3.75 50.41 4.02 52.6 3.2 54.79 3.29 56.99 2.73 59.18 2.25 61.37 2.23 63.56 2.78 65.75 2.92 67.95 3.28 70.14 4.38 72.33 3.77 74.52 3.16 76.71 3.75 78.9 2.27 81.1 2.1 83.29 2.21 85.48 2.14 87.67 2.39 89.86 3.27 92.05 3.42 94.25 3.69 96.44 4.02 98.63 2.86 100.82 3 103.01 2.74 105.21 2.09 107.4 1.95 109.59 2.64 111.78 3.09 113.97 3.27 116.16 3.9 118.36 3.54 120.55 3.16 122.74 3.48 124.93 2.9 127.12 2 129.32 2.16 131.51 2.48 133.7 2.4 135.89 3.52 138.08 3.66 140.27 3.22 142.47 3.98 144.66 3.01 146.85 2.78 149.04 2.46 151.23 2.66 153.42 1.98 155.62 2.51 157.81 3.28 160 3 160 0Z%22/%3E%3C/svg%3E");
  --m-edge-top: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22160%22 height=%2210%22 viewBox=%220 0 160 10%22 preserveAspectRatio=%22none%22%3E%3Cpath d=%22M0 7L2.19 5.78 4.38 7.26 6.58 7.48 8.77 7.76 10.96 7.43 13.15 6.9 15.34 6.75 17.53 6.37 19.73 8.07 21.92 7.14 24.11 7.57 26.3 5.84 28.49 6.55 30.68 6.55 32.88 7.87 35.07 8 37.26 7.51 39.45 6.92 41.64 6.26 43.84 7.01 46.03 7.05 48.22 8.11 50.41 6.99 52.6 7.02 54.79 6.15 56.99 7.28 59.18 7.83 61.37 7.45 63.56 7.58 65.75 6.2 67.95 6.5 70.14 6.5 72.33 7.85 74.52 7.64 76.71 7.89 78.9 6.34 81.1 6.12 83.29 6.61 85.48 7.12 87.67 7.57 89.86 6.6 92.05 6.8 94.25 6.19 96.44 7.25 98.63 7.27 100.82 8.29 103.01 7.37 105.21 6.65 107.4 5.97 109.59 6.22 111.78 7.42 113.97 7.1 116.16 7.6 118.36 6.48 120.55 6.41 122.74 6.39 124.93 7.75 127.12 7.58 129.32 7.33 131.51 6.4 133.7 5.74 135.89 7.03 138.08 7.25 140.27 7.91 142.47 7.32 144.66 7.22 146.85 6.29 149.04 6.82 151.23 7.39 153.42 7.43 155.62 7.55 157.81 6.26 160 7 160 10 0 10Z%22/%3E%3C/svg%3E");
  --m-rule: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2290%22 height=%226%22 viewBox=%220 0 90 6%22%3E%3Cpath d=%22M0 2.25L1.5 2.29 3 2.16 4.5 2.02 6 1.58 7.5 1.61 9 1.65 10.5 1.82 12 2.22 13.5 2.22 15 2.12 16.5 2.38 18 2.3 19.5 2.13 21 1.74 22.5 1.75 24 1.64 25.5 1.88 27 2.01 28.5 2.2 30 2.26 31.5 2.14 33 2.2 34.5 2.19 36 1.87 37.5 1.95 39 1.6 40.5 1.74 42 1.92 43.5 2.22 45 2.52 46.5 2.3 48 2.17 49.5 1.92 51 1.93 52.5 1.83 54 1.71 55.5 1.59 57 1.68 58.5 1.96 60 2.39 61.5 2.35 63 2.4 64.5 2.08 66 2.05 67.5 1.95 69 1.85 70.5 1.84 72 1.72 73.5 2.03 75 2.05 76.5 2.46 78 2.46 79.5 2.23 81 2.07 82.5 1.67 84 1.77 85.5 1.71 87 1.83 88.5 1.9 90.09 2 90 3.58 88.5 3.68 87 3.63 85.5 3.89 84 4.36 82.5 4.32 81 4.26 79.5 4.17 78 3.88 76.5 4.12 75 3.88 73.5 3.73 72 3.56 70.5 3.9 69 4.26 67.5 4.47 66 4.39 64.5 4.07 63 4.09 61.5 3.91 60 3.91 58.5 3.85 57 3.72 55.5 3.87 54 3.93 52.5 4.2 51 4.37 49.5 4.19 48 4.05 46.5 3.81 45 3.92 43.5 3.77 42 3.88 40.5 3.73 39 3.78 37.5 4.19 36 4.24 34.5 4.32 33 4.16 31.5 3.89 30 3.73 28.5 3.55 27 3.74 25.5 3.99 24 3.98 22.5 4.14 21 4.17 19.5 4.42 18 4.3 16.5 4.21 15 3.79 13.5 3.57 12 3.77 10.5 3.81 9 3.97 7.5 4.07 6 4.06 4.5 4.08 3 4.12 1.5 4.34 0.14 4Z%22/%3E%3C/svg%3E");
}
@media (prefers-color-scheme: dark) {
  :root {
    --paper: #0f151d; --card: #151d28; --ink: #ece2cd; --muted: #a59d8c; --line: #2c3848; --rule: #4d5a6c;
    --red: #e5603f; --sea: #3f80b5; --sea-calm: #1b2f43; --cut: #0f151d; --smoke: rgba(236, 226, 205, .3);
    --btn: #ece2cd; --btn-fg: #0f151d; --ok: #57c08a; --bad: #f07a64; --wait: #e9b44c; --off: #5d6876;
    --sky: #14243a; --sky-sea: #1c3a5c; --sky-ink: #f3e9d4; --sky-muted: #b9c4cf; --sky-link: #f7c59a; --sky-ok: #7fd3a2;
    --sky-speckle: .55; --sky-smoke: rgba(243, 233, 212, .75); --t-sky: none;
  }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper) var(--t-grain); color: var(--ink); font: 16.5px/1.5 var(--text); -webkit-text-size-adjust: 100%; min-height: 100vh; display: flex; flex-direction: column; }
main { width: 100%; max-width: 680px; margin: 0 auto; padding: 18px 16px 0; flex: 1; }

/* The masthead: a printed block, ragged where the lino was cut */
.masthead { position: relative; background: var(--sky) var(--t-sky) 0 0 / 420px 150px; color: var(--sky-ink); padding-top: calc(env(safe-area-inset-top) + 22px);
  -webkit-mask: linear-gradient(#000 0 0) top / 100% calc(100% - 9px) no-repeat, var(--m-edge-bottom) bottom / 160px 10px repeat-x;
          mask: linear-gradient(#000 0 0) top / 100% calc(100% - 9px) no-repeat, var(--m-edge-bottom) bottom / 160px 10px repeat-x; }
.masthead::before { content: ""; position: absolute; inset: 0; background: var(--t-speckle); opacity: var(--sky-speckle); pointer-events: none; }
.mast-in { position: relative; max-width: 680px; margin: 0 auto; padding: 0 16px; }
.mast-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
h1 { font: 900 clamp(2.9rem, 11vw, 3.9rem)/.9 var(--display); letter-spacing: -.045em; margin: 0; }
.tagline { font: 500 1.02rem/1.3 var(--display); color: var(--sky-muted); margin-top: 8px; }
.sun.set { position: absolute; z-index: 0; right: calc(max(34px, 50% - 306px) + clamp(46px, 12vw, 62px) + 16px); bottom: calc(100% - 26px); width: clamp(64px, 16vw, 92px); aspect-ratio: 2; overflow: hidden; }
.sun svg { display: block; width: 100%; height: auto; }
.sun.high { position: absolute; z-index: 0; right: max(22px, calc(50% - 318px)); top: calc(env(safe-area-inset-top) + 60px); width: clamp(50px, 13vw, 78px); }
@media (prefers-color-scheme: light) { .sun.set { display: none; } }
@media (prefers-color-scheme: dark) { .sun.high { display: none; } }
.me-line { margin-top: 16px; font-size: .875rem; color: var(--sky-muted); max-width: 30em; }
.me-line b { color: var(--sky-ink); }
.masthead .link { color: var(--sky-link); text-decoration-color: currentColor; }
.status { display: flex; align-items: center; font-size: .875rem; color: var(--sky-muted); padding-top: 6px; white-space: nowrap; }
.mast-peaks { position: relative; height: 70px; margin-top: 48px; }
.mast-peaks::before, .mast-peaks::after { content: ""; position: absolute; inset: 0; }
.mast-peaks::before { z-index: 1; background: var(--sky-sea); -webkit-mask: var(--m-peaks) repeat-x 0 0 / 260px 70px; mask: var(--m-peaks) repeat-x 0 0 / 260px 70px; }
.mast-peaks::after { z-index: 1; background: var(--t-snow) repeat-x 0 0 / 260px 70px; }
.mast-cable { position: absolute; z-index: 2; left: 0; right: 0; top: -24px; height: 2px; background: var(--sky-ink); -webkit-mask: var(--m-rule) repeat-x 0 50% / 90px 6px; mask: var(--m-rule) repeat-x 0 50% / 90px 6px; height: 6px; top: -26px; }
.mast-cabin { position: absolute; z-index: 3; right: max(34px, calc(50% - 306px)); top: -26px; width: clamp(46px, 12vw, 62px); aspect-ratio: 48 / 60; color: var(--sky-ink); }
.mast-cabin svg { display: block; width: 100%; height: 100%; transform-origin: 50% 4%; animation: sway 4.6s ease-in-out infinite; }

/* Type and layout */
h2 { font: 800 1.3rem/1.15 var(--display); letter-spacing: -.02em; margin: 0; }
h3 { font: 800 1.3rem/1.2 var(--display); letter-spacing: -.02em; margin: 0 0 12px; overflow-wrap: anywhere; }
p { margin: 0 0 10px; }
.muted { color: var(--muted); }
.small { font-size: .875rem; }
.card { background: var(--card); border: 1.5px solid var(--line); border-radius: 5px; padding: 16px; margin: 0 0 12px; }
.section-head { display: flex; justify-content: space-between; align-items: center; gap: 14px; margin: 30px 0 12px; }
.section-head h2 { flex: 1; display: flex; align-items: center; gap: 12px; }
.section-head h2::after { content: ""; flex: 1; min-width: 20px; height: 6px; background: var(--rule); -webkit-mask: var(--m-rule) repeat-x center / 90px 6px; mask: var(--m-rule) repeat-x center / 90px 6px; }
.count { font: 700 .78rem/1 var(--mono); background: var(--red); color: #fff; border-radius: 3px; padding: 4px 6px 3px; }
.count:empty { display: none; }
.row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.row.end { justify-content: flex-end; margin-top: 14px; }
.grow { flex: 1 1 180px; min-width: 0; }
.actions { display: flex; gap: 8px; flex-wrap: wrap; }
.btn { font: 700 .92rem/1.1 var(--text); letter-spacing: .01em; padding: 10px 16px 9px; border-radius: 4px; border: 1.5px solid var(--btn); background: var(--btn); color: var(--btn-fg); cursor: pointer; white-space: nowrap; text-decoration: none; display: inline-block; transition: background .12s, border-color .12s, color .12s; }
.btn:hover { background: var(--red); border-color: var(--red); color: #fff; }
.btn.ghost { background: transparent; color: var(--ink); border-color: var(--ink); }
.btn.ghost:hover { background: var(--ink); color: var(--paper); }
.btn:disabled { opacity: .5; cursor: default; }
.link { font: inherit; background: none; border: 0; padding: 0; color: var(--ink); cursor: pointer; text-decoration: underline; text-decoration-color: var(--red); text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
.dot { display: inline-block; width: 9px; height: 9px; border-radius: 50%; background: var(--off); margin-right: 8px; vertical-align: middle; flex: none; }
.dot.ok { background: var(--ok); } .dot.bad { background: var(--bad); } .dot.wait { background: var(--wait); }
.dot.sleep { background: transparent; box-shadow: inset 0 0 0 2px var(--ok); }
.masthead .dot.ok { background: var(--sky-ok); }
.hero { border: 2px solid var(--ink); box-shadow: inset 0 0 0 3px var(--card), inset 0 0 0 4.5px var(--line); padding: 20px; }
.hero h2 { font-size: 1.55rem; margin-bottom: 6px; }
.dname { font-weight: 700; overflow-wrap: anywhere; }
.device.linked { padding: 2px 4px 12px; color: var(--muted); }
.device.linked .row { align-items: baseline; gap: 12px; }
.device.linked .dot { margin-right: 8px; }
.device.drop { outline: 2px dashed var(--red); outline-offset: 3px; }
.xfer { font-size: .9rem; }
.xfer-cross:empty, .xfer-body:empty { display: none; }
.xfer-cross, .xfer-body { margin-top: 12px; }
.xfer-body > div + div { margin-top: 8px; }
.xfer .ok, .crossing .ok { color: var(--ok); } .xfer .bad { color: var(--bad); }
.opts { margin-top: 12px; padding-top: 10px; border-top: 1.5px dashed var(--line); justify-content: space-between; }
.opts label { display: flex; align-items: center; gap: 6px; cursor: pointer; }
.empty { color: var(--muted); font-size: .92rem; padding: 16px; border: 1.5px dashed var(--rule); border-radius: 5px; }
.item { display: flex; gap: 12px; align-items: flex-start; }
.item img { width: 64px; height: 64px; object-fit: cover; border-radius: 3px; flex: none; background: var(--line); border: 1.5px solid var(--ink); }
.item .name { font-weight: 700; overflow-wrap: anywhere; }
.textbox { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 180px; overflow: auto; background: var(--paper); border: 1px solid var(--line); border-radius: 3px; padding: 8px 10px; margin: 6px 0 10px; font-size: .92rem; }

/* Incoming: gondola tickets, with a stub and a perforation */
.ticket { position: relative; padding-left: 56px; min-height: 120px;
  -webkit-mask: radial-gradient(circle 7px at 40px 0, #0000 97%, #000) top / 100% 51% no-repeat, radial-gradient(circle 7px at 40px 100%, #0000 97%, #000) bottom / 100% 51% no-repeat;
          mask: radial-gradient(circle 7px at 40px 0, #0000 97%, #000) top / 100% 51% no-repeat, radial-gradient(circle 7px at 40px 100%, #0000 97%, #000) bottom / 100% 51% no-repeat; }
.ticket::before { content: attr(data-stub); position: absolute; left: 0; top: 0; bottom: 0; width: 40px; border-right: 2px dashed var(--rule); writing-mode: vertical-rl; transform: rotate(180deg); display: flex; align-items: center; justify-content: center; font: 700 .7rem/1 var(--mono); letter-spacing: .28em; color: var(--red); }
.ticket.receiving::before, .ticket.accepted::before, .ticket.paused::before { color: var(--sea); }
.ticket.arrived::before { color: var(--ok); }
.ticket-head { padding-bottom: 8px; margin-bottom: 10px; border-bottom: 1.5px dashed var(--line); overflow-wrap: anywhere; }
.ticket .row.end { margin-top: 10px; }
.rxp:empty { display: none; }
.rxp { margin-top: 8px; font-size: .875rem; }

/* A crossing: the cabin leaves one station, rides the cable across, and comes in at the other */
.crossing { max-height: 160px; transition: opacity .4s, max-height .45s .1s, margin .45s .1s; }
.crossing + .crossing { margin-top: 10px; }
.crossing.gone { opacity: 0; max-height: 0; margin: 0; overflow: hidden; }
.cross-cap { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.cross-label { min-width: 0; overflow-wrap: anywhere; }
.cross-num { font: .8rem var(--mono); color: var(--muted); white-space: nowrap; }
.crossing { --s: 0; }
.scene { position: relative; height: 58px; margin-top: 4px; color: var(--ink); }
.scene .valley { position: absolute; left: 0; right: 0; bottom: 0; height: 22px; background: var(--sea-calm); -webkit-mask: var(--m-valley) repeat-x 0 0 / 140px 22px; mask: var(--m-valley) repeat-x 0 0 / 140px 22px; }
/* The cable runs from wheel to wheel; the part the cabin has covered is drawn over it. */
.scene .cable { position: absolute; left: 31px; right: 31px; top: 12.6px; height: 2px; background: var(--rule); }
.scene .cable.run { right: auto; width: calc((100% - 62px) * var(--s)); top: 12.1px; height: 3px; background: var(--sea); }
.station { position: absolute; bottom: 0; width: 40px; height: 56px; }
.station.from { left: 0; } .station.to { right: 0; }
.station svg { display: block; width: 100%; height: 100%; overflow: visible; fill: currentColor; }
.cabin { position: absolute; left: calc(16px + (100% - 62px) * var(--s)); top: 11.8px; width: 30px; height: 37.5px; }
.cabin svg, .mast-cabin svg { display: block; width: 100%; height: 100%; }
.cabin svg { transform-origin: 50% 4%; animation: sway 2.6s ease-in-out infinite; }
@keyframes sway { 0%, 100% { transform: rotate(-2.2deg); } 50% { transform: rotate(2.2deg); } }
.crossing .flag { transform-box: view-box; transform-origin: 33.6px 20px; transform: scaleY(0); }
.cross-ends { display: flex; justify-content: space-between; gap: 12px; font: 700 .7rem/1.2 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); margin-top: 4px; }
.cross-ends span { max-width: 45%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cross-ends span + span { text-align: right; }
/* Arrived: the cabin swings to a stop in the station, and the flag goes up. */
.landed .cabin svg { animation: settle 1.1s cubic-bezier(.2, .7, .3, 1) var(--dd, 0ms) both; }
.landed .cable.run { background: var(--ok); }
.landed .flag { animation: hoist .7s cubic-bezier(.3, 1.4, .5, 1) calc(var(--dd, 0ms) + .35s) both; }
.landed .cross-ends span + span { color: var(--ok); }
@keyframes settle { 0% { transform: rotate(-2deg); } 25% { transform: rotate(7deg); } 50% { transform: rotate(-4deg); } 72% { transform: rotate(2deg); } 88% { transform: rotate(-.8deg); } 100% { transform: none; } }
@keyframes hoist { from { transform: scaleY(0); } to { transform: scaleY(1); } }
@media (prefers-reduced-motion: reduce) {
  .cabin svg, .mast-cabin svg { animation: none !important; }
  .crossing .flag { transform: none; }
}

/* Sheets, toasts, codes */
.overlay { position: fixed; inset: 0; background: rgba(15, 21, 29, .55); display: flex; align-items: flex-end; justify-content: center; padding: 16px; z-index: 10; }
@media (min-width: 600px) { .overlay { align-items: center; } }
.sheet { background: var(--card); color: var(--ink); border-radius: 6px; padding: 20px; width: 100%; max-width: 440px; max-height: 90vh; overflow: auto; border: 2px solid var(--ink); box-shadow: 6px 6px 0 rgba(15, 21, 29, .35); }
.qr { display: flex; justify-content: center; margin: 4px 0 12px; }
.qr svg { width: min(260px, 70vw); height: auto; background: #fff; border-radius: 4px; }
textarea { width: 100%; min-height: 120px; font: inherit; padding: 10px; border-radius: 4px; border: 1.5px solid var(--line); background: var(--paper); color: var(--ink); resize: vertical; }
ul.files { margin: 0 0 6px; padding-left: 1.1em; }
ul.files li { overflow-wrap: anywhere; }
.choice { display: flex; flex-direction: column; gap: 8px; }
.choice .btn { display: flex; justify-content: space-between; gap: 12px; text-align: left; }
#toasts { position: fixed; left: 50%; transform: translateX(-50%); bottom: calc(env(safe-area-inset-bottom) + 16px); display: flex; flex-direction: column; gap: 8px; z-index: 20; width: min(440px, calc(100% - 32px)); pointer-events: none; }
.toast { background: var(--ink); color: var(--paper); padding: 10px 14px; border-radius: 4px; font-size: .92rem; transition: opacity .4s; border-left: 6px solid var(--off); }
.toast.ok { border-left-color: var(--ok); } .toast.bad { border-left-color: var(--red); }
.toast.out { opacity: 0; }
.bad-text { color: var(--bad); }
.code { font: 700 2.1rem/1.2 var(--mono); letter-spacing: .04em; text-align: center; padding: 14px 0 16px; overflow-wrap: anywhere; }
.codebox { width: 100%; font: 700 1.5rem/1.2 var(--mono); letter-spacing: .06em; text-align: center; padding: 10px; border-radius: 4px; border: 1.5px solid var(--ink); background: var(--paper); color: var(--ink); margin: 4px 0 8px; }
.linkbox { width: 100%; font: .8rem var(--mono); padding: 8px 10px; border-radius: 4px; border: 1.5px solid var(--line); background: var(--paper); color: var(--ink); margin-bottom: 4px; }

/* Shore */
.shore { margin-top: 40px; }
.shore .foot { max-width: 680px; margin: 0 auto; padding: 0 16px 16px; }
.shore-peaks { position: relative; height: 56px; background: var(--sky-sea); -webkit-mask: var(--m-peaks) repeat-x 70px 0 / 260px 70px; mask: var(--m-peaks) repeat-x 70px 0 / 260px 70px; }
.shore-peaks::after { content: ""; position: absolute; inset: 0; background: var(--t-snow) repeat-x 70px 0 / 260px 70px; }
.sprite { position: absolute; }
.hero .actions { margin-top: 12px; }
.item .row { margin-top: 8px; }
.save-note { margin: -4px 0 12px; }
.item .saved { margin-top: 6px; }
.item .saved::before { content: "✓ "; color: var(--ok); font-weight: 700; }
.choice.stack .btn { flex-direction: column; align-items: flex-start; gap: 3px; white-space: normal; }
.choice .btn.on { box-shadow: inset 0 0 0 1.5px var(--ink); }
.choice .btn.on > span:first-child::after { content: " ✓"; color: var(--red); }
.choice + p { margin-top: 12px; }
.optcol { display: flex; flex-direction: column; gap: 6px; }
.check { display: flex; align-items: flex-start; gap: 8px; margin-top: 12px; cursor: pointer; }
.check input { margin-top: 3px; flex: none; }
.intro + .intro { margin-top: 10px; }
#intros-all { margin: 0 0 12px; }
/* A sheet sits at the bottom of a phone screen: messages go to the top, off its buttons. */
@media (max-width: 599px) { body:has(#modal-root .overlay) #toasts { bottom: auto; top: calc(env(safe-area-inset-top) + 12px); } }
