.sidebar { overflow-y: auto; }
.sidebar .nav-caption { margin-top: 24px; }
.sidebar-note { padding-top: 24px; }
.record-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 28px; }
.record-fields > div { min-width: 0; border-bottom: 1px solid var(--border); padding-bottom: 17px; }
.record-fields dt { font-size: 11px; color: var(--muted); margin-bottom: 7px; }
.record-fields dd { margin: 0; overflow-wrap: anywhere; }
.article-form fieldset + fieldset { border-top: 1px solid var(--border); margin-top: 30px; padding-top: 25px; }
.field-error { display: block; color: var(--wine); margin-top: 7px; }
[data-theme=dark] .field-error { color: #efadbb; }
input[aria-invalid=true] { border-color: var(--wine); }
input[readonly] { background: var(--soft); }
.inline-actions { display: flex; gap: 12px; align-items: center; margin: 10px 0; }
.inline-actions input { flex: 1; min-width: 0; }
.component-results { display: flex; flex-wrap: wrap; gap: 8px; margin: 15px 0; }
.kit-rows { display: grid; gap: 15px; margin: 22px 0; }
.kit-row { display: grid; grid-template-columns: minmax(140px, 2fr) minmax(100px, 1fr) minmax(120px, 1fr) auto; gap: 16px; padding: 20px; align-items: center; background: var(--soft); border: 1px solid var(--border); border-radius: 8px; }
.kit-row > div { min-width: 0; overflow-wrap: anywhere; }
.kit-row small { display: block; color: var(--muted); margin-top: 5px; }
.kit-row label { font-size: 11px; }
.article-form .panel-heading { padding-left: 0; padding-right: 0; }
dialog { color: var(--text); background: var(--surface); border: 1px solid var(--border); border-radius: 12px; max-width: min(550px, 92vw); padding: 0; }
dialog::backdrop { background: #0008; }
.dialog-content { padding: 28px; }
.dialog-content p { color: var(--muted); margin: 18px 0; }
.dialog-content form { margin-top: 18px; }
details summary { cursor: pointer; }
@media (max-width: 1100px) { .kit-row { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .record-fields { grid-template-columns: 1fr; padding: 20px; gap: 17px; } .inline-actions { flex-direction: column; align-items: stretch; } .kit-row { grid-template-columns: 1fr; padding: 16px; } .article-form { padding: 20px; } }
@media print { dialog, .kit-search, .form-actions, .component-results { display: none; } }
