:root{--accent: #007bff;--accent-ink: #ffffff;--accent-soft: #e9f2ff;--bg: #f4f5f6;--panel: #ffffff;--panel-2: #fafbfb;--line: #e4e7e9;--line-strong: #d3d8db;--fg: #17191b;--fg-soft: #5c6469;--muted: #6b7278;--danger: #d13438;--ok: #12805c;--warn: #b26a00;--shadow-sm: 0 1px 2px rgba(18, 24, 28, .05);--shadow: 0 2px 4px rgba(18, 24, 28, .04), 0 12px 32px rgba(18, 24, 28, .07);--glow: radial-gradient(1000px 460px at 50% -140px, rgba(0, 123, 255, .13), transparent 70%);--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--ui: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Roboto, Helvetica, Arial, sans-serif;--radius: 16px;color-scheme:light}html[data-mode=dark]{color-scheme:dark;--bg: #141719;--panel: #1b1f22;--panel-2: #171b1e;--line: #2a3034;--line-strong: #3b4349;--fg: #e7eaec;--fg-soft: #a4aeb6;--muted: #8a949c;--danger: #ff7b7b;--ok: #4ec9a5;--warn: #e0a458;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow: 0 2px 4px rgba(0, 0, 0, .3), 0 12px 32px rgba(0, 0, 0, .4);--glow: radial-gradient(1000px 460px at 50% -140px, rgba(0, 123, 255, .2), transparent 70%);--accent-ink: #ffffff;--accent-soft: color-mix(in srgb, var(--accent) 20%, var(--panel))}*{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:var(--bg);background-image:var(--glow);background-repeat:no-repeat;color:var(--fg);font-family:var(--ui);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.topbar{display:flex;align-items:center;gap:10px;height:60px;padding:0 20px;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--panel) 82%,transparent);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:9px;font-weight:680;font-size:15px;color:var(--fg);letter-spacing:-.01em}.brand:hover{text-decoration:none}.brand-dot{width:11px;height:11px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}.topbar-spacer{flex:1}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;min-width:34px;padding:0 12px;flex:0 0 auto;white-space:nowrap;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--fg-soft);font:inherit;font-size:13px;cursor:pointer;transition:border-color .16s,color .16s,transform .16s}.icon-btn:hover{border-color:var(--line-strong);color:var(--fg);text-decoration:none}.icon-btn:active{transform:scale(.97)}.select{height:34px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--fg-soft);font:inherit;font-size:13px;cursor:pointer}.page{width:min(620px,100% - 32px);margin:44px auto 72px}.page-head{text-align:center;margin-bottom:26px}.page-title{margin:0 0 8px;font-size:30px;font-weight:700;letter-spacing:-.03em}.page-subtitle{margin:0 auto;max-width:30em;color:var(--muted);font-size:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px}.card+.card{margin-top:18px}.card-title{margin:0 0 16px;font-size:15px;font-weight:660;letter-spacing:-.01em}.tabs{display:flex;gap:4px;padding:4px;margin-bottom:22px;background:var(--panel-2);border:1px solid var(--line);border-radius:12px}.tab{flex:1;height:36px;border:0;border-radius:9px;background:transparent;color:var(--fg-soft);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:background .16s,color .16s,box-shadow .16s}.tab:hover{color:var(--fg)}.tab[aria-selected=true]{background:var(--accent);color:var(--accent-ink);font-weight:600;box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 34%,transparent)}.field{display:block;margin-bottom:16px}.field-label{display:block;margin-bottom:7px;font-size:13px;font-weight:500;color:var(--fg-soft)}.input{width:100%;height:44px;padding:0 14px;border:1px solid var(--line-strong);border-radius:10px;background:var(--panel-2);color:var(--fg);font:inherit;transition:border-color .16s,box-shadow .16s,background .16s}.input::placeholder{color:var(--muted)}.input:hover{border-color:color-mix(in srgb,var(--line-strong) 70%,var(--fg-soft))}.input:focus{outline:none;background:var(--panel);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)}.input[aria-invalid=true]{border-color:var(--danger)}.input-row{display:flex;gap:8px}.input-row .input{flex:1}.password-wrap{position:relative;display:block}.password-input{padding-right:46px}.password-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:color .16s,background .16s}.password-toggle:hover{color:var(--fg);background:color-mix(in srgb,var(--fg) 7%,transparent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border:1px solid transparent;border-radius:10px;background:var(--accent);color:var(--accent-ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:filter .16s,transform .16s,box-shadow .16s;white-space:nowrap}.btn:hover:not(:disabled){filter:brightness(1.07);box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 30%,transparent)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.block{width:100%;height:46px;font-size:15px}.btn.ghost{background:var(--panel);border-color:var(--line-strong);color:var(--fg-soft)}.btn.ghost:hover:not(:disabled){color:var(--fg);box-shadow:var(--shadow-sm)}.btn.danger{background:transparent;border-color:color-mix(in srgb,var(--danger) 55%,var(--line));color:var(--danger)}.btn.danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 8%,transparent);box-shadow:none}.hint{margin:16px 0 0;padding:11px 14px;border-radius:10px;background:var(--accent-soft);color:var(--fg-soft);font-size:13px;line-height:1.6}.alert{margin:0 0 16px;padding:11px 14px;border-radius:10px;border:1px solid var(--line-strong);background:var(--panel-2);font-size:13px}.alert.error{border-color:color-mix(in srgb,var(--danger) 40%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--panel));color:var(--danger)}.alert.ok{border-color:color-mix(in srgb,var(--ok) 40%,var(--line));background:color-mix(in srgb,var(--ok) 7%,var(--panel));color:var(--ok)}.legal{margin-top:20px;color:var(--muted);font-size:12px;text-align:center}.kv{display:grid;grid-template-columns:100px 1fr;gap:12px 18px;margin:0}.kv dt{color:var(--muted);font-size:13px}.kv dd{margin:0;word-break:break-all}.list{display:flex;flex-direction:column;gap:10px}.row{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);transition:border-color .16s,background .16s}.row:hover{border-color:var(--line-strong);background:var(--panel)}.share-row{align-items:flex-start}.row-main{flex:1;min-width:0}.row-title{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-sub{color:var(--muted);font-size:12px;margin-top:3px}.share-link{display:inline-block;max-width:100%;margin:4px 0 0;padding:2px 6px 2px 0;border:0;background:transparent;color:var(--accent);font-size:12.5px;text-align:left;cursor:copy;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;transition:color .16s}.share-link:hover{text-decoration:underline}.mono{font-family:var(--mono)}.badge{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:600}.badge.danger{background:color-mix(in srgb,var(--danger) 14%,var(--panel));color:var(--danger)}.empty{padding:24px;text-align:center;color:var(--muted);font-size:13px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 560px){.topbar{height:56px;padding:0 10px;gap:6px}.topbar .icon-btn{padding:0 8px;font-size:12px}.topbar .nav-back{display:none}.topbar .select{max-width:104px;padding:0 6px;font-size:12px}.brand{flex:0 1 auto;overflow:hidden;font-size:13px;white-space:nowrap}.page{width:min(100% - 24px,620px);margin:26px auto 48px}.page-title{font-size:25px}.card{padding:20px;border-radius:14px}.tabs{font-size:12px}.tab{padding:0 2px}.kv{grid-template-columns:84px 1fr}.row{flex-wrap:wrap}}
