@charset "UTF-8";/*!* Standalone page surfaces.
*
* These pages reuse the article surface's tokens, rail, sheet, prose and
* footer — `article.scss` is loaded alongside this file — so this stylesheet
* carries only what a page needs on top of that, plus one section per surface
* as each is migrated.
*
* Migrated so far: Applications (minimal — its composition round is pending).*//*!* Canon surface tokens — shared by the migrated surfaces (homepage, article).
* Import into a surface stylesheet and include the mixins on that surface's
* scope element, so the palette, ramp and elevation have one source of truth.*/.page-surface .page-sheet{background:var(--h-sheet);border-radius:var(--h-r-panel);box-shadow:var(--h-e1);overflow:hidden}.page-surface .page-head{padding:30px 30px 0}.page-surface .page-title{font-family:var(--h-font);font-size:30px;font-weight:700;line-height:1.16;letter-spacing:-.02em;margin:0;max-width:30ch;color:var(--h-ink)}.page-surface .page-standfirst{font-family:var(--h-prose);font-size:18px;line-height:1.5;color:var(--h-ink-2);margin:12px 0 0;max-width:62ch}.page-surface .page-body{padding:22px 30px 34px}.page-surface .page-head::after{content:"";display:block;margin-top:22px;border-bottom:1px solid var(--h-line)}@media(max-width:767px){.page-surface .page-head{padding:22px 20px 0}.page-surface .page-body{padding:20px 20px 28px}.page-surface .page-title{font-size:24px;max-width:none}.page-surface .page-standfirst{font-size:16.5px}}.list-surface .card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.list-surface .sheet--card{background:var(--h-sheet);border-radius:var(--h-r-panel);box-shadow:var(--h-e1);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s ease}.list-surface .sheet--card:hover{box-shadow:var(--h-e2)}.list-surface .card-cover{display:block;height:108px;background:var(--h-fill);flex-shrink:0}.list-surface .card-cover img{width:100%;height:100%;object-fit:cover;display:block}.list-surface .card-body{padding:16px 20px 18px;display:flex;flex-direction:column;gap:8px;flex:1}.list-surface .card-title{font-size:16px;font-weight:600;line-height:1.32;letter-spacing:-.012em;margin:0}.list-surface .card-title a{color:var(--h-ink)}.list-surface .card-title a:hover,.list-surface .card-title a:focus-visible{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.list-surface .card-standfirst{font-family:var(--h-prose);font-size:13px;line-height:1.5;color:var(--h-ink-2);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.list-surface .chip{align-self:flex-start;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--h-accent-ink);background:var(--h-accent);padding:4px 10px;border-radius:6px;transition:filter .15s ease}.list-surface .chip:hover,.list-surface .chip:focus-visible{filter:brightness(1.08)}.list-surface .meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--h-ink-3);font-variant-numeric:tabular-nums;margin-top:auto;padding-top:6px}.list-surface .meta-sep{color:var(--h-line-strong)}.list-surface .pagination{background:0 0;box-shadow:none;border-radius:0;gap:6px;padding:0;margin-top:6px}.list-surface .pagination .page-link{min-width:34px;height:34px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--h-r-control);font-family:var(--h-font);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--h-ink-2);border:1px solid var(--h-line);transition:background .15s ease,color .15s ease,border-color .15s ease}.list-surface .pagination a.page-link:hover,.list-surface .pagination a.page-link:focus-visible{background:var(--h-fill);color:var(--h-ink);border-color:var(--h-line-strong)}.list-surface .pagination .page-link.current{background:var(--h-accent);border-color:var(--h-accent);color:var(--h-accent-ink);font-weight:600}.list-surface .pagination .page-link.dots{border-color:transparent;color:var(--h-ink-3)}.list-surface .list-head{margin-bottom:22px}.list-surface .list-title{font-family:var(--h-font);font-size:30px;font-weight:700;line-height:1.16;letter-spacing:-.02em;margin:0;color:var(--h-ink)}.list-surface .list-standfirst{font-family:var(--h-prose);font-size:18px;line-height:1.5;color:var(--h-ink-2);margin:12px 0 0;max-width:62ch}.list-surface .list-count{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:10px 0;border-top:1px solid var(--h-ink);border-bottom:1px solid var(--h-line);font-size:12px;color:var(--h-ink-3);font-variant-numeric:tabular-nums}.list-surface .list-siblings{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.list-surface .list-siblings a{font-family:var(--h-font);font-size:13px;font-weight:500;color:var(--h-ink-2);background:var(--h-fill);border-radius:6px;padding:6px 12px;transition:background .15s ease,color .15s ease}.list-surface .list-siblings a:hover,.list-surface .list-siblings a:focus-visible{background:var(--h-fill-strong);color:var(--h-ink)}.list-surface .list-siblings a.on{background:var(--h-accent);color:var(--h-accent-ink);font-weight:600}.list-surface .list-empty{background:var(--h-sheet);border-radius:var(--h-r-panel);box-shadow:var(--h-e1);padding:34px 30px;font-size:15px;color:var(--h-ink-2)}@media(max-width:767px){.list-surface .list-title{font-size:24px}.list-surface .list-standfirst{font-size:16.5px}.list-surface .card-grid{grid-template-columns:minmax(0,1fr);gap:18px}.list-surface .card-cover{height:150px}}.list-surface .tax-index{columns:2;column-gap:56px;margin-top:8px}.list-surface .tax-letter{font-family:var(--h-font);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--h-ink-3);margin:22px 0 4px;break-after:avoid}.list-surface .tax-letter:first-child{margin-top:0}.list-surface .tax-row{display:flex;align-items:baseline;gap:10px;padding:5px 0;break-inside:avoid}.list-surface .tax-row a{font-family:var(--h-font);font-size:15px;font-weight:500;color:var(--h-ink);transition:color .15s ease}.list-surface .tax-row a:hover,.list-surface .tax-row a:focus-visible{color:var(--h-accent)}.list-surface .tax-dots{flex:1;min-width:12px;border-bottom:1px dotted var(--h-line-strong);transform:translateY(-4px)}.list-surface .tax-count{font-family:var(--h-font);font-size:12px;color:var(--h-ink-3);font-variant-numeric:tabular-nums}@media(max-width:767px){.list-surface .tax-index{columns:1}.list-surface .tax-row a{font-size:14px}}.not-found-surface .nf{max-width:760px}.not-found-surface .nf-eyebrow{font-family:var(--h-font);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--h-accent);margin:0}.not-found-surface .nf-title{font-family:var(--h-font);font-size:30px;font-weight:700;line-height:1.14;letter-spacing:-.022em;color:var(--h-ink);margin:14px 0 0}.not-found-surface .nf-asked{font-family:var(--h-prose);font-size:16px;line-height:1.6;color:var(--h-ink-2);margin:14px 0 0}.not-found-surface .nf-path{font-family:var(--h-mono);font-size:14px;background:var(--h-fill);border:1px solid var(--h-line);border-radius:6px;padding:2px 7px;color:var(--h-ink);word-break:break-all}.not-found-surface .nf-countline{margin-top:26px;padding:9px 0;border-top:1px solid var(--h-ink);border-bottom:1px solid var(--h-line);font-family:var(--h-font);font-size:12px;color:var(--h-ink-3);font-variant-numeric:tabular-nums}.not-found-surface .nf-list{display:flex;flex-direction:column}.not-found-surface .nf-match{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--h-line);transition:background .15s ease}.not-found-surface .nf-match:hover,.not-found-surface .nf-match:focus-visible{background:var(--h-accent-soft)}.not-found-surface .nf-thumb{width:96px;height:56px;flex-shrink:0;display:block;border-radius:8px;border:1px solid var(--h-line);background:var(--h-fill);object-fit:cover}.not-found-surface .nf-match-body{display:flex;flex-direction:column;gap:6px;min-width:0}.not-found-surface .nf-match-title{font-family:var(--h-font);font-size:16px;font-weight:600;line-height:1.3;letter-spacing:-.012em;color:var(--h-ink)}.not-found-surface .nf-match-meta{font-size:12px;color:var(--h-ink-3);font-variant-numeric:tabular-nums}.not-found-surface .nf-match-why{margin-left:auto;font-family:var(--h-mono);font-size:11.5px;color:var(--h-ink-3);white-space:nowrap}.not-found-surface .nf-search{margin:0}.not-found-surface .nf-field{display:flex;align-items:center;gap:10px;background:var(--h-sheet);border:1px solid var(--h-line-strong);border-radius:10px;padding:4px 6px 4px 16px;box-shadow:var(--h-e1);transition:border-color .15s ease,box-shadow .15s ease}.not-found-surface .nf-field:focus-within{border-color:var(--h-accent);box-shadow:0 0 0 3px var(--h-accent-soft)}.not-found-surface .nf-field input{flex:1;min-width:0;border:0;background:0 0;font-family:var(--h-font);font-size:14px;color:var(--h-ink);padding:10px 0;outline:none}.not-found-surface .nf-field button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border:0;border-radius:var(--h-r-control);background:var(--h-accent);color:var(--h-accent-ink);cursor:pointer;transition:filter .15s ease}.not-found-surface .nf-field button:hover{filter:brightness(1.08)}.not-found-surface .nf-field button svg{width:16px;height:16px}.not-found-surface .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:767px){.not-found-surface .nf-title{font-size:24px}.not-found-surface .nf-match-why{display:none}.not-found-surface .nf-thumb{width:72px;height:48px}}.not-found-surface .reading-progress-bar{display:none}.use-surface .use{max-width:1060px}.use-surface .use-title{font-family:var(--h-font);font-size:30px;font-weight:700;line-height:1.16;letter-spacing:-.02em;margin:0;color:var(--h-ink)}.use-surface .use-said{margin:12px 0 0;font-family:var(--h-prose);font-size:16px;line-height:1.5;color:var(--h-ink-2);max-width:66ch}.use-surface .use-count{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px;padding:8px 0;border-top:1px solid var(--h-ink);border-bottom:1px solid var(--h-line);font-family:var(--h-font);font-size:12px;color:var(--h-ink-3);font-variant-numeric:tabular-nums}.use-surface .machine{margin-top:26px}.use-surface .mhead{display:flex;align-items:baseline;gap:14px;padding-bottom:9px;border-bottom:1px solid var(--h-ink)}.use-surface .mhead h2{font-family:var(--h-font);font-size:20px;font-weight:700;letter-spacing:-.018em;margin:0;color:var(--h-ink)}.use-surface .mhead .platform{font-family:var(--h-mono);font-size:11.5px;color:var(--h-ink-3)}.use-surface .mhead .n{margin-left:auto;font-size:12px;color:var(--h-ink-3);font-variant-numeric:tabular-nums}.use-surface .tools{display:grid;grid-template-columns:1fr 1fr;column-gap:44px}.use-surface .tool{display:grid;grid-template-columns:232px minmax(0,1fr);gap:4px 12px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--h-line)}.use-surface .tool .name{font-family:var(--h-font);font-size:13px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.use-surface .tool .name a{color:var(--h-ink);text-decoration:none}.use-surface .tool .name a:hover,.use-surface .tool .name a:focus-visible{color:var(--h-accent);text-decoration:underline;text-underline-offset:3px}.use-surface .tool .line{font-family:var(--h-prose);font-size:12.5px;line-height:1.45;color:var(--h-ink-2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.use-surface .tool .aside{grid-column:2;font-family:var(--h-prose);font-style:italic;font-size:12.5px;line-height:1.5;color:var(--h-ink-3)}@media(max-width:1023px){.use-surface .tools{grid-template-columns:minmax(0,1fr)}}@media(max-width:767px){.use-surface .use-title{font-size:24px}.use-surface .tool{grid-template-columns:minmax(0,1fr);gap:2px}.use-surface .tool .aside{grid-column:1}}.garden-surface .garden-head{margin-bottom:24px}.garden-surface .garden-title{font-family:var(--h-font);font-size:30px;font-weight:700;line-height:1.16;letter-spacing:-.02em;margin:0;color:var(--h-ink)}.garden-surface .garden-standfirst{font-family:var(--h-prose);font-size:18px;line-height:1.5;color:var(--h-ink-2);margin:12px 0 0;max-width:62ch}.garden-surface .garden-count{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px;padding:10px 0;border-top:1px solid var(--h-ink);border-bottom:1px solid var(--h-line);font-size:12px;color:var(--h-ink-3);font-variant-numeric:tabular-nums}.garden-surface .garden-count .sep{color:var(--h-line-strong)}.garden-surface .garden-empty{background:var(--h-sheet);border-radius:var(--h-r-panel);box-shadow:var(--h-e1);padding:34px 30px}.garden-surface .garden-empty h2{font-family:var(--h-font);font-size:15px;font-weight:600;color:var(--h-ink);margin:0 0 8px}.garden-surface .garden-empty p{font-size:15px;line-height:1.6;color:var(--h-ink-2);margin:0;max-width:62ch}.garden-surface .garden-columns{display:grid;grid-template-columns:190px minmax(0,1fr);gap:34px;align-items:start;margin-top:28px}.garden-surface .garden-index-title{font-family:var(--h-font);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--h-ink-3);margin:0;padding-bottom:9px;border-bottom:1px solid var(--h-ink)}.garden-surface .garden-index-row{display:flex;align-items:baseline;gap:10px;padding:8px 0;border-bottom:1px solid var(--h-line);scroll-margin-top:28px}.garden-surface .garden-index-row:target .garden-index-name{color:var(--h-accent);font-weight:600}.garden-surface .garden-index-name{font-family:var(--h-font);font-size:13px;color:var(--h-ink-2)}.garden-surface .garden-index-n{margin-left:auto;font-size:11px;color:var(--h-ink-3);font-variant-numeric:tabular-nums}.garden-surface .garden-ledger{background:var(--h-sheet);border-radius:var(--h-r-panel);box-shadow:var(--h-e1);padding:8px 24px 12px}.garden-surface .garden-ledger table{width:100%;border-collapse:collapse}.garden-surface .garden-ledger thead th{font-family:var(--h-font);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--h-ink-3);text-align:left;padding:12px 0 10px;border-bottom:1px solid var(--h-line-strong)}.garden-surface .garden-ledger thead th:last-child,.garden-surface .garden-ledger tbody td:last-child{text-align:right}.garden-surface .garden-ledger tbody tr{position:relative}.garden-surface .garden-ledger tbody td{padding:13px 0;border-bottom:1px solid var(--h-line);font-family:var(--h-font);font-size:12px;color:var(--h-ink-3);vertical-align:baseline}.garden-surface .garden-ledger tbody tr:last-child td{border-bottom:none}.garden-surface .garden-ledger .cell-note a{font-size:15px;font-weight:600;color:var(--h-ink);transition:color .15s ease}.garden-surface .garden-ledger .cell-note a::after{content:"";position:absolute;inset:0}.garden-surface .garden-ledger tbody tr:hover .cell-note a,.garden-surface .garden-ledger tbody tr:focus-within .cell-note a{color:var(--h-accent)}.garden-surface .garden-ledger .cell-state{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--h-ink-2)}.garden-surface .garden-ledger .cell-tended{color:var(--h-ink-2);font-variant-numeric:tabular-nums}.garden-surface .garden-ledger tr.is-fresh .cell-tended{color:var(--h-accent)}@media(max-width:1023px){.garden-surface .garden-columns{grid-template-columns:minmax(0,1fr);gap:26px}.garden-surface .garden-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}.garden-surface .garden-index-title{grid-column:1/-1}}@media(max-width:767px){.garden-surface .garden-title{font-size:24px}.garden-surface .garden-standfirst{font-size:16.5px}.garden-surface .garden-ledger{padding:2px 18px 6px}.garden-surface .garden-ledger thead{display:none}.garden-surface .garden-ledger tbody tr{display:grid;grid-template-columns:minmax(0,1fr)auto;column-gap:12px;row-gap:4px;padding:14px 0;border-bottom:1px solid var(--h-line)}.garden-surface .garden-ledger tbody tr:last-child{border-bottom:none}.garden-surface .garden-ledger tbody td{display:block;padding:0;border-bottom:none}.garden-surface .garden-ledger tbody tr:last-child td{border-bottom:none}.garden-surface .garden-ledger .cell-note{grid-column:1/-1}.garden-surface .garden-ledger .cell-state{grid-column:1}.garden-surface .garden-ledger .cell-topics{grid-column:2;text-align:right}.garden-surface .garden-ledger .cell-tended{grid-column:1;color:var(--h-ink-3);font-size:11px}}