:root{color:#1a1a2e;font-synthesis:none;text-rendering:optimizelegibility;--surface:#fff;--text:#1a1a2e;--muted:#646b78;--line:#e2e7eb;--accent:#7ec0d0;--button:#376675;--hover:#f0f6f8;--input:#fcfdfe;--notice:#f8f5ed;--notice-text:#70571b;background:#fafbfc;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:20rem;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button,input{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:2px solid var(--button);outline-offset:3px;box-shadow:0 0 0 5px #7ec0d044}button{color:inherit}button svg{flex:none}p{margin:0 0 1rem;line-height:1.65}h1,h2,h3{margin:0 0 .75rem;font-weight:450;line-height:1.25}h1{letter-spacing:-.035em;font-size:clamp(1.625rem,4vw,2rem)}h2{letter-spacing:-.02em;font-size:1.25rem}h3{font-size:1.125rem}.app-shell{width:min(100% - 3rem,42rem);margin:0 auto;padding:2rem 0}html:has(.app-shell.large-text){font-size:112.5%}.page-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.brand{letter-spacing:-.025em;align-items:center;gap:.65rem;display:flex}.brand svg{color:var(--button)}.header-actions{align-items:center;gap:.25rem;display:flex}.card{border:1px solid var(--line);background:var(--surface);border-radius:.75rem;padding:2.5rem;box-shadow:0 8px 36px #1a1a2e04}.eyebrow{color:var(--muted);align-items:center;gap:.4rem;margin-bottom:2rem;font-size:.8125rem;display:flex}.eyebrow svg{color:var(--button)}.intro{margin-bottom:1.5rem}.intro:last-child{margin-bottom:0}.lede{color:var(--muted);max-width:34rem}.intro form{margin-top:2rem}.field{flex-direction:column;gap:.5rem;display:flex}.field label{font-size:.9375rem;font-weight:500}.password-field{align-items:center;display:flex;position:relative}.password-field input{border:1px solid var(--line);width:100%;min-width:0;min-height:3.25rem;color:var(--text);background:var(--input);border-radius:.4rem;padding:.75rem 3.5rem .75rem 1rem}.password-field input:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 5px #7ec0d044}.password-field>button{color:var(--muted);position:absolute;right:.25rem}.icon-button,.quiet-button,.primary-button{border:0;border-radius:2rem;justify-content:center;align-items:center;gap:.5rem;min-width:2.75rem;min-height:2.75rem;text-decoration:none;transition:background .16s,transform .16s;display:inline-flex}.icon-button{background:0 0;padding:.625rem}.quiet-button{background:0 0;padding:.5rem .875rem;font-size:.875rem}.icon-button:hover,.quiet-button:hover{background:var(--hover)}.text-size{min-width:2.75rem;padding:.5rem}.primary-button{color:#fff;background:var(--button);padding:.625rem 1.125rem;font-size:.9375rem;font-weight:500}.primary-button:hover:not(:disabled){background:#2b5360;transform:translateY(-1px)}.primary-button:active:not(:disabled){transform:scale(.985)}form>.primary-button{min-width:10.5rem;margin-top:1.25rem}.fine-print{color:var(--muted);margin-top:1.5rem;margin-bottom:0;font-size:.8125rem}.field-hint{color:var(--muted);margin:.75rem 0 0;font-size:.8125rem}.label-row{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.8125rem;display:flex}.tabs{border-bottom:1px solid var(--line);gap:1.5rem;margin-top:2rem;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;justify-content:center;align-items:center;gap:.5rem;margin-bottom:-1px;padding:1rem .125rem;font-size:.9375rem;display:flex}.tabs button[aria-current]{border-bottom-color:var(--accent);color:var(--text)}.tabs button:hover{color:var(--text)}.tab-panel{padding-top:1.5rem}.privacy-note{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:.5rem;margin-top:2rem;padding-top:1.5rem;display:flex}.privacy-note svg{flex:none;margin-top:.15rem}.privacy-note p{margin:0;font-size:.8125rem}.notice{background:var(--notice);color:var(--notice-text);overflow-wrap:anywhere;border-radius:.4rem;align-items:flex-start;gap:.65rem;margin:1.25rem 0 0;padding:1rem;font-size:.9375rem;line-height:1.55;display:flex}.notice svg{flex:none;margin-top:.15rem}.notice.success{background:var(--hover);color:var(--button)}.section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.section-heading h2{margin-bottom:.4rem}.section-heading p{margin:0;font-size:.8125rem}.section-heading>button{flex-shrink:0}.muted{color:var(--muted)}.history-list{margin:0;padding:0;list-style:none}.history-entry{border-bottom:1px solid var(--line);padding:1rem 0}.history-password{justify-content:space-between;align-items:center;gap:.5rem;min-height:2.75rem;display:flex}.history-password code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-size:.9375rem}.history-password button{flex:none}.history-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.25rem .75rem;font-size:.75rem;display:flex}.empty-state{text-align:center;padding:2rem 1rem}.empty-state>svg{color:var(--accent);margin-bottom:1rem}.empty-state p{color:var(--muted);max-width:22rem;margin:0 auto 1rem;font-size:.9375rem}.recovered-state{padding:1rem 0 0}.recovered-state p{font-size:.9375rem}.status-pill{color:var(--button);background:var(--hover);border-radius:2rem;align-items:center;gap:.4rem;margin-bottom:1.5rem;padding:.3rem .75rem;font-size:.8125rem;display:inline-flex}footer{text-align:center;color:var(--muted);margin:1.5rem 0 0;font-size:.75rem;line-height:1.5}.loading{color:var(--muted);align-items:center;gap:.5rem;margin-top:1.5rem;display:flex}.loading svg,.spin{animation:1s linear infinite spin}dialog{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:.75rem;width:min(100% - 2rem,32rem);max-height:calc(100dvh - 3rem);padding:1.5rem;overflow-y:auto;box-shadow:0 1rem 5rem #0002}dialog[open]{animation:.5s cubic-bezier(.2,.8,.2,1) modal-in}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#001a2180}.dialog-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.dialog-header h2{margin:.5rem 0 0}.dialog-header button{flex:none}dialog p{font-size:.9375rem}.dialog-actions{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.check-label{align-items:flex-start;gap:.75rem;padding:.5rem 0;font-size:.9375rem;line-height:1.5;display:flex}.check-label input{width:1.25rem;height:1.25rem;accent-color:var(--button);flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-color-scheme:dark){:root{color:#e6ecf0;--surface:#073642;--text:#e6ecf0;--muted:#aab6c1;--line:#27505b;--hover:#103f4b;--input:#04303c;--notice:#3b3828;--notice-text:#ead7a5;background:#002b36}.brand svg,.eyebrow svg,.status-pill,.notice.success{color:var(--accent)}button:focus-visible,input:focus-visible{outline-color:var(--accent)}}@media (width<=38rem){.app-shell{width:min(100% - 2rem,42rem);padding-top:1rem}.page-header{gap:.5rem;margin-bottom:1rem}.card{padding:1.5rem}.eyebrow{margin-bottom:1.5rem}.tabs{gap:1rem}.tabs button{flex:1}.section-heading{flex-wrap:wrap}.section-heading>button{margin-left:-.875rem}}@media (width<=23rem){.app-shell{width:calc(100% - 1rem)}.card{padding:1rem}.brand{font-size:.875rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (forced-colors:active){button:focus-visible,input:focus-visible{outline:2px solid highlight}.tabs button[aria-current]{border-bottom-color:highlight}}
