.service-log-view { max-width: 960px; color: var(--ink, #151515); }
.service-log-view .section-intro { margin-bottom: 28px; }
.service-log-view .section-intro h1 { font-size: 28px; font-weight: 650; letter-spacing: -.035em; line-height: 1.45; margin: 0 0 8px; }
.service-log-view .section-intro p { color: var(--muted, #66635e); font-size: 14px; line-height: 1.8; margin: 0; }
.service-log-toolbar { display: flex; align-items: flex-end; gap: 16px; margin: 0 0 22px; }
.service-log-toolbar .field { flex: 1; margin: 0; max-width: 420px; }
.service-log-toolbar > h2 { margin: 0 auto 0 0; font-size: 19px; font-weight: 600; overflow-wrap: anywhere; }
.service-log-toolbar > button { flex-shrink: 0; }
.service-log-view .field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.service-log-view .field > span { font-size: 13px; font-weight: 550; }
.service-log-view input, .service-log-view select { display: block; box-sizing: border-box; width: 100%; min-width: 0; min-height: 46px; padding: 10px 12px; border: 1px solid var(--border-strong, #938d83); border-radius: 8px; background: #fff; color: #151515; font: inherit; font-size: 16px; }
.service-log-view input:focus, .service-log-view select:focus { outline: 2px solid #151515; outline-offset: 2px; border-color: #151515; }
.service-log-view input:disabled, .service-log-view select:disabled { opacity: .6; }
.service-log-view [aria-invalid=true] { border-color: var(--red, #a32e29); }
.service-log-view button { min-height: 44px; }
.service-log-filters { margin-bottom: 24px; border-block: 1px solid var(--border, #e7e5e1); }
.service-log-filters > summary { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 12px 0; font-size: 13px; font-weight: 600; cursor: pointer; list-style: none; }
.service-log-filters > summary::-webkit-details-marker { display: none; }
.service-log-filters > summary::before { content: '+'; font-weight: 400; font-size: 20px; line-height: 1; }
.service-log-filters[open] > summary::before { content: '−'; }
.service-log-filters > summary > span { color: var(--muted, #66635e); font-weight: 400; font-size: 12px; }
.service-log-filters form { padding: 6px 0 20px; }
.service-log-filter-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 20px; }
.service-log-filter-grid .field { margin: 0; }
.service-log-view .field-hint { color: var(--muted, #66635e); font-size: 12px; line-height: 1.8; margin: 10px 0 0; }
.service-log-filter-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.service-log-view .form-error { padding: 12px 14px; margin: 12px 0 20px; color: #8b2924; background: #fff7f5; border: 1px solid #e6bfb8; border-radius: 8px; font-size: 13px; line-height: 1.8; }
.service-log-view .form-error p { margin: 5px 0 0; }
.service-log-view .hidden { display: none; }
.service-log-count { margin: 0 0 8px; color: var(--muted, #66635e); font-size: 12px; }
.service-log-list { list-style: none; padding: 0; margin: 0; }
.service-log-event { display: grid; grid-template-columns: minmax(0,1fr) minmax(240px,.8fr); gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--border, #e7e5e1); }
.service-log-person { display: flex; gap: 12px; min-width: 0; }
.service-log-person > div { min-width: 0; }
.service-log-person strong { display: block; font-size: 14px; font-weight: 600; overflow-wrap: anywhere; }
.service-log-person code { display: block; margin-top: 4px; color: var(--muted, #66635e); font-family: var(--mono, Consolas, monospace); font-size: 11px; overflow-wrap: anywhere; }
.service-log-avatar { width: 34px; height: 34px; display: grid; place-items: center; flex-shrink: 0; border-radius: 50%; background: var(--soft, #faf9f7); border: 1px solid var(--border, #e7e5e1); font-size: 13px; }
.service-log-record { min-width: 0; }
.service-log-record > time { display: block; font-size: 13px; font-weight: 550; }
.service-log-methods { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.service-log-methods > span { padding: 3px 8px; border: 1px solid var(--border, #e7e5e1); border-radius: 5px; color: var(--muted, #66635e); font-size: 11px; }
.service-log-proof { margin-top: 4px; }
.service-log-proof > summary { display: inline-flex; align-items: center; min-height: 36px; color: var(--muted, #66635e); cursor: pointer; font-size: 12px; }
.service-log-proof dl { display: block; grid-template-columns: none; gap: 0; min-width: 0; width: 100%; margin: 0; padding: 8px 12px; background: var(--soft, #faf9f7); border-radius: 7px; }
.service-log-proof dl > div { display: grid; min-width: 0; grid-template-columns: 80px minmax(0,1fr); gap: 10px; padding: 4px 0; font-size: 12px; }
.service-log-proof dt { color: var(--muted, #66635e); }
.service-log-proof dd { min-width: 0; margin: 0; overflow-wrap: anywhere; }
.service-log-proof p { font-size: 11px; line-height: 1.8; color: var(--muted, #66635e); margin: 8px 0 0; }
.service-log-more { display: flex; margin: 24px auto 0; }
.service-log-view .empty-state { padding: 44px 14px; text-align: center; color: var(--muted, #66635e); }
.service-log-view .empty-state h2 { font-size: 16px; font-weight: 600; color: #151515; margin: 0 0 8px; }
.service-log-view .empty-state p { font-size: 13px; line-height: 1.8; margin: 0; }
.service-log-status .spinner { display: block; margin: 0 auto 12px; }
.service-log-privacy { margin: 24px 0 0; padding-top: 18px; color: var(--muted, #66635e); font-size: 12px; line-height: 1.85; }
@media (max-width: 600px) {
  .service-log-view .section-intro h1 { font-size: 24px; }
  .service-log-toolbar { gap: 10px; }
  .service-log-toolbar > button { padding-inline: 12px; }
  .service-log-filter-grid { grid-template-columns: minmax(0,1fr); }
  .service-log-event { grid-template-columns: minmax(0,1fr); gap: 12px; padding: 20px 0; }
  .service-log-record { margin-left: 46px; }
  .service-log-person code { font-size: 10px; }
  .service-log-proof dl > div { grid-template-columns: minmax(0,1fr); gap: 1px; }
}
