/* Scoped styles: preserve the existing paper exposition and review interface. */ .companion-inventory { margin: 0 0 3rem; padding: 1.5rem 0 2rem; border-bottom: 2px solid var(--line, #d8d3c7); min-width: 0; } .companion-details-panel .companion-details-eyebrow { margin: 0 0 .4rem; color: var(--muted, #656a67); font: 650 .72rem/1.5 system-ui, sans-serif; text-transform: uppercase; letter-spacing: .09em; } .companion-inventory h2 { margin: 0 0 1rem; font-size: 1.8rem; line-height: 1.2; } .companion-inventory p { max-width: 100ch; } .companion-inventory-status { padding: .65rem .9rem; border-left: 3px solid #a77728; background: #fbf1df; color: #644c24; font: .85rem/1.55 system-ui, sans-serif; } .companion-inventory-group { margin-top: 1.7rem; min-width: 0; } .companion-inventory-group h3 { margin: 0 0 .75rem; font-size: 1.05rem; line-height: 1.4; } .companion-inventory .companion-inventory-list { display: block; list-style: none; padding: 0; margin: 0; } .companion-inventory-entry { padding: .42rem 0; margin: 0; border-bottom: 1px solid var(--line, #d8d3c7); min-width: 0; } .companion-inventory .companion-inventory-link { display: inline; padding: .15rem 0; margin: 0 .6rem 0 0; border: 0; border-radius: 0; background: transparent; color: var(--accent, #8f2f36); text-align: left; cursor: pointer; font: .76rem/1.65 ui-monospace, SFMono-Regular, Consolas, monospace; overflow-wrap: anywhere; max-width: 100%; } .companion-inventory-link:hover .companion-declaration-name, .companion-inventory-link[aria-expanded="true"] .companion-declaration-name { text-decoration: underline; } .companion-inventory-kind { color: var(--muted, #656a67); font: .72rem/1.6 system-ui, sans-serif; } .companion-inventory-description { display: block; margin: .25rem 0; font-size: .86em; } .companion-inventory [data-companion-boundary="true"] .companion-inventory-link { color: var(--muted, #656a67); } .companion-inventory button:focus-visible, .companion-details-panel :is(button, a, input):focus-visible { outline: 3px solid #d89a31; outline-offset: 3px; } .companion-details-content:focus-visible { outline: 2px solid #d89a31; outline-offset: -2px; } .companion-details-panel[hidden] { display: none !important; } .companion-details-panel { box-sizing: border-box; position: fixed; z-index: 100; left: 50%; bottom: 0; transform: translateX(-50%); width: min(1280px, calc(100% - 24px)); height: min(70vh, 760px); height: min(70dvh, 760px); display: flex; flex-direction: column; overflow: hidden; margin: 0; padding: 0; color: var(--ink, #202322); background: var(--paper, #fbfaf6); border: 1px solid var(--line-strong, #9d9a91); border-top: 4px solid var(--accent, #8f2f36); border-radius: 12px 12px 0 0; box-shadow: 0 -12px 55px #172c3930; font: 15px/1.55 system-ui, sans-serif; } body.companion-panel-open { padding-bottom: calc(var(--companion-panel-height, 70vh) + 24px); } .companion-details-toolbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; flex: 0 0 auto; padding: 16px 22px 10px; border-bottom: 1px solid var(--line, #d8d3c7); } .companion-details-toolbar > div { min-width: 0; } .companion-details-panel h2 { margin: 0; font: 600 1rem/1.45 ui-monospace, SFMono-Regular, Consolas, monospace; overflow-wrap: anywhere; } .companion-details-panel button { cursor: pointer; font: inherit; } .companion-details-panel .companion-details-close { flex: 0 0 auto; border: 1px solid var(--line, #d8d3c7); border-radius: 5px; background: white; color: var(--ink, #202322); padding: 7px 11px; } .companion-details-close span { margin-left: .4rem; font-size: 1.1em; } .companion-details-options { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem 1rem; padding: 8px 22px; font-size: .78rem; flex: 0 0 auto; } .companion-details-options label { display: flex; gap: .45rem; align-items: center; } .companion-details-content { min-height: 0; overflow: auto; overscroll-behavior: contain; padding: 0 22px 28px; } .companion-details-panel .companion-specification-block { margin: 1.5rem 0; padding: 0; border: 0; } .companion-details-panel h3 { font: 650 1rem/1.45 system-ui, sans-serif; margin: 0 0 .65rem; } .companion-details-panel h4 { font: 650 .88rem/1.45 system-ui, sans-serif; margin: 0 0 .35rem; } .companion-details-panel p, .companion-details-panel a { overflow-wrap: anywhere; } .companion-specification-meta { color: var(--muted, #656a67); font-size: .78rem; margin: .45rem 0; } .companion-details-panel .companion-primary-meta { margin: .15rem 0 .45rem; } .companion-details-panel .companion-primary-meta + .companion-specification-block { margin-top: .5rem; } .companion-details-panel .companion-source-location { margin-top: .65rem; } .companion-details-panel .companion-exact-expression { white-space: pre-wrap; overflow-wrap: anywhere; word-break: normal; max-width: 100%; min-width: 0; margin: .4rem 0; padding: 12px; color: inherit; background: #77777709; border: 1px solid var(--line, #d8d3c7); border-radius: 5px; font: .79rem/1.6 ui-monospace, SFMono-Regular, Consolas, monospace; } .companion-binder-list { padding-left: 1.5rem; } .companion-binder-list > li, .companion-field-entry { border-top: 1px solid var(--line, #d8d3c7); padding: .85rem 0; min-width: 0; } .companion-dependency-list { display: block; list-style: none; padding: 0; margin: .5rem 0; } .companion-details-panel .companion-dependency-link { display: inline-block; margin: .2rem .4rem .2rem 0; padding: 5px 8px; border: 1px solid var(--line, #d8d3c7); border-radius: 5px; background: white; color: var(--accent, #8f2f36); font: .75rem/1.5 ui-monospace, SFMono-Regular, Consolas, monospace; text-align: left; max-width: 100%; overflow-wrap: anywhere; } .companion-dependency-link[data-companion-boundary="true"] { border-style: dashed; } .companion-dependency-link:disabled { color: var(--muted, #656a67); cursor: default; } @media (max-width: 600px) { .companion-inventory h2 { font-size: 1.5rem; } .companion-inventory-link { min-height: 36px; } .companion-details-panel { width: 100%; height: 72vh; height: 72dvh; } .companion-details-toolbar { padding: 12px 12px 8px; gap: .6rem; } .companion-details-panel h2 { font-size: .82rem; } .companion-details-content { padding: 0 12px 22px; } .companion-details-options { padding: 7px 12px; } .companion-details-panel .companion-dependency-link { min-height: 36px; } } @media print { .companion-details-panel { display: none !important; } body.companion-panel-open { padding-bottom: 0; } .companion-inventory button { color: inherit; } }