:root { --summons-ink: #17211b; --summons-muted: #68756d; --summons-line: #dce5dd; --summons-wash: #f3f8f3; --summons-green: #217a52; --summons-red: #9b3b34; }
.summons-page { min-height: 100vh; background: #f7faf7; }
.summons-content { max-width: 1120px; margin: 0 auto; padding: 34px 30px 60px; }
.summons-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding-bottom: 24px; border-bottom: 1px solid var(--summons-line); }
.summons-heading h2 { margin: 0; color: var(--summons-ink); font-family: Georgia, serif; font-size: 2.2rem; font-weight: 500; }
.summons-heading p:last-child { margin: 9px 0 0; color: var(--summons-muted); }
.summons-content .eyebrow { margin: 0 0 7px; color: var(--summons-green); font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.primary-button, .secondary-button { padding: 10px 15px; border: 1px solid var(--summons-line); border-radius: 5px; color: var(--summons-ink); background: #fff; cursor: pointer; font: inherit; font-weight: 700; }
.primary-button { border-color: var(--summons-green); color: #fff; background: var(--summons-green); }
.primary-button:hover { background: #155438; }
.case-form { margin: 24px 0; padding: 22px; border: 1px solid var(--summons-line); border-radius: 7px; background: #fff; }
.form-heading, .party-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.form-heading h3, .party-heading h4 { margin: 0; color: var(--summons-ink); font-family: Georgia, serif; font-weight: 500; }
.close-button { border: 0; color: var(--summons-muted); background: transparent; cursor: pointer; font-size: 1.1rem; }
.form-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 18px; }
.form-grid label, .party-row label, .hearing-form label { display: grid; gap: 6px; color: var(--summons-ink); font-size: .82rem; font-weight: 700; }
.form-grid input, .form-grid select, .form-grid textarea, .party-row input, .party-row textarea, .hearing-form input { width: 100%; box-sizing: border-box; padding: 9px; border: 1px solid var(--summons-line); border-radius: 4px; color: var(--summons-ink); background: #fff; font: inherit; font-weight: 400; }
.form-grid textarea, .party-row textarea { min-height: 82px; resize: vertical; }
.wide-field { grid-column: span 3; }
.party-section { margin: 20px 0; padding-top: 17px; border-top: 1px solid var(--summons-line); }
.party-row { display: grid; grid-template-columns: 1.1fr 1.5fr 1fr auto; align-items: end; gap: 10px; margin: 10px 0; }
.party-row textarea { min-height: 40px; }
.party-remove { min-height: 38px; padding: 0 11px; border: 1px solid #e1c8c5; border-radius: 4px; color: var(--summons-red); background: #fff; cursor: pointer; }
.form-feedback { min-height: 1.2em; margin: 12px 0 0; color: var(--summons-red); }
.case-list { display: grid; gap: 12px; margin-top: 24px; }
.case-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; padding: 18px 20px; border-bottom: 1px solid var(--summons-line); background: #fff; }
.case-reference { margin: 0 0 5px; color: var(--summons-green); font-size: .72rem; font-weight: 700; }
.case-item h3 { margin: 0; color: var(--summons-ink); font-size: 1rem; }
.case-details { margin: 7px 0 0; color: var(--summons-muted); font-size: .88rem; line-height: 1.5; }
.case-status { align-self: start; padding: 5px 9px; border-radius: 4px; color: #21543b; background: var(--summons-wash); font-size: .75rem; font-weight: 700; text-transform: capitalize; }
.case-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px; padding-top: 12px; border-top: 1px solid var(--summons-line); }
.case-actions button { padding: 8px 10px; border: 1px solid var(--summons-line); border-radius: 4px; color: var(--summons-green); background: #fff; cursor: pointer; font: inherit; font-size: .8rem; font-weight: 700; }
.hearing-form { display: flex; flex-wrap: wrap; align-items: end; gap: 8px; width: 100%; }
.hearing-form label { min-width: 190px; }
.case-history { grid-column: 1 / -1; color: var(--summons-muted); font-size: .82rem; }
.case-history summary { cursor: pointer; }
.case-history p { margin: 6px 0; }
.case-state { padding: 45px 20px; color: var(--summons-muted); text-align: center; }
.is-hidden { display: none; }
@media (max-width: 760px) { .summons-content { padding: 24px 16px 42px; } .summons-heading { align-items: flex-start; flex-direction: column; } .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .wide-field { grid-column: span 2; } .party-row { grid-template-columns: 1fr 1fr; } .case-item { grid-template-columns: 1fr; } }
@media (max-width: 440px) { .form-grid { grid-template-columns: 1fr; } .wide-field { grid-column: auto; } .party-row { grid-template-columns: 1fr; } }