/** Shared editorial surfaces and task-oriented forms. Canvases supply tokens only. */
:root {
    --chisimba-editor-radius: .6rem;
    --chisimba-editor-border: var(--chisimba-border);
    --chisimba-editor-surface: var(--chisimba-surface);
    --chisimba-heading-weight: 650;
    --chisimba-image-radius: .5rem;
    --chisimba-heading-tracking: -.025em;
}
body { background: var(--chisimba-page); }
h1, h2, h3 { font-family: var(--chisimba-font-family-heading); font-weight: var(--chisimba-heading-weight); letter-spacing: var(--chisimba-heading-tracking); }
.chisimba-page-intro { display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:1.5rem; margin-block:0 2rem; }
.chisimba-page-intro h1 { font-size:clamp(1.8rem,3vw,2.6rem); margin-block:0 .5rem; line-height:1.15; }
.chisimba-page-intro h2 { font-size:clamp(1.5rem,2.5vw,2rem); margin-block:0 .5rem; }
.chisimba-page-intro p { max-width:60ch; margin:0; color:var(--chisimba-text-muted); }
.chisimba-eyebrow { display:block; font:650 .75rem/1.5 var(--chisimba-font-family-body); letter-spacing:.12em; text-transform:uppercase; color:var(--chisimba-primary-dark); margin-block:0 .65rem; }
.chisimba-editor-surface { max-width:88rem; margin-inline:auto; }
.chisimba-editor-meta { display:flex; flex-wrap:wrap; gap:.35rem 1.25rem; border-bottom:1px solid var(--chisimba-border); padding-block:.6rem 1rem; margin-bottom:1rem; color:var(--chisimba-text-muted); font-size:.9rem; }
.chisimba-editor-meta p { margin:0; }
.chisimba-form-card { padding:clamp(1.15rem,2.5vw,2rem); border-radius:var(--chisimba-editor-radius); box-shadow:none; }
.chisimba-form-page { padding-block:1rem 2rem; }
form.chisimba-form--sectioned { max-width:64rem; margin-top:1.5rem; }
form.chisimba-form--sectioned > fieldset { min-inline-size:0; border:0; border-top:1px solid var(--chisimba-editor-border); padding:1.5rem 0 0; margin:0 0 2rem; }
form.chisimba-form--sectioned > fieldset > legend { padding:0 .8rem 0 0; font-size:1.15rem; font-family:var(--chisimba-font-family-heading); font-weight:var(--chisimba-heading-weight); color:var(--chisimba-ink); }
.chisimba-section-description { margin:0 0 1.25rem; max-width:60ch; color:var(--chisimba-text-muted); font-size:.9rem; }
.chisimba-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.1rem 1.5rem; margin-bottom:1.25rem; }
.chisimba-field-grid--identity { grid-template-columns:minmax(5rem,8rem) repeat(2,minmax(0,1fr)); }
.chisimba-field-grid > label, .chisimba-field { display:flex; flex-direction:column; gap:.4rem; min-width:0; font:600 .9rem/1.5 var(--chisimba-font-family-body); color:var(--chisimba-ink); }
.chisimba-field--full { grid-column:1/-1; }
.chisimba-field--short { max-width:26rem; }
.chisimba-field small { font-weight:400; color:var(--chisimba-text-muted); }
.chisimba-field-grid :is(input:not([type=checkbox]):not([type=radio]),select,textarea),
.chisimba-field :is(input:not([type=checkbox]):not([type=radio]),select,textarea) {
    box-sizing:border-box; width:100%; min-width:0; min-height:2.875rem; padding:.65rem .8rem;
    border:1px solid var(--chisimba-border-strong); border-radius:var(--chisimba-editor-radius);
    background:var(--chisimba-editor-surface); color:var(--chisimba-ink); font:400 1rem/1.45 var(--chisimba-font-family-body);
    box-shadow:none; transition:border-color 120ms ease,background-color 120ms ease;
}
.chisimba-field-grid :is(input,select,textarea):focus-visible,
.chisimba-field :is(input,select,textarea):focus-visible { outline:2px solid var(--chisimba-focus); outline-offset:3px; border-color:var(--chisimba-focus); }
.chisimba-field-grid [aria-invalid=true], .chisimba-field [aria-invalid=true] { border-color:var(--chisimba-danger); border-width:2px; }
.chisimba-field-error { color:var(--chisimba-danger); font-size:.875rem; }
.chisimba-field :disabled { background:var(--chisimba-surface-muted); color:var(--chisimba-text-muted); cursor:not-allowed; }
.chisimba-choice-row { display:flex; gap:.65rem; align-items:flex-start; padding-block:.4rem; font-weight:400; }
.chisimba-choice-row input { flex:none; width:1.1rem; height:1.1rem; margin-top:.2rem; accent-color:var(--chisimba-primary); }
.chisimba-action-bar { display:flex; align-items:center; flex-wrap:wrap; gap:.65rem; padding-block:1.1rem; border-top:1px solid var(--chisimba-border); margin-top:1.5rem; }
.chisimba-action-bar :is(.button,button,a.button) { min-height:2.875rem; display:inline-flex; align-items:center; justify-content:center; gap:.5rem; margin:0; }
.chisimba-action-bar__note { margin:0; font-size:.875rem; color:var(--chisimba-text-muted); }
.chisimba-title-field :is(input,textarea) { font-family:var(--chisimba-font-family-heading); font-size:clamp(1.25rem,2vw,1.75rem); min-height:3.5rem; }
.chisimba-editor-section { min-inline-size:0; border:0; border-top:1px solid var(--chisimba-border); border-radius:0; box-shadow:none; padding:1rem 0; margin:0; }
.chisimba-editor-section legend { padding-right:.65rem; font-size:1rem; font-weight:650; }
.chisimba-editor-section > p { color:var(--chisimba-text-muted); font-size:.9rem; }
.chisimba-publishing-sidebar { gap:1.25rem; }
.chisimba-publication-card { border-radius:var(--chisimba-editor-radius); box-shadow:none; overflow:hidden; }
.chisimba-feature { display:grid; grid-template-columns:1.1fr 1fr; gap:clamp(1.5rem,4vw,4rem); align-items:center; padding-block:2rem; }
.chisimba-feature h1 { font-size:clamp(2.2rem,4vw,4.1rem); line-height:1.05; max-width:15ch; margin:0 0 1.3rem; }
.chisimba-feature p { max-width:48ch; font-size:1.1rem; line-height:1.7; }
.chisimba-feature img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:var(--chisimba-image-radius); }
.chisimba-story-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.chisimba-story { padding-bottom:1.25rem; border-bottom:1px solid var(--chisimba-border); }
.chisimba-story img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:var(--chisimba-image-radius); display:block; margin-bottom:1rem; }
.chisimba-story h3 { margin:.5rem 0; font-size:1.3rem; }
.chisimba-story p { color:var(--chisimba-text-muted); margin:.5rem 0; }
.chisimba-story a { text-underline-offset:.2em; }
.chisimba-item-list { list-style:none; margin:0; padding:0; }
.chisimba-item-list > li { display:flex; gap:1rem; justify-content:space-between; align-items:center; flex-wrap:wrap; padding:1.1rem 0; border-bottom:1px solid var(--chisimba-border); }
.chisimba-item-list p { margin:.3rem 0 0; color:var(--chisimba-text-muted); font-size:.9rem; }
@media(max-width:42rem) {
    .chisimba-field-grid, .chisimba-field-grid--identity, .chisimba-feature, .chisimba-story-grid { grid-template-columns:minmax(0,1fr); }
    .chisimba-feature { padding-block:1rem; gap:1.25rem; }
    .chisimba-feature h1 { max-width:20ch; }
    .chisimba-page-intro { margin-bottom:1.25rem; }
    .chisimba-action-bar { align-items:stretch; }
    .chisimba-action-bar__note { flex-basis:100%; }
}
@media(prefers-reduced-motion:reduce) {
    .chisimba-field-grid :is(input,select,textarea),.chisimba-field :is(input,select,textarea) { transition:none; }
}

.chisimba-field-grid > .chisimba-choice-row { flex-direction:row; align-items:center; font-weight:400; }

.chisimba-title-field textarea { box-sizing:border-box; display:block; width:100%; min-height:3.5rem; line-height:1.35; resize:vertical; overflow-wrap:anywhere; }

/* Avoid stacking the legacy canvas and container gutters on phones. */
@media (max-width:42rem) {
    #Canvas_Content > #container { margin-inline:0; padding-inline:0; }
}
