/* Shared life records use the same charcoal surfaces and lime actions as the game. */
.intro-living-counters { min-width:0; margin:24px 0; padding:20px 0; border-top:1px solid var(--border,#49494f); border-bottom:1px solid var(--border,#49494f); }
.intro-counter-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.intro-counter-item { display:flex; min-width:0; flex-direction:column; gap:8px; }
.intro-counter-number { color:var(--ink,#f4f4f2); font:720 clamp(28px,4vw,44px)/1.1 system-ui,sans-serif; font-variant-numeric:tabular-nums; letter-spacing:-.045em; overflow-wrap:anywhere; }
.intro-counter-label { color:var(--muted,#b9b9c2); font-size:12px; line-height:1.65; word-break:keep-all; overflow-wrap:anywhere; }
.intro-counter-note,.intro-counter-status,.intro-counter-totals { margin:12px 0 0; color:var(--muted,#b9b9c2); font-size:11px; line-height:1.7; overflow-wrap:anywhere; }
.intro-counter-status { margin-top:4px; }
.intro-counter-totals { font-variant-numeric:tabular-nums; }
.intro-living-counters[data-counter-state=error] .intro-counter-status { color:var(--ochre,#e1c885); }
.records-screen { width:100%; min-width:0; padding:30px 0 56px; color:var(--ink,#f4f4f2); }
.records-screen [hidden],.intro-living-counters [hidden] { display:none!important; }
.records-heading,.records-screen .section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:20px; }
.records-heading h1,.records-screen h1 { margin:0; font-size:clamp(25px,4vw,36px); letter-spacing:-.04em; line-height:1.35; }
.records-description,.records-note,.records-status { color:var(--muted,#b9b9c2); font-size:13px; line-height:1.8; margin:12px 0; overflow-wrap:anywhere; }
.records-toolbar,.records-filters,.record-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:16px 0; }
.records-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; }
.records-tabs button,.records-filters button { min-height:44px; border:1px solid var(--border,#49494f); border-radius:4px; padding:10px 16px; background:var(--panel,#252527); color:var(--ink,#f4f4f2); font:inherit; cursor:pointer; }
.records-tabs button[aria-pressed=true]:not([aria-selected]),.records-tabs button[aria-selected=true] { background:var(--accent,#c4ff00); color:#171719; border-color:var(--accent,#c4ff00); }
.records-list,.records-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; list-style:none; margin:22px 0; padding:0; }
.record-card { min-width:0; margin:0; padding:22px; background:var(--panel,#252527); border:1px solid var(--border,#49494f); border-radius:5px; overflow-wrap:anywhere; }
.record-card h2,.record-card h3 { margin:0; color:var(--ink,#f4f4f2); font-size:20px; line-height:1.5; letter-spacing:-.025em; }
.record-meta { display:flex; flex-wrap:wrap; gap:5px 12px; margin:8px 0 14px; color:var(--muted,#b9b9c2); font-size:11px; line-height:1.7; }
.record-story,.record-message { font-size:13px; line-height:1.85; white-space:pre-wrap; overflow-wrap:anywhere; }
.record-story { color:#d4d4da; }
.record-message { margin:16px 0; padding:14px 16px; border-left:2px solid var(--accent,#c4ff00); background:var(--raised,#303033); color:var(--ink,#f4f4f2); }
.record-author,.record-date,.record-counts { color:var(--muted,#b9b9c2); font-size:11px; line-height:1.6; }
.record-counts { font-variant-numeric:tabular-nums; }
.record-cover { display:block; width:100%; height:auto; max-height:260px; object-fit:cover; border-radius:3px; background:var(--paper,#171719); image-rendering:pixelated; }
.records-empty,.records-error { grid-column:1/-1; margin:20px 0; padding:32px 22px; border:1px solid var(--border,#49494f); background:var(--panel,#252527); color:var(--muted,#b9b9c2); font-size:13px; line-height:1.8; }
.records-error { border-color:var(--ochre,#e1c885); }
.records-screen button,.records-screen input,.records-screen select,.records-screen textarea { max-width:100%; }
.records-screen input,.records-screen select,.records-screen textarea { min-width:0; border:1px solid var(--border,#49494f); border-radius:4px; padding:11px 12px; background:var(--paper,#171719); color:var(--ink,#f4f4f2); font:inherit; }
.records-screen textarea { width:100%; resize:vertical; line-height:1.8; }
.records-screen button:focus-visible,.records-screen input:focus-visible,.records-screen textarea:focus-visible,.records-screen select:focus-visible { outline:2px solid var(--accent,#c4ff00); outline-offset:3px; }
.records-screen .button { min-height:44px; }
.records-screen a { color:#d3f787; overflow-wrap:anywhere; text-underline-offset:3px; }
.records-pagination { display:flex; justify-content:center; gap:12px; margin-top:24px; }
.record-comments { margin-top:18px; border-top:1px solid var(--border,#49494f); padding-top:16px; }
.record-comment { padding:12px 0; border-bottom:1px solid var(--border,#49494f); overflow-wrap:anywhere; }
.record-comment p { margin:6px 0 0; font-size:13px; line-height:1.8; white-space:pre-wrap; }
.intro-record-links { display:flex; flex-wrap:wrap; gap:4px 16px; margin-top:16px; }
.intro-record-links .text-button { min-height:44px; font-size:12px; }
.records-toolbar { justify-content:space-between; }
.records-toolbar .records-tabs { margin:0; }
.records-toolbar>label { display:flex; align-items:center; gap:10px; color:var(--muted,#b9b9c2); font-size:12px; min-width:0; }
.records-toolbar select { min-height:44px; max-width:180px; }
#recordsStatus,#recordPublishStatus { min-height:1.7em; color:var(--muted,#b9b9c2); font-size:12px; line-height:1.7; overflow-wrap:anywhere; }
.record-detail { margin-top:24px; padding:24px; border:1px solid var(--border,#49494f); background:var(--panel,#252527); border-radius:5px; min-width:0; overflow-wrap:anywhere; }
.record-detail>h3 { font-size:24px; letter-spacing:-.035em; line-height:1.5; margin:18px 0 10px; }
.record-detail>p { font-size:13px; line-height:1.85; }
.record-note { color:var(--muted,#b9b9c2); font-size:13px; line-height:1.85; white-space:pre-wrap; overflow-wrap:anywhere; }
.record-card>.record-note,.record-detail>.record-note { padding:12px 14px; background:var(--raised,#303033); border-left:2px solid var(--accent,#c4ff00); color:var(--ink,#f4f4f2); }
.record-metrics { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:10px 16px; margin:20px 0; padding:16px 0; border-top:1px solid var(--border,#49494f); border-bottom:1px solid var(--border,#49494f); font-size:12px; line-height:1.75; }
.record-metrics dt { color:var(--muted,#b9b9c2); }
.record-metrics dd { margin:0; color:var(--ink,#f4f4f2); overflow-wrap:anywhere; }
.record-events { padding-left:20px; margin:20px 0; font-size:13px; line-height:1.8; }
.record-events>li { padding:12px 0 12px 3px; border-bottom:1px solid var(--border,#49494f); }
.record-events strong { color:var(--ink,#f4f4f2); font-weight:650; }
.record-events p { margin:7px 0 0; color:#d4d4da; font-size:12px; line-height:1.85; }
.record-events .record-meta { display:inline; margin:0; font-size:11px; }
.record-share-link { flex:1 1 220px; width:100%; font-size:12px!important; min-height:44px; }
.ending-record-share { margin:24px 4px; padding:20px; border:1px solid var(--border,#49494f); background:var(--panel,#252527); border-radius:5px; }
.ending-record-share h2 { margin:0 0 12px; font-size:19px; letter-spacing:-.025em; }
.ending-record-share>p { color:var(--muted,#b9b9c2); font-size:13px; line-height:1.8; }
.record-publish-dialog { width:calc(100% - 24px); max-width:600px; max-height:calc(100dvh - 32px); padding:0; border:1px solid var(--border,#49494f); border-radius:7px; background:var(--panel,#252527); color:var(--ink,#f4f4f2); box-shadow:0 18px 70px #0007; overflow:auto; }
.record-publish-dialog::backdrop { background:#08080be0; }
.record-publish-dialog .dialog-heading { background:var(--panel,#252527); }
.record-publish-dialog .dialog-heading h2 { min-width:0; font-size:20px; line-height:1.5; overflow-wrap:anywhere; }
.record-form { display:flex; flex-direction:column; gap:18px; padding:22px; }
.record-form>label { display:flex; flex-direction:column; gap:8px; font-size:13px; line-height:1.7; }
.record-form>label>.caption { color:var(--muted,#b9b9c2); font-size:11px; }
.record-form input:not([type=checkbox]),.record-form textarea,.record-comment-form input,.record-comment-form textarea { width:100%; min-width:0; padding:12px; border:1px solid var(--border,#49494f); border-radius:4px; background:var(--paper,#171719); color:var(--ink,#f4f4f2); font:inherit; }
.record-form textarea,.record-comment-form textarea { resize:vertical; line-height:1.8; }
.record-form input:focus-visible,.record-form textarea:focus-visible,.record-form button:focus-visible { outline:2px solid var(--accent,#c4ff00); outline-offset:3px; }
.record-form .record-consent { display:grid; grid-template-columns:20px minmax(0,1fr); align-items:start; gap:10px; color:var(--muted,#b9b9c2); }
.record-consent input { width:18px; height:18px; margin:3px 0 0; accent-color:var(--accent,#c4ff00); }
.record-publish-preview { border-left:2px solid var(--accent,#c4ff00); background:var(--raised,#303033); padding:15px; font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
.record-publish-preview h3 { margin:0 0 8px; font-size:17px; line-height:1.5; }
.record-publish-preview p { margin:6px 0; }
.record-form .record-actions { margin:0; gap:10px; }
.record-form .record-actions .button { flex:1 1 160px; min-height:44px; }
.record-form>.caption { margin:0; font-size:11px; line-height:1.8; }
.record-comment-form { display:flex; flex-direction:column; gap:10px; margin-top:18px; }
@media(max-width:699px) { .records-list,.records-grid { grid-template-columns:minmax(0,1fr); } .records-screen { padding-top:22px; } .record-card { padding:18px; } .record-detail { padding:18px; } }
@media(max-width:419px) { .record-form { padding:17px; gap:16px; } .record-publish-dialog .dialog-heading { padding:15px 17px; } .record-publish-dialog .dialog-heading h2 { font-size:18px; } .records-toolbar { align-items:stretch; gap:16px; } .records-toolbar .records-tabs { width:100%; } }
@media(max-width:359px) { .intro-counter-grid { gap:14px; } .intro-counter-number { font-size:28px; } .intro-counter-label { font-size:11px; } .records-heading { gap:8px; } .records-heading h1 { font-size:25px; } .records-heading .text-button { font-size:11px; } .records-tabs button { flex:1 1 auto; padding:10px; font-size:12px; } .record-card { padding:15px; } .record-actions>.button { flex:1 1 auto; font-size:12px; } }
.home-public-archive { margin-top:36px; text-align:left; }
.home-public-archive h2 { margin:0; font-size:22px; }
.home-public-archive>p { margin:8px 0 16px; color:var(--muted,#ababaf); font-size:14px; }
.home-archive-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; align-items:stretch; }
.home-archive-card { display:flex; flex-direction:column; gap:8px; width:100%; min-width:0; padding:14px; border:1px solid var(--line,#434347); border-radius:12px; background:var(--panel,#252527); color:var(--ink,#f4f4f2); text-align:left; cursor:pointer; overflow-wrap:anywhere; }
.home-archive-card:hover,.home-archive-card:focus-visible { border-color:var(--accent,#c4ff00); }
.home-archive-art { display:block; position:relative; width:100%; aspect-ratio:2/1; overflow:hidden; border-radius:5px; background:var(--paper,#171719); image-rendering:pixelated; }
.archive-card-art>svg { display:block; width:100%; height:100%; image-rendering:pixelated; }
.archive-card-art.has-unrecorded-scene>svg { height:calc(100% - 18px); padding:8px; }
.archive-scene-unrecorded { display:block; position:absolute; bottom:4px; left:4px; right:4px; color:var(--muted,#ababaf); font-size:9px; line-height:1.3; text-align:center; }
.archive-card-title { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:calc(2.8em + 11px); margin-top:6px; padding-top:10px; border-top:1px solid var(--line,#434347); color:var(--ink,#f4f4f2); font-size:16px; line-height:1.4; letter-spacing:-.025em; overflow-wrap:anywhere; white-space:pre-wrap; }
.record-detail-preview .archive-card-title { display:block; overflow:visible; min-height:0; margin:12px 0 0; padding:0; border:0; font-size:26px; }
.record-detail-preview .archive-card-body { margin:0 0 8px; font-size:13px; line-height:1.85; }
.record-detail-preview .archive-card-name,.record-detail-preview .archive-card-age,.record-detail-preview .archive-card-cause { display:block; overflow:visible; min-height:0; }
.record-detail-preview .archive-card-art { max-height:280px; }
.home-archive-name { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:2.7em; font-size:17px; line-height:1.35; }
.home-archive-age { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow:hidden; min-height:1.6em; font-size:14px; line-height:1.6; }
.home-archive-cause { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:2.9em; color:var(--muted,#ababaf); font-size:13px; line-height:1.45; }
.home-archive-note { margin-top:6px; padding-top:10px; border-top:1px solid var(--line,#434347); font-size:12px; line-height:1.6; font-weight:400; white-space:pre-wrap; }
.home-archive-note.is-empty { color:var(--muted,#ababaf); font-size:12px; }
.archive-card-preview { display:flex; flex-direction:column; gap:8px; width:100%; min-width:0; }
.record-card { display:flex; flex-direction:column; gap:8px; padding:14px; border-radius:12px; }
.record-card>.record-meta { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:3.4em; margin:0; font-size:12px; }
.record-card>.button { margin-top:auto; }
.home-public-archive>.button { width:100%; margin-top:16px; }
#homeArchiveStatus:empty { display:none; }
#homeArchiveStatus .text-button { display:block; margin-top:8px; }
@media(max-width:419px) { .home-archive-cards { gap:7px; } .home-archive-card { padding:10px 8px; gap:6px; } .home-archive-art { aspect-ratio:1.5/1; } .home-archive-title { font-size:16px; } .home-archive-name { font-size:14px; } .home-archive-age,.home-archive-cause { font-size:12px; } .home-archive-note { font-size:11px; line-height:1.55; } }
/* OPS017: compact shared previews, natural titles and acknowledged heart state. */
.home-archive-cards { grid-template-columns:repeat(var(--archive-preview-count,3),minmax(0,1fr)); gap:8px; }
.home-archive-card,.record-card { padding:10px; gap:5px; }
.archive-card-preview { gap:5px; }
.archive-card-preview .archive-card-title { display:block; -webkit-line-clamp:unset; height:auto; min-height:2.6em; max-height:2.6em; margin:0; padding:0; border:0; color:var(--accent,#c4ff00); font-size:18px; font-weight:800; line-height:1.3; letter-spacing:0; white-space:pre-wrap; overflow:hidden; overflow-wrap:anywhere; word-break:normal; text-overflow:clip; }
.archive-card-name-row { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:1px 5px; min-width:0; }
.archive-card-name-row .archive-card-name { display:block; min-width:0; min-height:0; margin:0; font-size:14px; line-height:1.4; font-weight:600; -webkit-line-clamp:unset; }
.archive-card-probability { margin-left:auto; font-size:13px; font-weight:700; line-height:1.4; font-variant-numeric:tabular-nums; white-space:nowrap; }
.archive-card-age,.archive-card-cause { display:block; min-height:0; margin:0; font-size:12px; line-height:1.4; -webkit-line-clamp:unset; }
.archive-card-art { aspect-ratio:2.4/1; }
.record-card>.record-meta { display:block; min-height:0; margin:0; font-size:11px; line-height:1.4; }
.record-card>.record-meta:empty,.record-remember-status:empty { display:none; }
.record-card-actions { display:flex; align-items:flex-end; flex-wrap:nowrap; gap:6px; margin-top:2px; }
.record-card-actions>.button { flex:1 1 auto; min-width:44px; min-height:44px; padding:7px 5px; font-size:12px; }
.record-memory-action { display:flex; flex:0 0 44px; flex-direction:column; align-items:center; gap:1px; width:44px; }
.record-memory-count { display:block; font-size:12px; font-weight:700; line-height:1.2; font-variant-numeric:tabular-nums; color:var(--accent,#c4ff00); white-space:nowrap; }
.record-memory-action>.record-remember { display:flex; align-items:center; justify-content:center; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; border:0; background:transparent; }
.record-remember svg { display:block; width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; }
.record-remember[aria-pressed=true] { color:var(--accent,#c4ff00); }
.record-remember[aria-pressed=true] svg { fill:currentColor; }
.record-remember[aria-busy=true] svg { opacity:.6; }
.record-remember:focus-visible { outline:2px solid var(--accent,#c4ff00); outline-offset:1px; }
.record-remember-status { margin:0; color:var(--muted,#b9b9c2); font-size:11px; line-height:1.4; }
.records-sort { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
.records-sort>button { flex:0 1 auto; min-height:44px; padding:10px 14px; }
.records-sort>button[aria-pressed=true] { background:var(--accent,#c4ff00); color:#171719; border-color:var(--accent,#c4ff00); }
.home-archive-card { cursor:default; }
.home-archive-card .record-card-actions>.button { flex-basis:auto; }
.record-detail-preview .archive-card-title { max-height:none; height:auto; min-height:0; font-size:26px; line-height:1.4; overflow:visible; }
.record-detail-preview .archive-card-art { aspect-ratio:2/1; }
.record-detail-preview .archive-card-name,.record-detail-preview .archive-card-age,.record-detail-preview .archive-card-cause { font-size:15px; line-height:1.5; }
#recordTitleCount { font-variant-numeric:tabular-nums; }
#recordTitle[aria-invalid=true] { border-color:var(--ochre,#e1c885); }
@media(max-width:699px) {
  .home-archive-cards { gap:4px; }
  .home-archive-card { padding:5px 2px; gap:4px; }
  .home-archive-card .archive-card-preview { gap:4px; }
  .home-archive-card .archive-card-title { font-size:clamp(11px,3.4vw,14px); }
  .home-archive-card .archive-card-name { font-size:11px; line-height:1.3; }
  .home-archive-card .archive-card-probability { font-size:clamp(9px,2.85vw,11px); }
  .home-archive-card .archive-card-age,.home-archive-card .archive-card-cause { font-size:11px; line-height:1.3; }
  .home-archive-card .archive-card-art { aspect-ratio:1.8/1; }
  .home-archive-card .archive-scene-unrecorded { font-size:8px; }
  .home-archive-card .record-card-actions { gap:0; }
  .home-archive-card .record-card-actions>.button { padding:6px 0; font-size:10px; }
  .home-archive-card .record-memory-count { font-size:11px; }
  .home-archive-card .record-remember-status { font-size:10px; }
  .records-sort>button { flex:1 1 90px; padding:9px 8px; font-size:12px; }
}
/* Human follow-up: archive previews stay two across, including small screens. */
.records-list,.records-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.record-card { padding:7px 6px; gap:4px; }
.record-card .archive-card-preview { gap:4px; }
.record-card .archive-card-art { aspect-ratio:2.4/1; }
.record-card .archive-card-title { font-size:16px; }
.record-card .archive-card-name-row { gap:1px 4px; }
.record-card .archive-card-name { font-size:12px; line-height:1.3; }
.record-card .archive-card-probability { font-size:11px; }
.record-card .archive-card-age,.record-card .archive-card-cause { font-size:11px; line-height:1.3; }
.record-card .record-card-actions { gap:4px; }
.record-card .record-card-actions>.button { padding:6px 2px; font-size:11px; }
@media(max-width:699px) { .record-card .archive-card-title { font-size:14px; } .record-card .archive-card-art { aspect-ratio:1.8/1; } }

/* OPS023: shared readable mobile rows; actual third home record moves to the next row. */
@media(max-width:540px) {
  .home-archive-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .home-archive-card,.record-card { padding:7px 6px; gap:4px; }
  .home-archive-card .archive-card-preview.is-preview,.record-card .archive-card-preview.is-preview { display:grid; grid-template-columns:minmax(0,1fr); gap:4px; }
  .home-archive-card .is-preview .archive-card-title,.record-card .is-preview .archive-card-title { height:2.6em; min-height:2.6em; max-height:2.6em; font-size:14px; line-height:1.3; letter-spacing:0; text-overflow:clip; }
  .home-archive-card .is-preview .archive-card-name-row,.record-card .is-preview .archive-card-name-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:4px; height:5.2em; font-size:12px; line-height:1.3; }
  .home-archive-card .is-preview .archive-card-name,.record-card .is-preview .archive-card-name { width:auto; min-width:0; min-height:0; font-size:12px; line-height:1.3; overflow:visible; white-space:normal; overflow-wrap:anywhere; word-break:normal; }
  .home-archive-card .is-preview .archive-card-probability,.record-card .is-preview .archive-card-probability { align-self:start; justify-self:end; margin:0; font-size:11px; line-height:1.3; white-space:nowrap; }
  .home-archive-card .is-preview .archive-card-art,.record-card .is-preview .archive-card-art { aspect-ratio:1.8/1; }
  .home-archive-card .archive-scene-unrecorded,.record-card .archive-scene-unrecorded { font-size:9px; line-height:1.3; }
  .home-archive-card .is-preview .archive-card-age,.record-card .is-preview .archive-card-age { height:1.3em; min-height:1.3em; font-size:12px; line-height:1.3; }
  .home-archive-card .is-preview .archive-card-cause,.record-card .is-preview .archive-card-cause { height:2.6em; min-height:2.6em; max-height:2.6em; font-size:12px; line-height:1.3; overflow:hidden; white-space:normal; overflow-wrap:anywhere; text-overflow:clip; }
  .home-archive-card .record-card-actions,.record-card .record-card-actions { align-items:flex-end; gap:4px; margin-top:2px; }
  .home-archive-card .record-card-actions>.button,.record-card .record-card-actions>.button { min-width:44px; min-height:44px; padding:6px 2px; font-size:11px; }
  .home-archive-card .record-memory-count,.record-card .record-memory-count { font-size:12px; line-height:1.2; }
}

/* OPS027: four real home records maximum, two columns, natural shared row heights. */
.home-archive-cards { grid-template-columns:repeat(var(--archive-preview-count,2),minmax(0,1fr)); column-gap:8px; row-gap:4px; }
.home-archive-cards,.records-list,.records-grid { grid-auto-rows:auto; }
.home-archive-card,.record-card { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:subgrid; grid-row:span 8; row-gap:4px; }
.home-archive-card .archive-card-preview.is-preview,.record-card .archive-card-preview.is-preview { display:contents; }
.home-archive-card .is-preview .archive-card-title,.record-card .is-preview .archive-card-title { grid-row:1; }
.home-archive-card .is-preview .archive-card-name-row,.record-card .is-preview .archive-card-name-row { grid-row:2; height:auto; min-height:0; align-self:start; }
.home-archive-card .is-preview .archive-card-art,.record-card .is-preview .archive-card-art { grid-row:3; aspect-ratio:1.6/1; width:100%; }
.home-archive-card .is-preview .archive-card-age,.record-card .is-preview .archive-card-age { grid-row:4; }
.home-archive-card .is-preview .archive-card-cause,.record-card .is-preview .archive-card-cause { grid-row:5; }
.home-archive-card .record-card-actions,.record-card .record-card-actions { grid-row:6; margin-top:0; }
.record-card>.record-meta { grid-row:7; }
.home-archive-card>.record-remember-status,.record-card>.record-remember-status { grid-row:8; }
@media(max-width:540px) {
  .home-archive-cards { grid-template-columns:repeat(var(--archive-preview-count,2),minmax(0,1fr)); }
  .home-archive-card .is-preview .archive-card-name-row,.record-card .is-preview .archive-card-name-row { height:auto; min-height:0; }
  .home-archive-card .is-preview .archive-card-art,.record-card .is-preview .archive-card-art { aspect-ratio:1.6/1; }
}

/* OPS030: explicit selection and confirmed deletion of local records only. */
.local-record-selection { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin:12px 0; }
.local-record-selection[hidden] { display:none; }
.local-record-selected-count { color:var(--muted,#b9b9c2); font-size:13px; font-variant-numeric:tabular-nums; }
.local-record-selection>.button { min-height:44px; font-size:13px; padding:8px 12px; }
.local-record-select { display:inline-flex; flex:0 0 auto; align-items:center; gap:4px; min-width:44px; min-height:44px; padding:2px; color:var(--ink,#f4f4f2); font-size:11px; cursor:pointer; }
.local-record-select input { width:18px; height:18px; margin:0; accent-color:var(--accent,#c4ff00); }
.local-record-select:focus-within { outline:2px solid var(--accent,#c4ff00); outline-offset:1px; }
.local-record-delete-dialog { width:calc(100% - 24px); max-width:440px; padding:20px; border:1px solid var(--border,#49494f); border-radius:7px; background:var(--panel,#252527); color:var(--ink,#f4f4f2); }
.local-record-delete-dialog::backdrop { background:#08080be0; }
.local-record-delete-dialog h2 { margin:0 0 12px; font-size:20px; line-height:1.5; }
.local-record-delete-dialog p { margin:12px 0; font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.local-record-delete-dialog .record-actions { margin-top:20px; }
.local-record-delete-dialog .button { min-height:44px; }
.local-record-delete-error { color:var(--ochre,#e1c885); }
.local-record-delete-error:empty { display:none; }
