*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{--bg:#f2f2f7;--card:#fff;--text:#1c1c1e;--muted:#8e8e93;--accent:#0a84ff;--line:rgba(0,0,0,.08);--tile-shadow:0 1px 2px rgba(0,0,0,.1),0 4px 12px rgba(0,0,0,.06);--field:rgba(118,118,128,.12);--danger:#ff3b30}@media(prefers-color-scheme:dark){:root{--bg:#0b0b0d;--card:#1c1c1e;--text:#f2f2f7;--muted:#98989f;--line:rgba(255,255,255,.1);--tile-shadow:none;--field:rgba(118,118,128,.24);--danger:#ff453a}}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100vh;font:15px/1.4 -apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,system-ui,sans-serif;touch-action:manipulation}button,input{font:inherit;color:inherit}[hidden]{display:none!important}.bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top,0px) + 10px) 14px 10px;background:var(--bg);background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}.search{flex:1;min-width:0;display:flex;align-items:center;gap:6px;height:40px;padding:0 6px 0 4px;background:var(--field);border-radius:12px}.search:focus-within{box-shadow:0 0 0 2px var(--accent)}.engine{flex:none;width:32px;height:30px;padding:0;margin-left:2px;border:0;border-radius:9px;background:var(--card);color:var(--text);display:grid;place-items:center;box-shadow:0 1px 2px #0000001f;cursor:pointer}.engine svg{width:17px;height:17px;display:block}.search input{flex:1;min-width:0;height:100%;border:0;background:transparent;outline:0;padding:0 2px;font-size:16px}.search input::-webkit-search-cancel-button,.search input::-webkit-search-decoration{-webkit-appearance:none;display:none}.search input::placeholder{color:var(--muted)}.clear{flex:none;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:var(--muted);color:#fff;display:none;place-items:center;cursor:pointer}.clear svg{width:11px;height:11px}.clear.on{display:grid}.acctbtn{flex:none;position:relative;width:40px;height:40px;padding:0;border:0;border-radius:12px;background:var(--field);display:grid;place-items:center;cursor:pointer;color:var(--muted)}.acctbtn svg{width:20px;height:20px}.acctbtn.logged{color:var(--text)}.acctbtn .dot{position:absolute;top:7px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.acctbtn.error .dot{background:var(--danger)}.acctbtn.syncing .dot{animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.textbtn{height:40px;padding:0 14px;border:0;border-radius:12px;background:var(--accent);color:#fff;font-size:14px;font-weight:600;cursor:pointer}main{padding:6px 14px calc(40px + env(safe-area-inset-bottom,0px))}.action{display:flex;align-items:center;gap:10px;width:100%;margin:4px 0 14px;padding:12px 14px;border:0;border-radius:14px;background:var(--card);box-shadow:var(--tile-shadow);text-align:left;cursor:pointer;color:var(--text)}.action .glyph{flex:none;width:32px;height:32px;border-radius:9px;background:var(--accent);color:#fff;display:grid;place-items:center}.action .glyph svg{width:17px;height:17px}.action .wrap{display:flex;flex-direction:column;min-width:0;gap:1px}.action .t{font-size:15px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action .s{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 10px}.tile{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;text-decoration:none;color:var(--text);cursor:pointer;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.iw{position:relative;display:block;width:58px;height:58px}.icon{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:17px;overflow:hidden;background:var(--card);box-shadow:var(--tile-shadow);display:grid;place-items:center;transition:transform .12s}.av{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:25px;font-weight:600;color:#fff}.av span{line-height:1;text-transform:uppercase}.icon img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.icon .emoji{position:relative;font-size:30px;line-height:1}.label{max-width:100%;font-size:11.5px;text-align:center;color:var(--text);opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tile:active .icon{transform:scale(.94)}.tile.ph{opacity:.2}.tile.add .icon{background:transparent;box-shadow:inset 0 0 0 1.5px var(--line);color:var(--muted)}.tile.add .icon svg{width:24px;height:24px}#ghost{position:fixed;z-index:60;left:0;top:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:7px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.28))}#ghost .iw{transform:scale(1.08)}.empty{margin:60px auto 0;max-width:300px;text-align:center;color:var(--muted)}.empty p{font-size:14px;margin:0 0 16px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0006;opacity:0;pointer-events:none;transition:opacity .25s}.scrim.on{opacity:1;pointer-events:auto}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;max-height:88vh;overflow-y:auto;background:var(--card);border-radius:20px 20px 0 0;padding:8px 16px calc(18px + env(safe-area-inset-bottom,0px));transform:translateY(101%);transition:transform .3s cubic-bezier(.32,.72,0,1);box-shadow:0 -8px 30px #0000002e}.sheet.on{transform:none}.grip{width:36px;height:5px;border-radius:3px;background:var(--muted);opacity:.4;margin:4px auto 12px}.sheet h2{margin:0 0 14px;font-size:17px;text-align:center}.field{display:block;margin-bottom:14px}.field>span{display:block;font-size:12.5px;color:var(--muted);margin-bottom:6px}.field input[type=text],.field input[type=url],.field input[type=email],.field input[type=password]{width:100%;height:44px;padding:0 12px;border:0;border-radius:11px;background:var(--field);outline:0;font-size:16px}.field input:focus{box-shadow:0 0 0 2px var(--accent)}.iconrow{display:flex;align-items:center;gap:8px}.preview{flex:none;width:46px;height:46px;border-radius:13px;overflow:hidden;position:relative;background:var(--field);box-shadow:var(--tile-shadow)}.iconrow input[type=text]{flex:1;min-width:0;height:44px;padding:0 12px;border:0;border-radius:11px;background:var(--field);outline:0;font-size:16px}.btn{flex:none;height:38px;padding:0 13px;border:0;border-radius:11px;background:var(--field);font-size:13.5px;font-weight:500;cursor:pointer;color:var(--text)}.btn:disabled{opacity:.5}.btn.primary{background:var(--accent);color:#fff}.btn.danger{background:#ff3b3024;color:var(--danger)}.actions{display:flex;gap:8px;margin-top:18px}.actions .btn{flex:1;height:46px;font-size:15.5px}.actions .btn.danger{flex:none;width:74px}.err{margin:2px 0 0;font-size:12.5px;color:var(--danger)}.syncline{margin:0 0 8px;font-size:14px;text-align:center}.syncline.muted{font-size:12.5px;color:var(--muted)}.tabs{display:flex;gap:6px;margin-bottom:14px;background:var(--field);border-radius:11px;padding:3px}.tabs button{flex:1;height:36px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer}.tabs button.on{background:var(--card);color:var(--text);box-shadow:0 1px 3px #0000001f}.menu{padding:6px 10px calc(10px + env(safe-area-inset-bottom,0px))}.mbtn{display:block;width:100%;height:52px;border:0;border-radius:13px;background:transparent;font-size:16.5px;cursor:pointer;color:var(--text)}.mbtn:active{background:var(--field)}.mbtn.danger{color:var(--danger)}.mbtn.cancel{margin-top:4px;color:var(--muted)}
