.btn-sm{padding:.18rem .55rem;font-size:.79rem}
.token-box{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;word-break:break-all;background:#f8fafc;border:1px solid var(--line);border-radius:6px;padding:.7rem}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.log-msg{max-width:520px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.file-row{display:flex;gap:.5rem;align-items:end}
.file-row label{flex:1}
.app-filters{grid-template-columns:minmax(320px,1fr) minmax(300px,auto)}
.filter-search{min-width:0}
.app-filters .role-sw{width:100%}
.log-detail-modal{width:min(1040px,calc(100vw - 40px))}
.log-detail-memo{width:100%;min-height:420px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;white-space:pre;overflow:auto}
@media(max-width:720px){
  .product-grid{grid-template-columns:1fr}
  .file-row{display:grid}
  .log-msg{max-width:none;white-space:normal}
  .app-filters{grid-template-columns:1fr}
  .log-detail-modal{width:calc(100vw - 24px);padding:1rem}
  .log-detail-memo{min-height:60vh;font-size:.8rem}
}
