.list { display: flex; flex-direction: column; gap: 14px; } .card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px 20px; padding: 20px 22px; border-radius: var(--radius-lg); background: var(--surface-a); border: 1px solid var(--line); } .cardHead { display: flex; flex-direction: column; gap: 4px; min-width: 0; } .cardTitle { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 17px; font-weight: 600; } .location { font-family: var(--font-mono); font-size: 13px; color: var(--text2); overflow-wrap: anywhere; } .message { font-size: 13px; color: var(--danger); } .cardActions { display: flex; align-items: flex-start; gap: 8px; flex-wrap: wrap; justify-content: flex-end; } .cardFoot { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 6px; } .typeBadge { display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: var(--radius-pill); background: var(--surface3); color: var(--text2); font-size: 12px; font-weight: 600; } .status { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 600; } .status::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; } .st_mounted { color: var(--ok); } .st_error { color: var(--danger); } .st_pending { color: var(--warn); } .st_disabled { color: var(--text3); } .scan { display: flex; flex-direction: column; gap: 6px; } .scanText, .scanSummary { font-size: 13px; color: var(--text2); } .scanError { font-size: 13px; color: var(--danger); } .bar { height: 6px; border-radius: 3px; background: var(--surface3); overflow: hidden; } .bar span { display: block; height: 100%; background: linear-gradient(90deg, var(--accent), var(--violet)); transition: width 0.4s; } .test { font-size: 13px; } .testOk { color: var(--ok); } .testFail { color: var(--danger); } .picker { display: flex; flex-direction: column; gap: 6px; max-height: 240px; overflow-y: auto; padding: 6px; border-radius: var(--radius-md); background: var(--surface2); border: 1px solid var(--line2); } .crumbs { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; padding: 4px 6px; font-family: var(--font-mono); font-size: 13px; color: var(--text2); } .dir { display: flex; align-items: center; gap: 8px; height: 34px; padding: 0 8px; border-radius: 8px; text-align: left; font-size: 14px; } .dir:hover { background: var(--hover); } .dirIcon { color: var(--accent2); } .label { font-size: 13px; font-weight: 600; color: var(--text2); } .field { display: flex; flex-direction: column; gap: 6px; } .tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; } .tile { display: flex; flex-direction: column; gap: 4px; padding: 16px 18px; border-radius: var(--radius-lg); background: var(--surface-a); border: 1px solid var(--line); } .tileValue { font-family: var(--font-display); font-size: 26px; font-weight: 600; font-variant-numeric: tabular-nums; } .tileLabel { font-size: 13px; color: var(--text2); } .patternRow { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: start; gap: 10px; } .patternNum { height: 48px; margin-top: 22px; display: grid; place-items: center; color: var(--text3); font-variant-numeric: tabular-nums; } .patternTools { display: flex; align-items: center; gap: 2px; height: 48px; } .check { display: inline-flex; align-items: center; gap: 6px; margin-right: 6px; font-size: 13px; color: var(--text2); } .groups { font-family: var(--font-mono); font-size: 12px; color: var(--text3); } .match { font-family: var(--font-mono); font-size: 12px; overflow-wrap: anywhere; } .noMatch { color: var(--warn); } .result { display: flex; flex-direction: column; gap: 2px; font-size: 13px; } .result b { font-weight: 600; } .fromTags { color: var(--text3); font-size: 12px; } @media (max-width: 767px) { .card { grid-template-columns: 1fr; } .cardActions { justify-content: flex-start; } } .checkRow { display: flex; align-items: center; gap: 10px; cursor: pointer; }