@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@500;700&display=swap);:root{--bg:#0b0f14;--bg-grid:rgba(43,217,166,.06);--surface:#151d28;--surface-2:#1b2531;--surface-3:#212d3b;--bg-elev:#10161f;--line:hsla(0,0%,100%,.08);--line-strong:hsla(0,0%,100%,.16);--text:#e8eef5;--text-muted:#93a1b0;--text-faint:#66727f;--accent:#2bd9a6;--accent-strong:#17b98c;--accent-ink:#04150f;--cyan:#38cfe0;--danger:#ff6b6b;--warn:#ffb454;--ok:#2bd9a6;--radius:16px;--radius-sm:10px;--radius-pill:999px;--shadow:0 18px 50px -20px rgba(0,0,0,.75);--shadow-sm:0 6px 20px -10px rgba(0,0,0,.6);--ring:0 0 0 3px rgba(43,217,166,.35);--maxw:1080px;--nav-h:68px;--pad:clamp(1rem,4vw,2.5rem);--font-display:"Space Grotesk",system-ui,-apple-system,sans-serif;--font-body:"Inter",system-ui,-apple-system,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,monospace}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0b0f14;background-color:var(--bg);background-image:linear-gradient(rgba(43,217,166,.06) 1px,transparent 0),linear-gradient(90deg,rgba(43,217,166,.06) 1px,transparent 0),radial-gradient(1200px 600px at 50% -10%,rgba(43,217,166,.08),transparent 60%);background-image:linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px),radial-gradient(1200px 600px at 50% -10%,rgba(43,217,166,.08),transparent 60%);background-size:48px 48px,48px 48px,100% 100%;color:#e8eef5;color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;font-family:var(--font-body);margin:0;min-height:100vh}#root{width:100%}code,kbd{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-family:var(--font-mono)}::selection{background:rgba(43,217,166,.28);color:#fff}body,html{margin:0;padding:0}#App{min-height:100vh}#content{align-items:center;color:var(--text);display:flex;flex-direction:column;font-family:var(--font-body);min-height:calc(100vh - var(--nav-h));padding:calc(var(--nav-h) + 2.5rem) var(--pad) 3.5rem}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;line-height:1.1;margin:0 0 .5rem}p{color:var(--text-muted);line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{border-radius:var(--radius-sm);box-shadow:var(--ring);outline:none}.container{margin-inline:auto;max-width:var(--maxw);width:100%}.eyebrow{align-items:center;color:var(--accent);display:inline-flex;font-family:var(--font-mono);font-size:.72rem;font-weight:700;gap:.5rem;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before{background:var(--accent);border-radius:2px;box-shadow:0 0 12px var(--accent);content:"";height:8px;width:8px}.card{background:linear-gradient(180deg,var(--surface),var(--surface));background:linear-gradient(180deg,var(--surface),var(--bg-elev,var(--surface)));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}button{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-family:var(--font-body);font-size:.95rem;font-weight:600;padding:.7rem 1.2rem;transition:background .18s ease,box-shadow .18s ease,border-color .18s ease,-webkit-transform .12s ease;transition:transform .12s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease;transition:transform .12s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease,-webkit-transform .12s ease}button:hover{background:var(--surface-3);border-color:var(--line-strong)}button:active{-webkit-transform:translateY(1px);transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:linear-gradient(180deg,var(--accent),var(--accent-strong));border:none;box-shadow:0 8px 24px -10px rgba(43,217,166,.7);color:var(--accent-ink)}.btn-primary:hover{background:linear-gradient(180deg,#3ce7b6,var(--accent));box-shadow:0 12px 30px -10px rgba(43,217,166,.85)}.btn-ghost{background:transparent;border:1px solid var(--line-strong)}.btn-ghost:hover{background:var(--surface-2)}.btn-block,input{width:100%}input{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-body);font-size:1rem;padding:.8rem 1rem;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}input::-webkit-input-placeholder{color:var(--text-faint)}input::placeholder{color:var(--text-faint)}input:focus{background:var(--surface);border-color:var(--accent);box-shadow:var(--ring);outline:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.secret{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);cursor:copy;font-family:var(--font-mono);font-weight:500;letter-spacing:.02em;padding:.6rem .9rem;position:relative;transition:border-color .18s ease,background .18s ease,color .18s ease}.secret:hover{border-color:var(--accent);color:var(--accent)}.secret:after{color:var(--text-faint);content:"copy";font-family:var(--font-mono);font-size:.62rem;letter-spacing:.12em;opacity:0;position:absolute;right:.7rem;text-transform:uppercase;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);transition:opacity .18s ease}.secret:hover:after{opacity:1}.secret:active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.notice{border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;padding:.65rem .9rem;width:100%}.notice-error{background:hsla(0,100%,71%,.12);border:1px solid hsla(0,100%,71%,.4);color:#ffd7d7}.AuthVerify,.LogOut{color:var(--text-muted);margin-top:4rem;text-align:center}@media(prefers-reduced-motion:reduce){*,:after,:before{-webkit-animation-duration:.001ms!important;animation-duration:.001ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.Home{display:flex;flex-direction:column;gap:clamp(2.5rem,6vw,4.5rem);width:100%}.Home .hero{grid-gap:clamp(1.5rem,5vw,3.5rem);align-items:center;display:grid;gap:clamp(1.5rem,5vw,3.5rem);grid-template-columns:1.1fr .9fr;padding-top:clamp(1rem,4vw,2.5rem)}.Home .hero-copy h1{font-size:clamp(2.4rem,6vw,4rem);margin:.6rem 0 1rem}.Home .lede{color:var(--text-muted);font-size:clamp(1.02rem,1.6vw,1.2rem);max-width:42ch}.Home .hero-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.Home .hero-cta button{font-size:1rem;padding:.85rem 1.5rem}.Home .vault-demo{display:flex;flex-direction:column;gap:.9rem;padding:1.25rem}.Home .vault-demo-head{align-items:center;display:flex;gap:.4rem}.Home .vault-demo-head .dot{background:var(--surface-3);border-radius:50%;height:10px;width:10px}.Home .vault-demo-title{color:var(--text-muted);font-family:var(--font-mono);font-size:.8rem;margin-left:auto}.Home .demo-secret{cursor:default;font-size:1.15rem;letter-spacing:.25em}.Home .demo-secret:after{content:none}.Home .strength{display:flex;font-size:.8rem;justify-content:space-between}.Home .strength-label{color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase}.Home .strength-value{color:var(--accent);font-weight:600}.Home .strength-bar{background:var(--surface-2);border-radius:var(--radius-pill);height:8px;overflow:hidden}.Home .strength-bar span{-webkit-animation:fill 1.1s ease-out both;animation:fill 1.1s ease-out both;background:linear-gradient(90deg,var(--danger),var(--warn) 45%,var(--ok));border-radius:inherit;display:block;height:100%}@-webkit-keyframes fill{0%{width:0!important}}@keyframes fill{0%{width:0!important}}.Home .features{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(3,1fr)}.Home .feature{display:flex;flex-direction:column;gap:.35rem;padding:1.5rem}.Home .feature-num{color:var(--accent);font-family:var(--font-mono);font-size:.8rem;font-weight:700;letter-spacing:.1em}.Home .feature h3{font-size:1.2rem;margin:.3rem 0 .1rem}.Home .feature p{font-size:.95rem;margin:0}@media(max-width:860px){.Home .hero{grid-template-columns:1fr}.Home .vault-demo{order:-1}.Home .features{grid-template-columns:1fr}}.passwordGenerator{display:flex;flex-direction:column;gap:1.5rem;max-width:720px;width:100%}.gen-head{text-align:left}.gen-head h1{font-size:clamp(1.7rem,5vw,2.4rem);margin:.4rem 0 .25rem}.gen-head p{margin:0}.gen-grid{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:1.4fr .9fr}.passwordContainer{display:flex;flex-direction:column;gap:.6rem;max-height:46vh;overflow-y:auto;padding:1rem}.passwordContainer .secret{font-size:1rem;text-align:left}.passwordContainer::-webkit-scrollbar{width:10px}.passwordContainer::-webkit-scrollbar-thumb{background:var(--surface-3);border:2px solid var(--surface);border-radius:var(--radius-pill)}.submit{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;position:-webkit-sticky;position:sticky;top:calc(var(--nav-h) + 1.5rem)}.submit .field>span{color:var(--text-muted);font-size:.8rem;font-weight:600}.submit input{text-align:center}.genButton{margin-top:.25rem}.gen-status{margin-top:4rem;text-align:center}.gen-status h1{color:var(--text-muted);font-size:1.5rem;font-weight:500}@media(max-width:680px){.gen-grid{grid-template-columns:1fr}.submit{order:-1;position:static}}.auth{display:flex;flex-direction:column;gap:1rem;margin-top:clamp(1rem,6vh,4rem);max-width:420px;padding:clamp(1.5rem,4vw,2.25rem);width:100%}.auth h2{font-size:1.7rem;margin:.35rem 0 .25rem}.field{display:flex;flex-direction:column;gap:.4rem}.field>span{color:var(--text-muted);font-size:.8rem;font-weight:600;letter-spacing:.04em}.auth .btn-block{margin-top:.4rem}.auth-alt{color:var(--text-muted);font-size:.9rem;margin:.25rem 0 0;text-align:center}.auth-status{margin-top:4rem;text-align:center}.auth-status h3{color:var(--text-muted);font-weight:500}#passListContainer{display:flex;flex-direction:column;gap:1.25rem;max-width:640px;width:100%}.vault-head h1{font-size:clamp(1.7rem,5vw,2.4rem);margin:.4rem 0 .25rem}.vault-head p{margin:0}#passList{padding:.5rem}.passContainer{display:flex;flex-direction:column;list-style:none;margin:0;max-height:42vh;overflow-y:auto;padding:0}.passContainer::-webkit-scrollbar{width:10px}.passContainer::-webkit-scrollbar-thumb{background:var(--surface-3);border:2px solid var(--surface);border-radius:var(--radius-pill)}.pass-row{align-items:center;border-radius:var(--radius-sm);display:flex;gap:1rem;padding:.6rem}.pass-row+.pass-row{border-top:1px solid var(--line)}.pass-name{color:var(--text);flex:0 0 38%;font-weight:600;white-space:nowrap}.pass-name,.pass-row .secret{overflow:hidden;text-overflow:ellipsis}.pass-row .secret{flex:1 1 auto;text-align:left}.pass-empty{color:var(--text-faint);list-style:none;padding:2rem 1rem;text-align:center}#registerPass{padding:1.25rem}#registerPass h4{font-size:1.05rem;margin:0 0 .9rem}.inputContainer{grid-gap:.6rem;align-items:center;display:grid;gap:.6rem;grid-template-columns:1.4fr 1fr auto auto}.mp-card{display:flex;flex-direction:column;gap:.85rem;margin-top:clamp(1rem,6vh,4rem);max-width:440px;padding:clamp(1.5rem,4vw,2.25rem);width:100%}.mp-card h3{font-size:1.4rem;margin:.3rem 0 0}.mp-card p{font-size:.92rem;margin:0 0 .4rem}.vault-status{margin-top:4rem;text-align:center}.vault-status h3{color:var(--text-muted);font-weight:500}@media(max-width:620px){.inputContainer{grid-template-columns:1fr 1fr}.inputContainer input:first-child{grid-column:1/-1}.pass-name{flex-basis:34%}}#profilePage{align-items:flex-start;display:flex;flex-direction:column;gap:.75rem;margin-top:clamp(1rem,6vh,4rem);max-width:460px;padding:clamp(1.75rem,5vw,2.75rem);text-align:left;width:100%}#profilePage .avatar{background:linear-gradient(145deg,var(--accent),var(--cyan));border-radius:18px;box-shadow:0 10px 26px -12px rgba(43,217,166,.8);color:var(--accent-ink);display:grid;font-family:var(--font-display);font-size:1.6rem;font-weight:700;height:64px;margin-bottom:.5rem;place-items:center;width:64px}#profilePage h1{font-size:clamp(1.6rem,4vw,2.1rem);margin:.1rem 0}#profilePage p{margin:0 0 .75rem}#profilePage .profile-actions{display:flex;flex-wrap:wrap;gap:.75rem;width:100%}#profilePage .profile-actions a{flex:1 1 auto}#profilePage .profile-actions button{width:100%}#NavBar{backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);background:rgba(11,15,20,.72);border-bottom:1px solid var(--line);height:var(--nav-h);inset:0 0 auto 0;position:fixed;z-index:20}#NavBar .nav-inner{align-items:center;display:flex;gap:1rem;height:100%;justify-content:space-between;padding-inline:var(--pad)}#NavBar .brand{align-items:center;color:var(--text);display:inline-flex;font-family:var(--font-display);font-size:1.25rem;font-weight:700;gap:.6rem;letter-spacing:-.01em}#NavBar .brand:hover{text-decoration:none}#NavBar .brand-mark{background:linear-gradient(145deg,var(--accent),var(--cyan));border-radius:6px;box-shadow:0 0 16px rgba(43,217,166,.55);height:20px;position:relative;width:20px}#NavBar .brand-mark:after{background:var(--accent-ink);border-radius:2px;content:"";height:4px;inset:6px 6px auto 6px;opacity:.65;position:absolute}#NavBar #links{align-items:center;display:flex;gap:.35rem}#NavBar .navlink{align-items:center;border-radius:var(--radius-pill);color:var(--text-muted);display:inline-flex;font-size:.95rem;font-weight:500;padding:.5rem .95rem;transition:color .18s ease,background .18s ease}#NavBar .navlink:hover{background:var(--surface-2);color:var(--text);text-decoration:none}#NavBar .navlink.active{background:linear-gradient(180deg,var(--accent),var(--accent-strong));color:var(--accent-ink)}#NavBar .nav-toggle{align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);display:none;height:42px;justify-content:center;padding:0;width:42px}#NavBar .burger,#NavBar .burger:after,#NavBar .burger:before{background:var(--text);border-radius:2px;content:"";display:block;height:2px;transition:opacity .2s ease,-webkit-transform .2s ease;transition:transform .2s ease,opacity .2s ease;transition:transform .2s ease,opacity .2s ease,-webkit-transform .2s ease;width:18px}#NavBar .burger{position:relative}#NavBar .burger:before{left:0;position:absolute;top:-6px}#NavBar .burger:after{left:0;position:absolute;top:6px}#NavBar .burger.open{background:transparent}#NavBar .burger.open:before{-webkit-transform:translateY(6px) rotate(45deg);transform:translateY(6px) rotate(45deg)}#NavBar .burger.open:after{-webkit-transform:translateY(-6px) rotate(-45deg);transform:translateY(-6px) rotate(-45deg)}@media(max-width:720px){#NavBar .nav-toggle{display:inline-flex}#NavBar #links{align-items:stretch;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:rgba(11,15,20,.96);border-bottom:1px solid var(--line);flex-direction:column;gap:.25rem;left:0;opacity:0;padding:.75rem var(--pad) 1.1rem;pointer-events:none;position:fixed;right:0;top:var(--nav-h);-webkit-transform:translateY(-8px);transform:translateY(-8px);transition:opacity .18s ease,-webkit-transform .18s ease;transition:opacity .18s ease,transform .18s ease;transition:opacity .18s ease,transform .18s ease,-webkit-transform .18s ease}#NavBar #links.open{opacity:1;pointer-events:auto;-webkit-transform:translateY(0);transform:translateY(0)}#NavBar .navlink{border-radius:var(--radius-sm);padding:.85rem 1rem}}
/*# sourceMappingURL=main.2c1af796.css.map*/