:root {
  color-scheme: light;
  --ink:#17211b;
  --muted:#647067;
  --paper:#f5f3ed;
  --panel:#fffdf8;
  --line:#d9d5c9;
  --green:#315c47;
  --green-dark:#234735;
  --green-soft:#e2eee7;
  --amber:#a65f22;
  --red:#8d3b32;
  --blue:#3d5f73;
  font:16px/1.5 Inter,ui-sans-serif,system-ui,sans-serif;
}

* { box-sizing:border-box; }
[hidden] { display:none !important; }
html { min-width:0; }
body { margin:0; min-width:0; overflow-x:hidden; background:var(--paper); color:var(--ink); }
.skip { position:absolute; left:-999px; top:0; background:#fff; padding:.7rem 1rem; z-index:5; }
.skip:focus { left:.75rem; top:.75rem; }

.topbar {
  min-height:64px;
  display:flex;
  gap:1rem;
  align-items:center;
  padding:.65rem 1.25rem;
  background:#18281f;
  color:#fff;
}
.brand { color:#fff; text-decoration:none; font-family:Georgia,serif; font-size:1.35rem; margin-right:auto; white-space:nowrap; }
.brand span { display:inline-grid; place-items:center; width:2rem; height:2rem; margin-right:.35rem; border:1px solid #86a891; border-radius:50%; }
.authority { min-width:0; font-size:.78rem; color:#bed1c3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pulse { display:inline-block; width:.55rem; height:.55rem; border-radius:50%; background:#7fd39c; margin-right:.4rem; }
.identity { width:auto; display:flex; gap:.45rem; align-items:center; color:#bed1c3; font-size:.78rem; white-space:nowrap; }
.identity select { width:auto; min-width:10rem; padding:.35rem .5rem; }

select,input,textarea,button { font:inherit; }
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible {
  outline:3px solid #d4963e;
  outline-offset:2px;
}
select,input,textarea { width:100%; min-width:0; border:1px solid #aaa79e; border-radius:6px; background:#fff; padding:.58rem .68rem; color:var(--ink); }

.layout { display:block; min-height:calc(100vh - 64px); }
.layout > nav { position:sticky; top:0; z-index:4; display:flex; gap:.25rem; min-width:0; padding:.55rem clamp(.75rem,4vw,3rem); border-bottom:1px solid var(--line); background:#edeae1f5; backdrop-filter:blur(10px); overflow-x:auto; }
.layout > nav a { display:block; flex:0 0 auto; padding:.55rem .75rem; margin:0; border-radius:5px; color:#39453e; text-decoration:none; white-space:nowrap; }
.layout > nav a:hover,.layout > nav a[aria-current="page"] { background:#dce7df; color:#173c29; }
main { min-width:0; width:100%; max-width:1400px; margin:0 auto; padding:2rem clamp(1rem,4vw,4rem); }
#view { min-width:0; }

h1,h2,h3 { font-family:Georgia,serif; font-weight:500; line-height:1.15; }
h1 { margin:.2rem 0 .5rem; font-size:clamp(2rem,4vw,3.4rem); }
h2 { overflow-wrap:anywhere; }
.page-header { margin-bottom:1.5rem; }
.lede { max-width:720px; margin:.5rem 0 0; color:var(--muted); font-size:1.05rem; }
.eyebrow,.record-details { color:var(--muted); font-size:.74rem; text-transform:uppercase; letter-spacing:.07em; }
.page-actions { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1.25rem; }

.toolbar,.split,.actions,.stats { display:flex; min-width:0; gap:.75rem; flex-wrap:wrap; align-items:end; }
.toolbar { justify-content:space-between; margin:1.25rem 0; }
.split > * { flex:1 1 220px; min-width:0; }
.actions { align-items:center; }
.cards { display:grid; min-width:0; grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr)); gap:1rem; }
.card,.panel,details { min-width:0; background:var(--panel); border:1px solid var(--line); border-radius:9px; padding:1rem; box-shadow:0 2px 8px #2632280b; }
.card { display:flex; flex-direction:column; }
.card h2,.card h3 { margin:.1rem 0 .45rem; }
.card details { margin-top:auto; }
.fact-line { display:flex; flex-wrap:wrap; gap:.4rem .9rem; color:#465149; font-size:.9rem; }
.badge { display:inline-block; border-radius:99px; padding:.2rem .55rem; font-size:.78rem; background:#e8e5dc; }
.badge.Proposed { background:#fff0d8; color:#7a4a16; }
.badge.Accepted { background:var(--green-soft); color:var(--green); }
.badge.Conflicted { background:#f6e6dc; color:var(--amber); }
.badge.Rejected { background:#f5dfdc; color:var(--red); }
.badge.Undecided { background:#e4eaf0; color:var(--blue); }

button,.button { display:inline-block; max-width:100%; border:0; border-radius:6px; padding:.62rem .9rem; background:var(--green); color:#fff; cursor:pointer; text-decoration:none; text-align:center; }
button:hover,.button:hover { background:var(--green-dark); }
button.secondary,.button.secondary { background:#e6e3da; color:var(--ink); border:1px solid var(--line); }
button.secondary:hover,.button.secondary:hover { background:#dbd7cc; }
button:disabled { opacity:.55; cursor:not-allowed; }

.search-row { display:flex; align-items:end; gap:1rem; margin:0 0 1.25rem; }
.search-field { max-width:34rem; flex:1 1 20rem; }
.search-field input { padding:.72rem .8rem; }
.search-count { margin:0 0 .65rem; color:var(--muted); white-space:nowrap; }
.claim-index { display:grid; gap:.75rem; max-width:76rem; }
.claim-index-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:1rem 2rem; padding:1rem 1.15rem; border:1px solid var(--line); border-radius:8px; background:var(--panel); box-shadow:0 1px 4px #2632280a; }
.claim-index-main { min-width:0; }
.claim-index-main h2 { margin:.15rem 0 .55rem; font-size:clamp(1.05rem,2vw,1.35rem); line-height:1.3; }
.claim-index-main h2 a { color:inherit; text-decoration-thickness:.08em; text-underline-offset:.18em; }
.claim-index-main p:last-child { margin-bottom:0; color:var(--muted); }
.claim-index-meta { display:grid; min-width:12rem; gap:.35rem; justify-items:start; color:var(--muted); font-size:.86rem; }
.secondary-link { margin-top:.25rem; font-weight:700; color:var(--green); }
.claim-row { min-width:0; padding:1rem 1.15rem; border:1px solid var(--line); border-radius:8px; background:var(--panel); box-shadow:0 1px 4px #2632280a; }
.claim-row h2 { margin:.15rem 0 .55rem; font-size:clamp(1.05rem,2vw,1.35rem); line-height:1.3; }
.claim-row .claim-anatomy { display:grid; grid-template-columns:minmax(0,2fr) minmax(14rem,1fr); gap:1rem; }
.claim-row .claim-anatomy h3 { margin:.2rem 0; font:600 .78rem/1.2 Inter,ui-sans-serif,system-ui,sans-serif; text-transform:uppercase; letter-spacing:.05em; color:var(--muted); }
.claim-row details { margin-top:.75rem; box-shadow:none; background:#faf8f2; }
.related-context-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr)); gap:.75rem; }
.related-context-card { padding:1rem; border:1px solid var(--xp-line); background:var(--xp-panel); }
.related-context-card h3 { margin:.15rem 0 .4rem; }
.application-gallery { margin-top:3rem; padding-top:2rem; border-top:1px solid var(--xp-line); }
.author-tools { margin:0 0 1.25rem; background:#efede6; box-shadow:none; }
.author-tools > summary { color:#34473c; font-weight:650; cursor:pointer; }
.author-tools[open] > summary { margin-bottom:1rem; }
.author-tools .actions { align-items:stretch; }
.helper { margin:.25rem 0 0; color:var(--muted); font-size:.86rem; }

.review-list { display:grid; gap:.75rem; }
.review-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1rem; align-items:center; }
.review-item h2 { margin:.25rem 0; font-size:1.2rem; }
.review-item p { margin:.25rem 0; }
.review-item .actions { justify-content:flex-end; }

form { display:grid; grid-template-columns:minmax(0,1fr); min-width:0; gap:.8rem; }
fieldset { display:grid; min-width:0; gap:.8rem; margin:0; padding:1rem; border:1px solid var(--line); border-radius:7px; }
legend { color:var(--green); font-weight:650; padding:0 .35rem; }
label { display:grid; min-width:0; gap:.25rem; color:#465149; font-size:.86rem; }
textarea { min-height:8rem; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:.83rem; }
.program-source { min-height:22rem; }
.modal { width:calc(100% - 2rem); max-width:720px; max-height:calc(100vh - 2rem); overflow-x:hidden; border:0; border-radius:10px; padding:0; box-shadow:0 18px 70px #0005; }
dialog:not([open]) { display:none; }
.modal::backdrop { background:#16201999; }
.modal form { padding:1.4rem; }
.modal header { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.modal header h2 { margin:.2rem 0; }
.icon { flex:0 0 auto; min-width:2.4rem; background:transparent; color:var(--ink); font-size:1.4rem; padding:.25rem; }
.icon:hover { background:#eeeae0; }

.table-wrap { width:100%; max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; }
table { width:100%; border-collapse:collapse; background:var(--panel); border:1px solid var(--line); }
th,td { padding:.7rem; border-bottom:1px solid var(--line); vertical-align:top; text-align:left; }
th { color:var(--muted); font-size:.76rem; text-transform:uppercase; }
code,.mono { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:.78rem; overflow-wrap:anywhere; }
pre { max-width:100%; margin:.75rem 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.technical { max-width:100%; margin-top:.75rem; background:#f6f4ee; box-shadow:none; }
.technical summary { cursor:pointer; }
.assurance-line { border-left:3px solid var(--green); padding:.55rem .7rem; background:#f2f7f2; color:#33463a; font-size:.84rem; }
.assurance-line span { color:var(--muted); }

.trace { list-style:none; padding:0; counter-reset:trace; }
.trace li { min-width:0; counter-increment:trace; border-left:2px solid #a7b8ac; padding:.25rem 0 1rem 1.25rem; margin-left:.5rem; overflow-wrap:anywhere; }
.trace strong { overflow-wrap:anywhere; }
.trace li::before { content:counter(trace); margin-left:-1.9rem; margin-right:.7rem; border-radius:50%; background:#fff; border:1px solid #9dab9f; display:inline-grid; width:1.3rem; height:1.3rem; place-items:center; font-size:.7rem; }
#notice:not(:empty) { border-left:4px solid var(--green); background:#fff; padding:.7rem 1rem; margin-bottom:1rem; }
.error { color:var(--red); }
.empty { color:var(--muted); font-style:italic; }
.dim { color:var(--muted); }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

@media (max-width:900px) {
  .topbar { display:grid; grid-template-columns:auto minmax(0,1fr) auto; }
  .brand { margin-right:0; }
  .authority { grid-column:2; }
  .identity { grid-column:3; grid-row:1 / span 2; }
  .layout > nav { padding-inline:1rem; }
}

@media (max-width:760px) {
  .topbar { min-height:auto; grid-template-columns:minmax(0,1fr) auto; gap:.45rem .75rem; padding:.65rem 1rem; }
  .brand { font-size:1.15rem; }
  .brand span { width:1.75rem; height:1.75rem; }
  .authority { grid-column:1 / -1; grid-row:2; font-size:.72rem; }
  .identity { grid-column:2; grid-row:1; }
  .identity select { min-width:7.5rem; max-width:9rem; }
  .topbar > #session-login,.topbar > #session-logout { grid-column:1 / -1; justify-self:start; }
  .layout { display:block; min-height:0; }
  .layout > nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.25rem; padding:.45rem; border-bottom:1px solid var(--line); overflow:visible; }
  .layout > nav a { display:grid; place-items:center; min-height:2.4rem; margin:0; padding:.42rem .25rem; text-align:center; font-size:.78rem; line-height:1.15; white-space:normal; overflow-wrap:anywhere; }
  .claim-row .claim-anatomy { grid-template-columns:1fr; }
  main { padding:1.25rem 1rem 2rem; }
  .page-header { margin-bottom:1.1rem; }
  .lede { font-size:1rem; }
  .page-actions button,.page-actions .button { width:100%; }
  .search-row { display:block; }
  .search-count { margin-top:.55rem; }
  .author-tools .actions > * { flex:1 1 100%; }
  .review-item { grid-template-columns:1fr; }
  .review-item .actions { justify-content:flex-start; }
  .review-item .actions > * { flex:1 1 auto; }
  .panel { padding:.85rem; }
  .modal { width:calc(100% - 1rem); max-height:calc(100vh - 1rem); }
  .modal form { padding:1rem; }
  .program-source { min-height:18rem; }
}

@media (max-width:420px) {
  .identity { display:grid; gap:.1rem; }
  .identity select { min-width:7rem; max-width:8.25rem; font-size:.82rem; }
  .actions > button,.actions > .button { flex:1 1 8rem; }
}

@media (max-width:340px) {
  .layout > nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (prefers-reduced-motion:no-preference) {
  button,a { transition:background-color .15s,color .15s; }
}


/* Twelve independently authored presentation grammars share one admitted corpus. */
.claimipedia-experience {
  --xp-bg:#f7f3e8;
  --xp-panel:#fffdf8;
  --xp-ink:#1c241f;
  --xp-accent:#315c47;
  --xp-soft:#e2eee7;
  --xp-line:#cfc8b7;
  max-width:none;
  padding:clamp(1rem,4vw,4rem);
  background:
    radial-gradient(circle at 95% 0,var(--xp-soft),transparent 32rem),
    var(--xp-bg);
  color:var(--xp-ink);
}
.experience-nav { display:flex; gap:.35rem; padding:0; border:0; background:transparent; }
.experience-nav a { display:inline-block; border:1px solid var(--xp-line); background:var(--xp-panel); }
.experience-nav a:hover { background:var(--xp-soft); color:var(--xp-ink); }
.experience-hero { max-width:70rem; padding:clamp(1.25rem,4vw,3.5rem) 0 2rem; }
.experience-question { max-width:26ch; margin:.45rem 0 1rem; font:500 clamp(1.45rem,3vw,2.75rem)/1.12 Georgia,serif; color:var(--xp-accent); }
.experience-covenant { max-width:78rem; padding:1rem 1.15rem; border-left:5px solid var(--xp-accent); background:var(--xp-panel); }
.experience-bridge { max-width:58rem; margin:clamp(2rem,5vw,4rem) 0; padding-left:1rem; border-left:1px solid var(--xp-accent); }
.experience-body { margin:2rem 0; }
.experience-modules { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(17rem,100%),1fr)); gap:1rem; }
.experience-module { min-width:0; padding:1.15rem; border:1px solid var(--xp-line); background:var(--xp-panel); }
.experience-neighbours { max-width:58rem; margin:3rem 0 1rem; overflow-wrap:anywhere; word-break:break-word; }
.experience-neighbours li { margin:.65rem 0; }
.experience-footer { margin-top:3rem; padding-top:1rem; border-top:1px solid var(--xp-line); }

/* 01 Civic inquiry: public, plural and deliberately unresolved. */
[data-experience="civic-inquiry"] { --xp-bg:#f4efe3; --xp-panel:#fffaf0; --xp-ink:#29251d; --xp-accent:#7a3e2d; --xp-soft:#ead8bf; --xp-line:#cbb99d; }
[data-experience="civic-inquiry"] .civic-forum { max-width:54rem; padding:1.5rem; border:2px solid var(--xp-accent); background:var(--xp-panel); }
[data-experience="civic-inquiry"] .experience-modules { grid-template-columns:repeat(2,minmax(0,1fr)); }

/* 02 Kenosis: quiet vertical rhythm and marginal gloss. */
[data-experience="contemplative-threshold"] { --xp-bg:#f3f0eb; --xp-panel:#fff; --xp-ink:#29272d; --xp-accent:#704f7f; --xp-soft:#e7deec; --xp-line:#c9c0ce; }
.experience-lectio { max-width:48rem; margin:auto; }
.experience-lectio blockquote { margin:2rem 0; padding:.5rem 0 .5rem 2rem; border-left:2px solid var(--xp-accent); font-family:Georgia,serif; }

/* 03 Spin(2,3): blackboard derivation space. */
[data-experience="mathematical-blackboard"] { --xp-bg:#101b18; --xp-panel:#152621; --xp-ink:#e9f4ec; --xp-accent:#9ee7be; --xp-soft:#20382f; --xp-line:#416558; color-scheme:dark; }
[data-experience="mathematical-blackboard"] a { color:#bcebd0; }
[data-experience="mathematical-blackboard"] .blackboard { padding:1.5rem; border:1px dashed #8bc8a5; background:#0d1614; }
[data-experience="mathematical-blackboard"] code { color:#d5ffe5; font-size:clamp(.82rem,2vw,1.15rem); }
[data-experience="mathematical-blackboard"] .experience-module .eyebrow { color:#bcebd0; }

/* 04 Temple/Sourcery: architectural section and stacked boundaries. */
[data-experience="architecture-cutaway"] { --xp-bg:#eef1f3; --xp-panel:#fff; --xp-ink:#18232b; --xp-accent:#b14c2f; --xp-soft:#dce6ea; --xp-line:#9fadb4; }
.experience-layers { display:grid; gap:.35rem; max-width:68rem; }
.experience-layers section { padding:1.25rem 1.5rem; border:1px solid var(--xp-line); border-left-width:clamp(.4rem,2vw,2rem); background:var(--xp-panel); }
.experience-layers section:nth-child(even) { margin-left:clamp(0rem,4vw,5rem); }

/* 05 WCSS: scenario laboratory with explicit propagation. */
[data-experience="scenario-laboratory"] { --xp-bg:#edf5f4; --xp-panel:#fbffff; --xp-ink:#142c2e; --xp-accent:#007c83; --xp-soft:#cfe9e8; --xp-line:#8cbdbc; }
.scenario-workbench { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; border:1px solid var(--xp-line); background:var(--xp-line); }
.scenario-workbench > div { padding:1.25rem; background:var(--xp-panel); }

/* 06 Super CRM: compact operational cockpit. */
[data-experience="operations-cockpit"] { --xp-bg:#eef2f8; --xp-panel:#fff; --xp-ink:#17223b; --xp-accent:#2453a6; --xp-soft:#dbe6fb; --xp-line:#aebbd4; }
.experience-cockpit th:first-child { width:15rem; color:var(--xp-accent); }
.experience-cockpit tbody tr:nth-child(even) { background:var(--xp-soft); }

/* 07 Lived experience: a route with stations, not a hierarchy. */
[data-experience="pilgrimage-path"] { --xp-bg:#f6f0ea; --xp-panel:#fffaf5; --xp-ink:#35271f; --xp-accent:#9b5b35; --xp-soft:#edddcf; --xp-line:#ceb5a4; }
.experience-sequence { max-width:58rem; list-style:none; padding:0; counter-reset:station; }
.experience-sequence li { counter-increment:station; display:grid; grid-template-columns:3rem minmax(0,1fr); gap:.75rem; padding:1.25rem 0; border-bottom:1px solid var(--xp-line); }
.experience-sequence li::before { content:counter(station); display:grid; place-items:center; width:2.3rem; height:2.3rem; border-radius:50%; background:var(--xp-accent); color:#fff; }
.experience-sequence li span { grid-column:2; }

/* 08 Launch: plural gallery. */
[data-experience="public-threshold"] { --xp-bg:#fff8e8; --xp-panel:#fff; --xp-ink:#27221a; --xp-accent:#a93624; --xp-soft:#ffe1a9; --xp-line:#e3b56e; }
.experience-gallery .cards { grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr)); }
.experience-gallery .card:nth-child(3n+2) { transform:translateY(.8rem); }

/* 09 Five-minute route: terse briefing strip. */
[data-experience="pocket-brief"] { --xp-bg:#f8fbff; --xp-panel:#fff; --xp-ink:#101b2b; --xp-accent:#0066c5; --xp-soft:#dceeff; --xp-line:#9ec6ea; }
[data-experience="pocket-brief"] .experience-sequence { max-width:72rem; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.5rem; }
[data-experience="pocket-brief"] .experience-sequence li { display:block; padding:1rem; border:1px solid var(--xp-line); background:var(--xp-panel); }
[data-experience="pocket-brief"] .experience-sequence li::before { margin-bottom:.7rem; }

/* 10 Thirty-minute route: dossier with controlled disclosure. */
[data-experience="investigation-dossier"] { --xp-bg:#f1efe9; --xp-panel:#fff; --xp-ink:#252525; --xp-accent:#555; --xp-soft:#e4e0d7; --xp-line:#bbb5aa; }
.experience-dossier { max-width:65rem; }
.experience-dossier details { margin:.6rem 0; border-radius:0; box-shadow:none; }
.experience-dossier summary { font:600 1.1rem Georgia,serif; cursor:pointer; }

/* 11 Research bench: falsification-forward technical workspace. */
[data-experience="research-bench"] { --xp-bg:#f0f5ed; --xp-panel:#fbfff9; --xp-ink:#1f2a1d; --xp-accent:#416b2f; --xp-soft:#dcebd4; --xp-line:#aabd9f; }
.research-bench { max-width:62rem; padding:1.25rem; border-top:4px solid var(--xp-accent); border-bottom:4px solid var(--xp-accent); background:var(--xp-panel); }

/* 12 Capability atlas: evidence ledger. */
[data-experience="provenance-ledger"] { --xp-bg:#f5f5f2; --xp-panel:#fff; --xp-ink:#202522; --xp-accent:#305e55; --xp-soft:#dce9e5; --xp-line:#9fb5ae; }
.capability-ledger { padding:1.2rem; border:1px solid var(--xp-line); background:repeating-linear-gradient(0deg,var(--xp-panel),var(--xp-panel) 2.4rem,var(--xp-soft) 2.45rem); }

@media (max-width:760px) {
  [data-experience="civic-inquiry"] .experience-modules,
  .scenario-workbench,
  [data-experience="pocket-brief"] .experience-sequence { grid-template-columns:1fr; }
  .experience-gallery .card:nth-child(3n+2) { transform:none; }
  .experience-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .experience-cockpit,
  .experience-cockpit tbody,
  .experience-cockpit tr,
  .experience-cockpit th,
  .experience-cockpit td { display:block; width:100%; }
  .experience-cockpit thead { display:none; }
  .experience-cockpit tr { border-bottom:1px solid var(--xp-line); }
  .experience-cockpit th:first-child { width:auto; border-bottom:0; }
}


/* Claimipedia reader-experience semantic grammar */
.lens-nav{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;padding:.55rem .8rem;margin:.65rem 0 1.5rem;border:1px solid var(--xp-line);border-radius:999px;background:color-mix(in srgb,var(--xp-panel) 88%,var(--xp-soft));font-size:.82rem}
.lens-nav span{font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--xp-accent)}
.lens-nav a{padding:.28rem .58rem;border-radius:999px;text-decoration:none}
.lens-nav a:hover,.lens-nav a:focus-visible{background:var(--xp-soft)}
.epistemic-strip{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-top:1rem}
.epistemic-strip>*{padding:.32rem .6rem;border:1px solid var(--xp-line);border-radius:999px;font-size:.78rem}
.synthetic-mark{border-style:dashed!important;background:repeating-linear-gradient(135deg,transparent,transparent 5px,var(--xp-soft) 5px,var(--xp-soft) 9px)}
.entrance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0 2.5rem}
.entrance{display:flex;min-height:9rem;flex-direction:column;justify-content:space-between;padding:1.15rem;border:1px solid var(--xp-line);border-radius:1rem;background:var(--xp-panel);text-decoration:none;box-shadow:0 12px 30px rgb(15 23 42 / .06)}
.entrance strong{font-size:1.15rem;color:var(--xp-ink)}
.entrance span{color:var(--muted,#58636d)}
.entrance.primary{color:white;background:var(--xp-accent);border-color:var(--xp-accent)}
.entrance.primary strong,.entrance.primary span{color:inherit}
.room-card{position:relative;overflow:hidden}
.room-card:before{content:"";position:absolute;inset:0 auto 0 0;width:.32rem;background:var(--xp-accent)}
.card-cue,.module-role,.epistemic-note{font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--xp-accent)}
.journey-callout{margin:2.5rem 0;padding:clamp(1.25rem,4vw,2.5rem);border-left:.5rem solid var(--xp-accent);background:linear-gradient(120deg,var(--xp-soft),var(--xp-panel))}
.journey-callout h2{max-width:24ch}
.dossier-grid,.anatomy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0 2rem}
.dossier-grid article,.anatomy-grid article{padding:1.1rem;border:1px solid var(--xp-line);border-radius:.8rem;background:var(--xp-panel)}
.warning-panel{border-color:#b86b30!important;background:#fff4e8!important;color:#4b2d17}
.argument-anatomy{margin:3rem 0;padding:clamp(1.15rem,3vw,2rem);border:1px solid var(--xp-line);border-radius:1.1rem;background:color-mix(in srgb,var(--xp-soft) 48%,var(--xp-panel))}
.relation-ledger{display:grid;gap:.65rem;padding:0;list-style:none}
.relation-ledger li{display:grid;grid-template-columns:max-content 1fr;gap:.35rem .8rem;padding:.8rem;border-top:1px solid var(--xp-line)}
.relation-ledger small{grid-column:2;color:var(--muted,#58636d)}
.relation-mark{align-self:start;padding:.2rem .45rem;border-radius:.35rem;font-size:.7rem;font-weight:800;text-transform:uppercase}
.relation-mark.contextual{background:#e4f3ec;color:#215842}
.relation-mark.speculative{background:#f4e8ff;color:#63358b;border:1px dashed #8b5eb0}
.room-orientation,.claim-statement,.room-exit{margin:1.5rem 0;padding:1.25rem;border-left:.3rem solid var(--xp-accent);background:var(--xp-panel)}
.experience-dossier details{margin:.75rem 0;border:1px solid var(--xp-line);border-radius:.7rem;padding:.8rem 1rem}
.experience-dossier summary{font-weight:800;cursor:pointer}
.step-index{display:inline-grid;place-items:center;width:2rem;height:2rem;margin-right:.65rem;border-radius:50%;background:var(--xp-accent);color:#fff;font-weight:800}
@media (max-width:760px){
  .entrance-grid,.dossier-grid,.anatomy-grid{grid-template-columns:1fr}
  .entrance{min-height:7rem}
  .lens-nav{border-radius:.8rem}
  .relation-ledger li{grid-template-columns:1fr}
  .relation-ledger small{grid-column:1}
}


/* Claim dossiers: evidence before ornament, uncertainty before confidence. */
.claim-dossier{display:grid;gap:1.25rem;max-width:78rem;margin:0 auto}
.claim-dossier>.claim-statement{margin:0;padding:clamp(1.25rem,4vw,2.75rem);border-left:.45rem solid var(--xp-accent);border-radius:.9rem;background:linear-gradient(135deg,var(--xp-panel),color-mix(in srgb,var(--xp-soft) 45%,var(--xp-panel)))}
.claim-vitals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.5rem 0 0}
.claim-vitals div{padding:.8rem;border-top:2px solid var(--xp-accent);background:color-mix(in srgb,var(--xp-panel) 84%,transparent)}
.claim-vitals dt{font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.claim-vitals dd{margin:.25rem 0 0;font-weight:700}
.dossier-nav{position:sticky;top:3.8rem;z-index:2;display:flex;gap:.35rem;overflow-x:auto;padding:.55rem;border:1px solid var(--xp-line);border-radius:.75rem;background:color-mix(in srgb,var(--xp-bg) 88%,transparent);backdrop-filter:blur(10px)}
.dossier-nav a{flex:0 0 auto;padding:.45rem .65rem;border-radius:.45rem;color:var(--xp-ink);text-decoration:none}
.dossier-nav a:hover,.dossier-nav a:focus-visible{background:var(--xp-soft)}
.dossier-section{scroll-margin-top:8rem;padding:clamp(1.1rem,3vw,2rem);border:1px solid var(--xp-line);border-radius:.9rem;background:var(--xp-panel)}
.dossier-list,.relationship-ledger{display:grid;gap:.65rem;margin:1rem 0 0;padding:0;list-style:none}
.dossier-list li,.relationship-ledger li{padding:.85rem 1rem;border:1px solid var(--xp-line);border-radius:.65rem;background:color-mix(in srgb,var(--xp-panel) 88%,var(--xp-soft))}
.dossier-list p{margin:.35rem 0}
.dossier-list small,.relationship-ledger small{display:block;margin-top:.35rem;color:var(--muted)}
.relationship-ledger li{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.35rem .75rem;align-items:start}
.relationship-ledger small{grid-column:2}
.status{display:inline-block;padding:.2rem .45rem;border-radius:999px;background:var(--xp-soft);font-size:.7rem;font-weight:800;text-transform:uppercase}
.status.warning{border:1px dashed #8b5eb0;background:#f4e8ff;color:#63358b}
.synthetic-link{border-style:dashed!important}
.synthetic-link a{text-decoration-style:dashed;text-underline-offset:.2em}
.missing-middle-panel{border-left:.45rem solid #b86b30;background:linear-gradient(120deg,#fff4e8,var(--xp-panel))}
.provenance-panel{font-size:.92rem}
.provenance-panel dl{display:grid;gap:.65rem}
.provenance-panel dl div{display:grid;grid-template-columns:minmax(8rem,.35fr) minmax(0,1fr);gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--xp-line)}
.provenance-panel dt{font-weight:800}
.provenance-panel dd{margin:0}
@media(max-width:760px){
  .claim-vitals{grid-template-columns:1fr}
  .dossier-nav{top:.45rem}
  .relationship-ledger li,.provenance-panel dl div{grid-template-columns:1fr}
  .relationship-ledger small{grid-column:1}
}
