#login{position:fixed;inset:0;background:var(--bg);display:none;place-items:center;z-index:100}
#login.on{display:grid}
#login form{width:320px;display:flex;flex-direction:column;gap:14px}
#login .err{color:#e5484d;font-size:12px;min-height:16px}
.btn[disabled]{opacity:.5;cursor:wait}
.soon{margin-left:auto;font-size:10px;color:var(--acc);border:1px solid var(--acc-line);border-radius:99px;padding:1px 7px}
.empty{color:var(--dim);font-size:13px;padding:28px 4px;grid-column:1/-1}
.tile .rv{position:absolute;right:8px;top:8px;display:flex;gap:4px;z-index:2}
.tile .rv button{width:26px;height:26px;border-radius:8px;background:rgba(15,15,16,.75);backdrop-filter:blur(6px);font-size:12px}
.tile .rv button.on{background:var(--acc);color:#fff}
.tile.err{display:grid;place-items:center;color:#e5484d;font-size:12px;border:1px dashed #5a2a2c;background:transparent;padding:10px;text-align:center}
.tile .act a.dl{flex:1;text-align:center;background:rgba(15,15,16,.8);backdrop-filter:blur(6px);border-radius:6px;padding:5px;font-size:12px;color:var(--text);text-decoration:none}
.masonry .empty{column-span:all}

.mdl{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:90}
.mdl-box{width:min(420px,92vw);background:var(--card);border:1px solid var(--line2);border-radius:18px;padding:24px}
.mdl-box .row{display:flex;gap:8px}
.pw{background:var(--raised);border:1px solid var(--line2);border-radius:10px;padding:12px 14px;font-size:13px;white-space:pre-wrap;user-select:all}
