/* Безпека: вправи поверх ../_pk/pack.css */

.pw-meter { height: 10px; border: 1px solid var(--pk-rule); background: var(--pk-paper); margin: 10px 0 4px; max-width: 640px; }
.pw-meter span { display: block; height: 100%; width: 0; transition: width .2s; }
.pw-meter .weak { background: var(--pk-coral); }
.pw-meter .mid { background: var(--pk-warn); }
.pw-meter .strong { background: var(--pk-mint); }

.factor-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-top: 14px; }
.fcell { border: 1px solid var(--pk-rule); padding: 12px 14px; background: var(--pk-paper); display: grid; gap: 4px; border-left-width: 4px; }
.fcell.ok { border-left-color: var(--pk-mint); }
.fcell.bad { border-left-color: var(--pk-coral); }
.fcell.warn { border-left-color: var(--pk-warn); }
.fcell .fname { font: 700 14px/1.3 var(--pk-mono); }
.fcell .fv { font: 500 13px/1.3 var(--pk-mono); color: var(--pk-muted); }
.fcell .fwhy { font-size: 14px; line-height: 1.45; }

.url-parts { font: 15px/1.6 var(--pk-mono); margin: 14px 0 0; word-break: break-all; }
.url-parts .up-scheme, .url-parts .up-path { color: var(--pk-faint); }
.url-parts .up-user { background: rgba(192,79,49,.14); color: var(--pk-ink); }
.url-parts .up-sub { color: var(--pk-muted); }
.url-parts .up-reg { font-weight: 700; border-bottom: 2px solid var(--pk-blue); }

.mail { font: 15px/1.7 var(--pk-sans); background: #fff; color: #111; border: 1px solid var(--pk-hair); padding: 16px 18px; margin-top: 10px; max-width: 720px; }
.mail .hot { font: inherit; color: inherit; background: none; border: 0; border-bottom: 1px dashed var(--pk-rule); padding: 0 1px; cursor: pointer; text-align: left; }
.mail .hot:hover { background: rgba(58,108,191,.08); }
.mail .hot.found { background: rgba(192,79,49,.14); border-bottom: 2px solid var(--pk-coral); }

.who-grid { margin-top: 10px; }

.checks { display: grid; gap: 6px; margin: 12px 0 0; }
.chk { display: flex; gap: 10px; align-items: flex-start; font: 15px/1.45 var(--pk-sans); color: var(--pk-ink); margin: 0; cursor: pointer; }
.chk input, .setup-item input { accent-color: var(--pk-ink); margin-top: 4px; flex: none; }

.setup-g { font: 700 14px/1.3 var(--pk-mono); margin: 18px 0 6px; }
.setup-g:first-child { margin-top: 6px; }
.setup-item { display: flex; gap: 10px; padding: 8px 0; border-top: 1px solid var(--pk-hair); cursor: pointer; margin: 0; font: inherit; color: inherit; }
.setup-item .st { display: block; font: 500 15px/1.4 var(--pk-sans); color: var(--pk-ink); }
.setup-item .sd { display: block; font: 14px/1.45 var(--pk-sans); color: var(--pk-muted); margin-top: 2px; }
.setup-item.done .st { text-decoration: line-through; text-decoration-color: var(--pk-mint); color: var(--pk-muted); }
.lab-head .score { margin-left: auto; }

details.play ol { padding-left: 22px; }
details.play li { margin: 4px 0; }
