:root{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;color:#17332a;background:#f4f7f2}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{border:0;border-radius:.6rem;background:#1e6448;color:white;padding:.65rem .95rem;font-weight:650;cursor:pointer}button:disabled{opacity:.65;cursor:wait}.quiet{background:#e5eee7;color:#244236}.danger{background:#f9e2e0;color:#9b2019}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:1rem;background:radial-gradient(circle at 20% 10%,#d7ead6 0,transparent 32rem)}.card{background:white;border:1px solid #dce7de;border-radius:1rem;box-shadow:0 1rem 3rem #16342b12}.auth-card{width:min(100%,28rem);padding:2.3rem}.auth-card h1{margin:.2rem 0}.auth-card p{color:#587066}.lock{font-size:2rem;color:#1e6448}.auth-card form,.dialog form{display:grid;grid-gap:1rem;gap:1rem;margin-top:1.5rem}label{display:grid;grid-gap:.4rem;gap:.4rem;font-size:.92rem;font-weight:650}input,select,textarea{width:100%;border:1px solid #b8c9ba;background:white;border-radius:.55rem;padding:.65rem;color:#17332a}input:focus,select:focus,textarea:focus{outline:3px solid #badfc7;border-color:#1e6448}.vault-shell{max-width:66rem;margin:auto;padding:2rem 1rem 4rem}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}h1{margin:.1rem 0;font-size:clamp(1.8rem,5vw,2.5rem)}.eyebrow{letter-spacing:.11em;font-size:.7rem;color:#478266;font-weight:700}.toolbar{grid-template-columns:1fr 10rem auto;margin-bottom:1rem}.entry-list,.toolbar{display:grid;grid-gap:.7rem;gap:.7rem}.entry{background:white;border:1px solid #dce7de;border-radius:.85rem;padding:1rem;display:flex;justify-content:space-between;gap:1rem}.entry h2{font-size:1.1rem;margin:.38rem 0}.entry a,.entry p{font-size:.9rem;margin:.3rem 0;color:#527064;word-break:break-word}.entry a{color:#176043}.tag{font-size:.75rem;background:#e1f0e2;color:#326849;border-radius:999px;padding:.18rem .5rem}.entry-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:.4rem;flex-wrap:wrap}.entry-actions button{font-size:.8rem;padding:.45rem .55rem}.empty,.muted{padding:2rem;text-align:center;color:#61776b}.error{color:#a1201b;margin:0;font-size:.9rem}.banner{display:flex;justify-content:space-between;align-items:center;padding:.7rem 1rem;background:#fdeceb;border-radius:.6rem;margin-bottom:1rem}.banner button{background:transparent;color:#a1201b;padding:0}.dialog-backdrop{position:fixed;inset:0;background:#16342b77;display:grid;place-items:center;padding:1rem;z-index:2}.dialog{max-height:92vh;overflow:auto;width:min(100%,38rem);background:white;border-radius:1rem;padding:1.3rem;box-shadow:0 1rem 3rem #16342b33}.dialog-buttons,.dialog-header{display:flex;align-items:center;justify-content:space-between}.dialog-header h2{margin:0}.grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.password-row{display:flex;gap:.5rem}.password-row input{min-width:0}.password-row button{white-space:nowrap}.dialog-buttons{margin-top:.4rem;justify-content:flex-end;gap:.6rem}@media(max-width:620px){.vault-shell{padding:1.2rem .8rem 3rem}.toolbar{grid-template-columns:1fr 1fr}.toolbar button,.toolbar input{grid-column:1/-1}.entry{display:block}.entry-actions{justify-content:flex-start;margin-top:.9rem}.grid{grid-template-columns:1fr}.auth-card{padding:1.5rem}}