.subject-cache-layer { position: relative; z-index: 78; margin: 1rem 0; }
.subject-cache { display: grid; gap: .75rem; padding: 1rem; border: 1px solid color-mix(in srgb, var(--line, #cbd5e1) 72%, #15803d); border-radius: 1rem; background: var(--panel, #fff); color: var(--ink, #172033); }
.subject-cache h2 { margin: 0; font-size: 1.05rem; }
.subject-cache__warning, .subject-cache__help { margin: 0; color: var(--muted, #526070); }
.subject-cache__form, .subject-cache__entry-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.subject-cache__entry-form { grid-column: 1 / -1; }
.subject-cache__form input, .subject-cache__form select { min-width: 0; padding: .6rem .7rem; border: 1px solid var(--line, #cbd5e1); border-radius: .55rem; font: inherit; background: var(--surface, #fff); color: inherit; }
.subject-cache__form button { min-height: 2.5rem; }
.subject-cache__check { display: flex; align-items: center; gap: .45rem; min-height: 2.5rem; }
.subject-cache__list { display: grid; gap: .35rem; margin: 0; padding-left: 1.3rem; }
.subject-cache__status { margin: 0; font-weight: 700; }
.subject-cache__actions { display: flex; flex-wrap: wrap; gap: .45rem; }
@media (max-width: 640px) { .subject-cache__form, .subject-cache__entry-form { grid-template-columns: 1fr; } }
@media (forced-colors: active) { .subject-cache { border: 2px solid CanvasText; background: Canvas; color: CanvasText; } .subject-cache__form input, .subject-cache__form select { border: 1px solid CanvasText; background: Canvas; color: CanvasText; } }
@media print { .subject-cache-layer { display: none !important; } }
