/* © Christian Gottschall. Peirce layout using the shared Logik HTML5 theme, 2026. */
.result-stack { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.editor { align-self: start; }
.editor form { margin: 0; }
.entry-row { display: flex; flex-direction: column; gap: 7px; }
#expression { font: 1.15rem/1.5 ui-monospace, monospace; min-width: 0; }
.caption { font-size: .81rem; color: var(--muted); line-height: 1.55; }
.rules { display: grid; grid-template-columns: 1fr; gap: 6px; border-top: 1px solid var(--line); padding-top: 10px; }
.rules button { text-align: left; }
.rules b { color: var(--green); display: inline-block; width: 30px; }
.card-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.card-heading h2 { margin: 0; }
.card-heading span { font-size: .81rem; color: var(--muted); }
.proof, .visual { min-width: 0; }
#empty { padding: 20px 12px; text-align: center; color: var(--muted); line-height: 1.6; }
.table-wrap { overflow: auto; max-height: 55vh; }
#proof-table td:nth-child(2) { font: 1.1rem/1.5 ui-monospace, monospace; }
#proof-table td label { display: block; cursor: pointer; margin: 0; font: inherit; }
#proof-table input[type=radio] { width: 17px; height: 17px; margin: 0 6px 0 0; padding: 0; accent-color: var(--green); vertical-align: middle; }
.sequent { font: 1.3rem/1.6 'Cambria Math', Georgia, serif; overflow-wrap: anywhere; }
.sheet { min-height: 130px; display: flex; align-items: center; justify-content: flex-start; overflow: auto; background: var(--paper); border: 1px solid var(--line); border-radius: 8px; padding: 12px; }
.graph-area { display: inline-flex; align-items: center; gap: 16px; flex-shrink: 0; }
.cut { display: inline-flex; align-items: center; justify-content: center; border: 2px solid var(--ink); border-radius: 22px; padding: 14px; min-width: 42px; min-height: 46px; }
.atom { font: 26px Georgia, serif; }
.sheet > .graph-area { margin: auto; }
#status { font-size: .87rem; line-height: 1.55; margin: 0; }
#status.error { background: #fff0ed; color: #a12626; padding: 12px; border-radius: 7px; }
#help { margin: 12px 0; line-height: 1.7; }
#help p, #help dl { color: var(--muted); }
#help dt { color: var(--ink); font-weight: 650; }
#help dd { margin: 4px 0 12px; }
#help-button { align-self: flex-start; }
dialog { border: 1px solid var(--line); border-radius: 14px; max-width: 90vw; width: 760px; color: var(--ink); padding: 28px; }
dialog::backdrop { background: #142e2b66; }
pre { white-space: pre-wrap; overflow-wrap: anywhere; font: 16px/1.8 ui-monospace, monospace; max-height: 65vh; overflow: auto; }
@media (min-width: 851px) { .sheet { min-height: 110px; } }
@media (max-width: 850px) {
 .result-stack { gap: 16px; }
 .rules { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media print {
 body > *:not(dialog) { display: none !important; }
 dialog { position: static; display: block !important; max-width: none; width: 100%; border: 0; padding: 0; }
 dialog .toolbar { display: none; }
 pre { max-height: none; overflow: visible; }
 dialog::backdrop { display: none; }
}

@media print { .donation-form { display:block; margin:12px 0; padding:0; text-align:center; } .donation-form .donation-button, .donation-form button, .donation-form input { display:none!important; } .donation-form::before { content:url("donation-qr.jpg"); display:inline-block; width:150px; height:150px; object-fit:contain; } }
