.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--bg: #0d0c10;--bg-grad: radial-gradient(ellipse 80% 50% at 50% -10%, #1a1830 0%, #0d0c10 70%);--text: #e0dbd0;--muted: #6a6660;--accent: #c99a0c;--accent-hi: #edb930;--accent-dim: rgba(201, 154, 12, .13);--border: rgba(201, 154, 12, .24);--border-2: rgba(224, 219, 208, .08);--panel: rgba(255, 255, 255, .027);--panel-border: rgba(201, 154, 12, .17);--card-bg: rgba(255, 255, 255, .03);--shadow: 0 0 0 1px rgba(201, 154, 12, .1), 0 24px 48px rgba(0, 0, 0, .65);--glow: 0 0 0 1px rgba(201, 154, 12, .3), 0 0 20px rgba(201, 154, 12, .1);--radius: 6px;--radius-sm: 4px;--max: 1020px;--mono: "JetBrains Mono", ui-monospace, "Cascadia Code", Menlo, monospace;--sans: "JetBrains Mono", ui-monospace, monospace;--s0: #e05454;--s1: #e0882a;--s2: #d4b012;--s3: #7ab52d;--s4: #2db86e;color-scheme:dark}:root[data-theme=light]{--bg: #f5f0e8;--bg-grad: linear-gradient(to bottom, #faf5ec, #ece6d8);--text: #1c1914;--muted: #7c7264;--accent: #8a6a00;--accent-hi: #a37f00;--accent-dim: rgba(138, 106, 0, .1);--border: rgba(138, 106, 0, .3);--border-2: rgba(28, 25, 20, .1);--panel: rgba(0, 0, 0, .03);--panel-border: rgba(138, 106, 0, .2);--card-bg: rgba(255, 255, 255, .65);--shadow: 0 0 0 1px rgba(138, 106, 0, .12), 0 12px 32px rgba(0, 0, 0, .1);--glow: 0 0 0 1px rgba(138, 106, 0, .35), 0 0 12px rgba(138, 106, 0, .08);color-scheme:light}@media(prefers-color-scheme:light){:root:not([data-theme]){--bg: #f5f0e8;--bg-grad: linear-gradient(to bottom, #faf5ec, #ece6d8);--text: #1c1914;--muted: #7c7264;--accent: #8a6a00;--accent-hi: #a37f00;--accent-dim: rgba(138, 106, 0, .1);--border: rgba(138, 106, 0, .3);--border-2: rgba(28, 25, 20, .1);--panel: rgba(0, 0, 0, .03);--panel-border: rgba(138, 106, 0, .2);--card-bg: rgba(255, 255, 255, .65);--shadow: 0 0 0 1px rgba(138, 106, 0, .12), 0 12px 32px rgba(0, 0, 0, .1);--glow: 0 0 0 1px rgba(138, 106, 0, .35), 0 0 12px rgba(138, 106, 0, .08);color-scheme:light}}.menuToggle{display:none;width:36px;height:36px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:transparent;cursor:pointer;color:var(--muted);flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;flex-shrink:0;transition:color .12s,border-color .12s}.menuToggle:hover{color:var(--text);border-color:var(--accent)}.menuToggle span{display:block;width:16px;height:1.5px;background:currentColor;border-radius:1px;transition:transform .22s ease,opacity .12s}header[data-open] .menuToggle span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}header[data-open] .menuToggle span:nth-child(2){opacity:0;transform:scaleX(0)}header[data-open] .menuToggle span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}:root[data-theme=dark] .themeIcon.moon{color:var(--text);opacity:1}:root[data-theme=dark] .themeIcon.sun{opacity:.35}:root[data-theme=light] .themeIcon.sun{color:var(--text);opacity:1}:root[data-theme=light] .themeIcon.moon{opacity:.35}@media(prefers-color-scheme:dark){:root:not([data-theme]) .themeIcon.moon{color:var(--text);opacity:1}:root:not([data-theme]) .themeIcon.sun{opacity:.35}}@media(prefers-color-scheme:light){:root:not([data-theme]) .themeIcon.sun{color:var(--text);opacity:1}:root:not([data-theme]) .themeIcon.moon{opacity:.35}}*,*:before,*:after{box-sizing:border-box}html[data-theme-swap] *,html[data-theme-swap] *:before,html[data-theme-swap] *:after{transition:none!important}html,body{height:100%}body{margin:0;font-family:var(--sans);font-size:14px;background:var(--bg);background-image:var(--bg-grad);background-attachment:fixed;color:var(--text);letter-spacing:.01em;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}a:hover{color:var(--accent-hi)}.container{max-width:var(--max);margin:0 auto;padding:20px 18px 60px;min-height:100vh;display:flex;flex-direction:column}main{flex:1}header{display:flex;align-items:center;justify-content:space-between;padding:14px 0 18px;gap:14px;border-bottom:1px solid var(--border-2);margin-bottom:32px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:12px;text-decoration:none;color:var(--text);letter-spacing:.1em;text-transform:uppercase}.brand:hover{color:var(--accent)}.brand:focus-visible{outline:1px solid var(--accent);outline-offset:4px;border-radius:2px}.lock{width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--border);display:grid;place-items:center;color:var(--accent);background:var(--accent-dim);flex-shrink:0}.lock svg{display:block}.title{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}nav{display:flex;gap:2px;font-size:11px;flex-wrap:wrap;justify-content:flex-end;letter-spacing:.07em;text-transform:uppercase}nav a{text-decoration:none;color:var(--muted);padding:7px 11px;border-radius:var(--radius-sm);transition:color .12s,background .12s}nav a:hover{color:var(--text);background:#ffffff0f}:root[data-theme=light] nav a:hover{background:#0000000f}@media(prefers-color-scheme:light){:root:not([data-theme]) nav a:hover{background:#0000000f}}.themeArea{display:flex;align-items:center;gap:8px}.themeHint{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}.themeIcon{color:var(--muted);opacity:.55}.themeSwitch{display:inline-flex;align-items:center;cursor:pointer;user-select:none}.themeSwitch input{position:absolute;opacity:0;width:1px;height:1px}.themeSwitch .switchUi{width:38px;height:20px;border-radius:2px;border:1px solid var(--border);background:var(--panel);display:block;position:relative;transition:border-color .15s}.themeSwitch .switchUi:after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:1px;background:var(--muted);transition:transform .15s ease,background .15s}.themeSwitch input:checked+.switchUi{border-color:var(--accent)}.themeSwitch input:checked+.switchUi:after{transform:translate(16px);background:var(--accent)}.themeSwitch input:focus-visible+.switchUi{outline:1px solid var(--accent);outline-offset:2px}.hero{text-align:center;padding:8px 0 32px}.hero h1{margin:0;font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1.02;color:var(--text)}.hero h1 em{font-style:normal;color:var(--accent)}.hero p{margin:14px auto 0;max-width:58ch;font-size:13px;color:var(--muted);line-height:1.75}.pageHero{text-align:center;padding:8px 0 24px}.pageHero h1{margin:0;font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.pageHero p{margin:10px auto 0;max-width:62ch;color:var(--muted);font-size:13px;line-height:1.75}.card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;background:var(--card-bg);position:relative}.card:before{content:"";position:absolute;top:0;left:24px;right:24px;height:1px;background:linear-gradient(to right,transparent,var(--accent),transparent);opacity:.55}.small{font-size:12px;color:var(--muted);line-height:1.75}.pwBox{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px;background:#00000038;transition:border-color .18s,box-shadow .18s}.pwBox:hover,.pwBox:focus-within{border-color:var(--accent);box-shadow:var(--glow)}:root[data-theme=light] .pwBox{background:#ffffff80}@media(prefers-color-scheme:light){:root:not([data-theme]) .pwBox{background:#ffffff80}}.pwInput{width:100%;border:none;outline:none;background:transparent;font-family:var(--mono);font-size:30px;font-weight:700;color:var(--text);line-height:1.2;letter-spacing:.04em;min-width:0}.pwInput::placeholder{color:var(--border)}.pwInput::selection{background:var(--accent-dim)}.iconBtn{width:40px;height:40px;border-radius:var(--radius-sm);border:1px solid var(--border-2);background:transparent;cursor:pointer;display:grid;place-items:center;color:var(--muted);transition:color .12s,border-color .12s,background .12s;flex-shrink:0}.iconBtn:hover{color:var(--text);border-color:var(--accent);background:var(--accent-dim)}.iconBtn:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.primaryBtn{height:40px;padding:0 16px;border-radius:var(--radius-sm);border:1px solid var(--accent);background:var(--accent-dim);color:var(--accent-hi);font-weight:700;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.primaryBtn:hover{background:var(--accent);color:#0d0c10}:root[data-theme=light] .primaryBtn:hover{color:#fff}@media(prefers-color-scheme:light){:root:not([data-theme]) .primaryBtn:hover{color:#fff}}.primaryBtn:focus-visible{outline:1px solid var(--accent-hi);outline-offset:2px}.copyToast{grid-column:1 / -1;justify-self:end;margin-top:-4px;font-size:11px;color:var(--accent);letter-spacing:.06em;text-transform:uppercase}.strengthRow{margin-top:12px;display:flex;align-items:center;gap:12px}.strengthBar{flex:1;display:flex;gap:3px;align-items:center}.seg{flex:1;height:5px;border-radius:1px;background:var(--border-2);transition:background .25s ease}[data-score="0"] .seg:nth-child(1){background:var(--s0)}[data-score="1"] .seg:nth-child(-n+2){background:var(--s1)}[data-score="2"] .seg:nth-child(-n+3){background:var(--s2)}[data-score="3"] .seg:nth-child(-n+4){background:var(--s3)}[data-score="4"] .seg{background:var(--s4)}.strengthFill{display:none}.strengthLabel{display:flex;align-items:center;gap:10px;min-width:250px;justify-content:flex-end}.badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:2px;background:var(--accent-dim);color:var(--accent);font-weight:700;font-size:10px;border:1px solid var(--border);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.muted{color:var(--muted);font-size:12px}.optionsPanel{margin-top:16px;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);padding:18px}.lenRow{display:grid;grid-template-columns:240px 1fr;gap:18px;align-items:center}.lenTitle{font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}#lenValue{color:var(--accent);font-size:22px;font-weight:800;letter-spacing:0;display:inline-block;margin-left:8px;vertical-align:middle;line-height:1}.lenSlider{width:100%;-webkit-appearance:none;appearance:none;height:4px;background:var(--border-2);border-radius:1px;outline:none;cursor:pointer}.lenSlider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:2px;background:var(--accent);cursor:pointer;border:none;transition:background .12s,transform .12s}.lenSlider::-moz-range-thumb{width:14px;height:14px;border-radius:2px;background:var(--accent);cursor:pointer;border:none}.lenSlider:hover::-webkit-slider-thumb{background:var(--accent-hi);transform:scaleX(1.2)}.lenSlider:hover::-moz-range-thumb{background:var(--accent-hi)}.lenSlider:active::-webkit-slider-thumb{transform:scaleX(1.3)}.optsRow{margin-top:16px;display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:center}.optsTitle{font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.optsChecks{display:flex;gap:20px;flex-wrap:wrap}.chk{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);cursor:pointer;transition:color .12s}.chk:hover{color:var(--accent-hi)}.chk input{width:14px;height:14px;accent-color:var(--accent);border-radius:2px;cursor:pointer;flex-shrink:0}.pageCard{max-width:860px;margin:0 auto}.faqList{display:grid;gap:0}.faqItem{border-bottom:1px solid var(--border-2);transition:border-color .15s}.faqItem:first-child{border-top:1px solid var(--border-2)}.faqItem summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:28px 1fr 20px;align-items:center;gap:14px;padding:16px 4px;font-weight:600;font-size:13px;letter-spacing:.01em;color:var(--text);transition:color .15s;user-select:none}.faqItem summary::-webkit-details-marker{display:none}.faqItem summary::marker{display:none}.faqItem summary:hover{color:var(--accent-hi)}.faqItem summary:focus-visible{outline:1px solid var(--accent);outline-offset:3px;border-radius:2px}.faqItem summary .faq-num{font-size:11px;font-weight:700;color:var(--accent);letter-spacing:.08em;opacity:.7}.faqItem summary .faq-chevron{justify-self:end;color:var(--muted);transition:transform .22s ease,color .15s;flex-shrink:0}.faqItem[open] summary .faq-chevron{transform:rotate(180deg);color:var(--accent)}.faqItem[open] summary{color:var(--accent-hi)}.faqItem[open] summary .faq-num{opacity:1}.faqItem .faq-body{padding:0 4px 18px 42px;color:var(--muted);line-height:1.8;font-size:13px}.footer{margin-top:48px;border-top:1px solid var(--border-2);padding-top:28px;padding-bottom:10px;display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:start}.footer-brand{display:flex;flex-direction:column;gap:6px}.footer-brand-name{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text)}.footer-brand-tagline{font-size:11px;color:var(--muted);letter-spacing:.02em}.footer-nav{display:flex;flex-direction:column;align-items:center;gap:10px}.footer-nav-links{display:flex;gap:20px;flex-wrap:wrap;justify-content:center}.footer-nav-links a{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .12s}.footer-nav-links a:hover{color:var(--accent)}.footer-copy{font-size:10px;color:var(--muted);letter-spacing:.06em;opacity:.6}.footer-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}.footer-meta-line{font-size:10px;color:var(--muted);letter-spacing:.04em;opacity:.7}.footer-status{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.footer-status-dot{width:5px;height:5px;border-radius:50%;background:#2db86e}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}@media(max-width:900px){.hero h1{font-size:36px}.strengthLabel{min-width:auto;justify-content:flex-start}}@media(max-width:820px){.menuToggle{display:flex}.themeArea{gap:5px}.brand{flex:1}header{position:relative;align-items:center}header nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:200;flex-direction:column;flex-wrap:nowrap;gap:0;background:var(--bg);border-bottom:1px solid var(--border-2);padding:6px 0 10px;box-shadow:0 12px 32px #00000080;margin-left:-18px;width:calc(100% + 36px)}header[data-open] nav{display:flex}header nav a{font-size:13px;letter-spacing:.06em;padding:11px 18px;border-bottom:1px solid var(--border-2);color:var(--text);white-space:normal;text-transform:uppercase}header nav a:last-child{border-bottom:none}header nav a:hover{color:var(--accent);background:#ffffff08}.pwBox{grid-template-columns:1fr auto auto}.pwInput{font-size:20px}.lenRow,.optsRow{grid-template-columns:1fr}}@media(max-width:640px){.strengthRow{flex-wrap:wrap;gap:8px}.strengthBar{width:100%}.optsChecks{gap:12px}.footer{grid-template-columns:1fr;gap:20px;text-align:center}.footer-brand{align-items:center}.footer-meta{align-items:center;text-align:center}.footer-nav{align-items:center}}@media(max-width:520px){.hero h1{font-size:28px}.hero p{font-size:12px}.container{padding:14px 14px 40px}header nav{margin-left:-14px;width:calc(100% + 28px)}header nav a{padding:11px 14px}.card{padding:16px}.optionsPanel{padding:14px}.pwInput{font-size:17px}.presetsStrip{gap:6px}.presetBtn{padding:5px 10px;font-size:10px}.pageHero h1{font-size:24px}}@media(max-width:380px){.container{padding:10px 10px 32px}header nav{margin-left:-10px;width:calc(100% + 20px)}header nav a{padding:11px 10px}.card{padding:12px}.optionsPanel{padding:12px;gap:0}.lock{width:24px;height:24px}.lock svg{width:15px;height:15px}.title{font-size:10px;letter-spacing:.07em}.hero{padding:6px 0 22px}.hero h1{font-size:22px}.pageHero h1{font-size:20px}.pwBox{padding:10px;gap:7px}.pwInput{font-size:14px;letter-spacing:.02em}.iconBtn{width:34px;height:34px}.primaryBtn{height:34px;padding:0 11px;font-size:10px}.badge{font-size:9px;padding:2px 7px}.muted{font-size:11px}#lenValue{font-size:18px}.chk{font-size:12px}.optsChecks{gap:10px}.presetBtn{padding:4px 8px;font-size:10px}.faqItem summary{padding:13px 2px;font-size:12px}.faqItem summary .faq-num{font-size:10px}.faqItem .faq-body{font-size:12px;padding-bottom:14px}}.offlineBadge{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);letter-spacing:.04em;margin-bottom:10px}.offlineDot{width:6px;height:6px;border-radius:50%;background:#2db86e;box-shadow:0 0 #2db86e66;animation:pulseDot 2s infinite}@keyframes pulseDot{0%,to{box-shadow:0 0 #2db86e59}50%{box-shadow:0 0 0 5px #2db86e00}}.presetsStrip{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.presetBtn{font-size:11px;font-family:var(--mono);letter-spacing:.06em;padding:5px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:border-color .12s,color .12s,background .12s;text-transform:uppercase}.presetBtn:hover{border-color:var(--accent);color:var(--accent-hi);background:var(--accent-dim)}.suggestionsList{list-style:none;margin:6px 0 0;padding:0}.suggestionsList li{font-size:12px;color:var(--muted);margin-top:3px;line-height:1.5}.suggestionsList li:before{content:"›  ";color:var(--accent)}.customExcludeInput{font-family:var(--mono);font-size:13px;width:100%;box-sizing:border-box;background:transparent;border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text);padding:6px 10px;transition:border-color .12s,outline .12s}.customExcludeInput:focus{outline:1px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.selectInput{font-family:var(--mono);font-size:13px;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text);padding:7px 32px 7px 10px;cursor:pointer;-webkit-appearance:none;appearance:none;color-scheme:dark;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c99a0c' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px;transition:border-color .12s,outline .12s;min-width:160px}.selectInput:focus{outline:1px solid var(--accent);outline-offset:2px;border-color:var(--accent)}:root[data-theme=light] .selectInput,:root:not([data-theme]) .selectInput{background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a6a00' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");color-scheme:light}@media(prefers-color-scheme:light){:root:not([data-theme]) .selectInput{background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a6a00' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");color-scheme:light}}.infoCard{border-left:2px solid var(--accent);padding-left:16px;margin:16px 0}.infoCard h4{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.infoCard p{margin:0;font-size:13px;color:var(--muted);line-height:1.8}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
