:root{--ink: #14231c;--ink-soft: #3d5248;--paper: #f3efe6;--paper-2: #e7e0d2;--leaf: #1b3a2f;--leaf-mid: #2f5d4a;--mint: #7cb89a;--line: rgba(20, 35, 28, .14);--ok: #2f6b4f;--danger: #9b3b32;--warn: #8a6a2a;--shadow: 0 18px 40px rgba(20, 35, 28, .12);--font-display: "Fraunces", Georgia, serif;--font-body: "Manrope", "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace;--max: 760px;--radius: 14px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:var(--font-body);color:var(--ink);background:radial-gradient(ellipse 80% 50% at 10% -10%,rgba(124,184,154,.35),transparent 55%),radial-gradient(ellipse 70% 45% at 100% 0%,rgba(47,93,74,.18),transparent 50%),linear-gradient(180deg,#f7f3ea 0%,var(--paper) 45%,#ebe4d6 100%);background-attachment:fixed}a{color:var(--leaf-mid)}button,input,textarea{font:inherit}#app{min-height:100vh}.shell{width:min(100% - 2rem,var(--max));margin:0 auto;padding:1.25rem 0 3rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.75rem;animation:rise .5s ease both}.brand{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-display);font-weight:700;font-size:1.65rem;letter-spacing:-.02em;color:var(--leaf);text-decoration:none;min-width:0}.brand-mark{display:block;width:auto;height:2.15rem;flex:0 0 auto}.brand-word{line-height:1}.brand-word span{color:var(--mint)}.brand-editor .brand-mark{height:1.7rem}.hero-brand{display:flex;flex-direction:column;align-items:center;gap:.65rem;margin-bottom:.75rem}.logo-compare{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem 2rem;width:100%;animation:rise .65s ease both}.logo-option{margin:0;display:grid;gap:.45rem;justify-items:center;min-width:0}.logo-option figcaption{font-size:.78rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.hero-mark{width:min(38vw,148px);height:auto;display:block;filter:drop-shadow(0 10px 22px rgba(20,35,28,.14))}.hero-mark-proposed{filter:drop-shadow(0 8px 16px rgba(20,35,28,.1));background:#fffcf68c;border-radius:18px;padding:.55rem .7rem;border:1px solid var(--line)}.hero-brand h1{margin:0}.hero-brand h1 span{color:var(--mint)}.nav-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.hero{text-align:center;padding:2.5rem 0 2rem;animation:rise .7s ease both}.hero h1{font-family:var(--font-display);font-size:clamp(2.4rem,6vw,3.6rem);font-weight:700;line-height:1.05;letter-spacing:-.03em;color:var(--leaf);margin:0 0 .75rem}.hero p{margin:0 auto 1.5rem;max-width:34rem;color:var(--ink-soft);font-size:1.05rem;line-height:1.55}.panel{background:#fffcf6d1;border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.35rem;box-shadow:var(--shadow);animation:rise .6s ease both}.panel h2{font-family:var(--font-display);font-size:1.45rem;margin:0 0 .85rem;color:var(--leaf)}.stack{display:grid;gap:.85rem}label{display:grid;gap:.35rem;font-size:.92rem;font-weight:600;color:var(--ink-soft)}input[type=email],input[type=password],input[type=text],textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:.7rem .85rem;background:#fffdf8;color:var(--ink)}textarea{min-height:280px;resize:vertical;line-height:1.5}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:999px;padding:.65rem 1.15rem;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;transition:transform .16s ease,background .16s ease,border-color .16s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:var(--leaf);color:#f4f7f4}.btn-primary:hover{background:var(--leaf-mid)}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn-danger{background:transparent;border-color:#9b3b3259;color:var(--danger)}.muted{color:var(--ink-soft);font-size:.92rem;line-height:1.45}.notice{padding:.75rem .9rem;border-radius:10px;background:#2f5d4a14;border:1px solid rgba(47,93,74,.18);color:var(--ink-soft);font-size:.9rem;line-height:1.45}.error{color:var(--danger);font-size:.92rem}.ok{color:var(--ok);font-size:.92rem}.create-vault{margin-bottom:1.25rem;padding-bottom:1.1rem;border-bottom:1px solid var(--line)}.create-heading{font-family:var(--font-display);font-size:1.15rem;margin:0;color:var(--leaf)}.field-label{display:block;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.45rem}.path-row{display:flex;gap:.5rem;align-items:stretch}.path-prefix{display:flex;align-items:center;padding:0 .75rem;background:var(--paper-2);border:1px solid var(--line);border-radius:10px;color:var(--ink-soft);font-family:var(--font-mono);font-size:.85rem;white-space:nowrap}.path-input{width:100%;border:1px solid var(--line);border-radius:10px;background:#fffdf8;color:var(--ink);padding:.7rem .85rem;font-family:var(--font-mono);font-size:1rem}.path-input:focus,.note-body:focus{outline:2px solid rgba(47,93,74,.4);outline-offset:1px}.vault-list{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.55rem}.vault-row{display:flex;align-items:stretch;gap:.5rem}.vault-link{flex:1 1 auto;min-width:0;display:flex;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-radius:12px;text-decoration:none;color:inherit;border:1px solid var(--line);background:#fffcf6b3;transition:border-color .16s ease,background .16s ease}.vault-link:hover{border-color:#2f5d4a59;background:#fff}.vault-link strong{font-weight:650;font-family:var(--font-mono)}.vault-rename{flex:0 0 auto;align-self:center;padding:.45rem .9rem}body:has(.shell-editor){height:100vh;height:100dvh;overflow:hidden}#app:has(.shell-editor){height:100vh;height:100dvh;min-height:0}.shell-editor{width:100%;max-width:none;height:100vh;height:100dvh;margin:0;padding:.55rem .9rem .4rem;display:flex;flex-direction:column;gap:.45rem;overflow:hidden}.shell-editor .footer-links{margin-top:0;flex:0 0 auto;animation:none}.brand-editor{font-size:1.25rem;flex:0 0 auto}.editor-top{display:flex;flex-wrap:nowrap;gap:.85rem;align-items:center;margin:0;flex:0 0 auto}.editor-meta{display:flex;align-items:center;gap:.45rem;min-width:0;flex:0 1 auto;max-width:42%}.editor-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:.4rem;margin-left:auto;flex:1 1 auto;min-width:0;justify-content:flex-end}.editor-actions .btn{padding:.45rem .75rem;white-space:nowrap}.vault-path{font-family:var(--font-mono);font-size:.92rem;color:var(--ink-soft);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-cell-link{flex:0 0 auto;width:1.7rem;height:1.7rem;padding:0;border:0;background:transparent;color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px}.copy-cell-link:hover,.copy-cell-link:focus-visible{color:var(--leaf);background:#2f5d4a14;outline:none}.copy-cell-link.is-copied{color:var(--ok)}.sync-pill{display:inline-flex;align-items:center;flex:0 0 auto;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap}.sync-pill.saved{color:var(--ok)}.sync-pill.unsaved{color:var(--warn)}.sync-pill.saving{color:var(--leaf-mid)}.sync-pill.conflict{color:var(--danger)}.editor-find{display:flex;align-items:center;flex:1 1 auto;width:auto;min-width:8rem;max-width:28rem;margin:0;gap:.15rem;padding:0 .15rem 0 .5rem;border:1px solid var(--line);border-radius:999px;background:#fffcf6d9;color:var(--ink-soft)}.find-glass{flex:0 0 auto;color:var(--ink-soft)}.editor-find input{flex:1 1 auto;width:0;min-width:0;margin:0;padding:.45rem .25rem;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:400}.editor-find input:focus{outline:none}.find-tools{display:flex;align-items:center;flex:0 0 auto;gap:.05rem}.find-tools[hidden]{display:none!important}.find-count{color:var(--ink-soft);font-size:.78rem;font-variant-numeric:tabular-nums;min-width:3.4rem;text-align:right;padding-right:.15rem}.find-step{width:1.7rem;height:1.7rem;padding:0;border:0;background:transparent;color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:999px}.find-step:hover,.find-step:focus-visible{color:var(--leaf);background:#2f5d4a14;outline:none}.find-step:disabled{opacity:.35;cursor:default}.tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;flex:0 0 auto}.tab{border:1px solid var(--line);background:#fffcf6b3;border-radius:999px;padding:.35rem .8rem;cursor:pointer;font-size:.88rem}.tab.active{background:var(--leaf);border-color:var(--leaf);color:#f4f7f4}.note-frame{position:relative;flex:1 1 auto;min-height:0;display:flex;background:#fffdf8;border:1px solid var(--line);border-radius:12px;overflow:hidden}.note-mirror,.note-body{font-size:1rem;line-height:1.55;padding:1rem;white-space:pre-wrap;overflow-wrap:break-word}.note-mirror{position:absolute;top:0;right:0;bottom:0;left:0;overflow-x:hidden;overflow-y:scroll;pointer-events:none;color:var(--ink);scrollbar-color:transparent transparent}.note-mirror[hidden]{display:none!important}.note-mirror mark{background:#7cb89a73;color:var(--ink);padding:0}.note-mirror mark.current{background:var(--leaf);color:#f4f7f4}.note-body{width:100%;flex:1 1 auto;min-height:0;height:auto;resize:none;overflow-x:hidden;overflow-y:scroll;border:0;border-radius:0;background:transparent;color:var(--ink);padding:1rem}.note-body.is-finding{color:transparent;caret-color:var(--ink)}.row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.status-dot{font-size:.85rem;color:var(--ink-soft)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14231c7a;display:grid;place-items:center;padding:1rem;z-index:40;animation:fade .18s ease both}.modal{position:relative;width:min(100%,420px);max-width:100%;background:#fffdf8;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.35rem 1.25rem 1.25rem;animation:pop .22s ease both}.modal-close{position:absolute;top:.55rem;right:.55rem;width:2.1rem;height:2.1rem;padding:0;border:0;border-radius:8px;background:transparent;color:var(--ink-soft);font-size:1.45rem;line-height:1;cursor:pointer}.modal-close:hover,.modal-close:focus-visible{color:var(--leaf);background:#2f5d4a14;outline:none}.modal h2{font-family:var(--font-display);margin:0 0 .75rem;padding-right:1.75rem;font-size:1.45rem;color:var(--leaf)}.modal .notice{margin:0 0 1rem}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.turnstile-wrap{display:grid;gap:.4rem}.turnstile-slot{min-height:65px}.turnstile-slot iframe{max-width:100%}.hint{margin:0;font-size:.88rem;color:var(--ink-soft);line-height:1.45}.page{animation:rise .5s ease both;background:#fffcf6e6;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.3rem 1.4rem;box-shadow:var(--shadow)}.page a{color:var(--leaf-mid)}.page h1{font-family:var(--font-display);font-size:clamp(1.8rem,5vw,2.4rem);margin:.5rem 0 .75rem;color:var(--leaf)}.page h2{font-family:var(--font-display);font-size:1.45rem;margin:1.5rem 0 .65rem;color:var(--leaf)}.page ul{margin:.2rem 0 1rem;padding-left:1.25rem}.page p,.page li{line-height:1.6;color:var(--ink-soft)}.cipher-sample{font-family:var(--font-mono);font-size:.92em;word-break:break-all}.coffee-head{display:flex;align-items:center;gap:.85rem;margin:.25rem 0 .85rem}.coffee-head h1{margin:0}.coffee-cup{flex:0 0 auto}.footer-links{margin-top:2.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem 1.25rem;font-size:.88rem;text-align:center;animation:rise 1s .16s ease both}.footer-links a{color:var(--leaf-mid);text-decoration:none;font-weight:500}.footer-links a:hover,.footer-links a:focus-visible,.footer-links a[aria-current=page]{color:var(--leaf);text-decoration:underline}@media(max-width:560px){.hero{padding-top:1.25rem}.panel{padding:1rem}.path-row{flex-direction:column}.path-prefix{justify-content:flex-start}.vault-row{flex-wrap:wrap}}@media(max-width:760px){.editor-top{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"brand meta" "actions actions";align-items:center;column-gap:.55rem;row-gap:.55rem}.brand-editor{grid-area:brand}.editor-meta{grid-area:meta;width:100%;min-width:0;max-width:none}.sync-pill{margin-left:auto}.editor-actions{grid-area:actions;width:100%;margin-left:0;flex-wrap:nowrap;justify-content:flex-start;max-width:100%}.editor-find{flex:1 1 auto;width:auto;min-width:0;max-width:none;min-height:44px}.editor-find input,.find-step{min-height:44px}.tabs{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden}.tab{flex:0 0 auto}.shell:not(.shell-editor){padding-bottom:11rem}}
