.kit-pwd-page { background:#F5F0FC; min-height:100vh; color:#1a0a30; }
.kit-pwd-page * { box-sizing:border-box; }
.kit-pwd-wrap { max-width:1180px; margin:0 auto; padding:0 20px; }
.kit-pwd-hero { background:linear-gradient(180deg,#1F0046 0%, #2A0B61 100%); color:#fff; padding:42px 20px 64px; }
.kit-pwd-hero .eyebrow { display:inline-block; background:rgba(123,47,190,.25); color:#E6D5FF; padding:5px 12px; border-radius:999px; font-size:.78rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
.kit-pwd-hero h1 { font-size:clamp(1.7rem,3.5vw,2.6rem); font-weight:800; line-height:1.15; margin:6px 0 12px; letter-spacing:-.02em; }
.kit-pwd-hero h1 .accent { background:linear-gradient(90deg,#27E19D,#6BFFB0); -webkit-background-clip:text; background-clip:text; color:transparent; }
.kit-pwd-hero p { font-size:1rem; color:rgba(255,255,255,.82); max-width:680px; line-height:1.55; margin:0; }

.kit-pwd-tabs { display:flex; gap:8px; margin-top:-30px; position:relative; z-index:2; padding-bottom:14px; }
.kit-pwd-tab { background:#fff; border:1.5px solid #EDE5F8; color:#3d1f6e; padding:11px 18px; font-size:.92rem; font-weight:600; border-radius:11px; cursor:pointer; transition:background .12s, color .12s, border-color .12s; }
.kit-pwd-tab.is-active { background:#1F0046; color:#fff; border-color:#1F0046; }
.kit-pwd-tab:hover:not(.is-active) { border-color:#7B2FBE; color:var(--accent-text, #7B2FBE); }

.kit-pwd-panel { background:#fff; border:1px solid #EDE5F8; border-radius:16px; padding:24px; margin-bottom:18px; }
.kit-pwd-row { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:14px; }
.kit-pwd-field { flex:1; min-width:180px; }
.kit-pwd-field label { display:block; font-size:.78rem; color:#5b3d8a; font-weight:600; margin-bottom:4px; text-transform:uppercase; letter-spacing:.03em; }
.kit-pwd-field input { width:100%; padding:11px 14px; border:1.5px solid #EDE5F8; border-radius:10px; font-size:.94rem; outline:none; }
.kit-pwd-field input:focus { border-color:#7B2FBE; }

.kit-pwd-toggles { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:6px; }
.kit-pwd-toggle { display:inline-flex; align-items:center; gap:6px; background:#F5F0FC; border:1.5px solid #EDE5F8; padding:7px 13px; border-radius:999px; font-size:.84rem; color:#3d1f6e; cursor:pointer; user-select:none; transition:background .12s, color .12s, border-color .12s; }
.kit-pwd-toggle input { display:none; }
.kit-pwd-toggle.is-on { background:#1F0046; color:#fff; border-color:#1F0046; }
.kit-pwd-toggle.is-on::before { content:"✓"; font-weight:700; }

.kit-pwd-output { background:#1F0046; color:#fff; border-radius:14px; padding:24px; font-family: ui-monospace, 'SF Mono', Consolas, monospace; font-size:1.55rem; letter-spacing:.04em; word-break:break-all; position:relative; }
.kit-pwd-output-row { display:flex; gap:10px; align-items:center; }
.kit-pwd-output-text { flex:1; }
.kit-pwd-copy { background:#27E19D; color:#082b1d; border:0; padding:9px 16px; border-radius:9px; font-size:.86rem; font-weight:700; cursor:pointer; font-family:inherit; transition:background .12s, transform .12s; }
.kit-pwd-copy:hover { background:#3FE8AB; }
.kit-pwd-copy.is-copied { background:#fff; color:var(--teal); }
.kit-pwd-strength { display:flex; align-items:center; gap:6px; font-size:.74rem; color:rgba(255,255,255,.8); margin-top:12px; font-family:'Poppins',sans-serif; }
.kit-pwd-strength-bar { display:inline-flex; gap:3px; }
.kit-pwd-strength-bar span { width:18px; height:4px; border-radius:2px; background:rgba(255,255,255,.18); }
.kit-pwd-strength-bar span.on { background:#27E19D; }
.kit-pwd-strength.weak  .kit-pwd-strength-bar span.on { background:#FFCB47; }
.kit-pwd-strength.bad   .kit-pwd-strength-bar span.on { background:#F4475E; }

.kit-pwd-actions { display:flex; gap:10px; margin-top:14px; flex-wrap:wrap; }
.kit-pwd-btn { display:inline-flex; align-items:center; gap:6px; padding:11px 18px; border-radius:10px; font-size:.92rem; font-weight:600; cursor:pointer; border:0; transition:background .12s; }
.kit-pwd-btn-primary { background:#7B2FBE; color:#fff; }
.kit-pwd-btn-primary:hover { background:#6A26A8; }
.kit-pwd-btn-secondary { background:#fff; color:#3d1f6e; border:1.5px solid #EDE5F8; }
.kit-pwd-btn-secondary:hover { border-color:#7B2FBE; color:var(--accent-text, #7B2FBE); }

/* Bulk */
.kit-pwd-bulk-list { background:#F5F0FC; border:1px solid #EDE5F8; border-radius:12px; max-height:380px; overflow:auto; padding:0; }
.kit-pwd-bulk-list table { width:100%; border-collapse:collapse; font-family: ui-monospace, 'SF Mono', Consolas, monospace; font-size:.86rem; }
.kit-pwd-bulk-list th, .kit-pwd-bulk-list td { padding:9px 14px; text-align:left; }
.kit-pwd-bulk-list th { background:#EDE5F8; color:#3d1f6e; font-weight:700; font-size:.7rem; text-transform:uppercase; letter-spacing:.04em; position:sticky; top:0; font-family:'Poppins',sans-serif; }
.kit-pwd-bulk-list tr { border-bottom:1px solid #E5DDF0; }
.kit-pwd-bulk-list tr:last-child { border-bottom:none; }
.kit-pwd-bulk-list td.num { color:var(--text-3); width:48px; }
.kit-pwd-bulk-list td.pwd { color:#1a0a30; font-weight:600; word-break:break-all; }
.kit-pwd-bulk-list td button { background:transparent; border:0; color:var(--accent-text, #7B2FBE); cursor:pointer; font-size:.78rem; }
.kit-pwd-bulk-list td button:hover { text-decoration:underline; }

.kit-pwd-help { font-size:.82rem; color:#5b3d8a; margin-top:14px; line-height:1.5; }
.kit-pwd-help code { background:#F5F0FC; padding:2px 6px; border-radius:4px; font-size:.85em; }
