.auth-page[data-v-0589ece3]{min-height:100dvh;padding:calc(24px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom));place-items:center;display:grid}.auth-card[data-v-0589ece3]{border:1px solid var(--line);background:var(--card);border-radius:24px;width:100%;max-width:400px;padding:28px 26px;box-shadow:0 28px 60px -40px #052e168c}.auth-logo[data-v-0589ece3]{color:#fff;background:linear-gradient(135deg,#22c55e,#15803d);border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.auth-logo svg[data-v-0589ece3]{width:26px;height:26px}.auth-card h1[data-v-0589ece3]{letter-spacing:-.02em;margin:16px 0 6px;font-size:1.55rem}.subtitle[data-v-0589ece3]{color:var(--muted);margin:0 0 18px;font-size:.88rem;line-height:1.5}form[data-v-0589ece3]{flex-direction:column;gap:14px;display:flex}label[data-v-0589ece3]{color:var(--muted);flex-direction:column;gap:6px;font-size:.8rem;font-weight:600;display:flex}input[data-v-0589ece3]{width:100%;color:var(--ink);background:#fbfdfc;border:1px solid #d7e0da;border-radius:12px;padding:12px 14px;font-size:1rem;transition:border-color .15s,box-shadow .15s}input[data-v-0589ece3]:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #16a34a29}.primary[data-v-0589ece3]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#16a34a,#15803d);border:none;border-radius:12px;padding:13px 16px;font-size:.95rem;font-weight:700}.primary[data-v-0589ece3]:hover:not(:disabled){filter:brightness(1.06)}.primary[data-v-0589ece3]:disabled{opacity:.6;cursor:default}.notice[data-v-0589ece3]{border:1px solid var(--line);color:var(--muted);background:#f8faf9;border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:.82rem;line-height:1.45}.notice-warn[data-v-0589ece3]{color:#b45309;background:#fffbeb;border-color:#fde68a}.notice-error[data-v-0589ece3]{color:#b91c1c;background:#fef2f2;border-color:#fecaca;margin-top:14px;margin-bottom:0}.link-button[data-v-0589ece3]{color:var(--accent-dark);cursor:pointer;text-align:left;background:0 0;border:none;margin-top:16px;padding:0;font-size:.82rem;font-weight:600}.link-button[data-v-0589ece3]:hover{text-decoration:underline}.security-card[data-v-d7d1a98b]{flex-direction:column;gap:12px;padding:22px;display:flex}.security-head h2[data-v-d7d1a98b]{letter-spacing:-.01em;margin:0;font-size:1.1rem}.hint[data-v-d7d1a98b]{color:var(--muted);margin:-8px 0 2px;font-size:.82rem}.note[data-v-d7d1a98b]{color:var(--muted);margin:0;font-size:.8rem;line-height:1.45}.passkeys[data-v-d7d1a98b],.invite-list[data-v-d7d1a98b]{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.passkey[data-v-d7d1a98b],.invite-list li[data-v-d7d1a98b]{border:1px solid var(--line);background:#fbfdfc;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.passkey div[data-v-d7d1a98b],.invite-list li div[data-v-d7d1a98b]{flex-direction:column;gap:2px;min-width:0;display:flex}.passkey strong[data-v-d7d1a98b],.invite-list strong[data-v-d7d1a98b]{font-size:.85rem}.passkey span[data-v-d7d1a98b],.invite-list span[data-v-d7d1a98b]{color:var(--muted);font-size:.74rem}.action[data-v-d7d1a98b]{cursor:pointer;border-radius:11px;padding:10px 14px;font-size:.85rem;font-weight:700}.primary[data-v-d7d1a98b]{color:#fff;background:linear-gradient(135deg,#16a34a,#15803d);border:none}.primary[data-v-d7d1a98b]:disabled,.secondary[data-v-d7d1a98b]:disabled{opacity:.6;cursor:default}.secondary[data-v-d7d1a98b]{color:var(--accent-dark);background:#ecfdf3;border:1px solid #bbf7d0}.secondary[data-v-d7d1a98b]:hover:not(:disabled){background:#dcfce7}.ghost[data-v-d7d1a98b]{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0}.ghost[data-v-d7d1a98b]:hover:not(:disabled){background:#f6f8f7}.icon-btn[data-v-d7d1a98b]{color:#9aa8a1;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.icon-btn svg[data-v-d7d1a98b]{width:17px;height:17px}.icon-btn[data-v-d7d1a98b]:hover:not(:disabled){color:#dc2626;background:#fef2f2;border-color:#fecaca}.icon-btn[data-v-d7d1a98b]:disabled{opacity:.4;cursor:default}.invites[data-v-d7d1a98b]{border-top:1px solid var(--line);margin-top:6px;padding-top:14px}.invites h3[data-v-d7d1a98b]{margin:0 0 4px;font-size:.95rem}.invite-form[data-v-d7d1a98b]{align-items:flex-end;gap:10px;margin-top:10px;display:flex}.invite-form label[data-v-d7d1a98b]{color:var(--muted);flex-direction:column;gap:5px;font-size:.74rem;font-weight:600;display:flex}.invite-form input[data-v-d7d1a98b]{width:90px;color:var(--ink);background:#fbfdfc;border:1px solid #d7e0da;border-radius:9px;padding:8px 10px}.created-invite[data-v-d7d1a98b]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;margin-top:10px;padding:10px 12px}.created-invite p[data-v-d7d1a98b]{color:var(--muted);margin:0 0 6px;font-size:.76rem}.created-invite code[data-v-d7d1a98b]{overflow-wrap:anywhere;color:var(--accent-dark);font-size:.72rem;display:block}.created-actions[data-v-d7d1a98b]{gap:8px;margin-top:8px;display:flex}.small[data-v-d7d1a98b]{cursor:pointer;border-radius:8px;padding:6px 10px;font-size:.75rem;font-weight:600}.invite-list[data-v-d7d1a98b]{margin-top:10px}.feedback[data-v-d7d1a98b]{color:var(--accent-dark);margin:0;font-size:.8rem}.error-feedback[data-v-d7d1a98b]{color:#b91c1c}@media (width<=480px){.invite-form[data-v-d7d1a98b]{flex-wrap:wrap}.invite-form input[data-v-d7d1a98b]{width:100%}}.app[data-v-9167ba0e]{width:100%;max-width:1040px;padding:calc(24px + env(safe-area-inset-top)) 18px calc(56px + env(safe-area-inset-bottom));margin:0 auto}.hero[data-v-9167ba0e]{color:#ecfdf5;background:radial-gradient(120% 140% at 0 0,#ffffff29,#0000 45%),linear-gradient(135deg,#052e16 0%,#15803d 58%,#22c55e 100%);border-radius:24px;padding:30px 26px;position:relative;overflow:hidden;box-shadow:0 24px 48px -28px #052e16b3}.hero[data-v-9167ba0e]:after{content:"";pointer-events:none;background:#ffffff14;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-110px;right:-70px}.hero-top[data-v-9167ba0e]{z-index:1;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.hero-account[data-v-9167ba0e]{color:#ecfdf5d9;align-items:center;gap:10px;font-size:.78rem;display:flex}.hero-account>span[data-v-9167ba0e]{text-overflow:ellipsis;white-space:nowrap;max-width:22ch;overflow:hidden}.logout-btn[data-v-9167ba0e]{color:#ecfdf5;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff59;border-radius:999px;padding:5px 10px;font-size:.74rem;font-weight:700}.logout-btn[data-v-9167ba0e]:hover:not(:disabled){background:#ffffff38}.logout-btn[data-v-9167ba0e]:disabled{opacity:.6;cursor:default}.loading-page[data-v-9167ba0e]{place-items:center;min-height:60vh;display:grid}.hero-badge[data-v-9167ba0e]{letter-spacing:.1em;text-transform:uppercase;border:1px solid #ffffff52;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.7rem;font-weight:700;display:inline-flex}.hero-badge svg[data-v-9167ba0e]{width:13px;height:13px}.hero h1[data-v-9167ba0e]{letter-spacing:-.02em;margin:14px 0 6px;font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.1}.hero p[data-v-9167ba0e]{color:#ecfdf5d1;max-width:46ch;margin:0;font-size:.95rem;line-height:1.5}.alert[data-v-9167ba0e]{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;margin-top:18px;padding:12px 14px;font-size:.9rem;display:flex}.alert button[data-v-9167ba0e]{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:1.25rem;line-height:1}.layout[data-v-9167ba0e]{gap:18px;margin-top:20px;display:grid}.install-card[data-v-9167ba0e]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:16px;align-items:center;gap:14px;margin-top:16px;padding:14px 16px;display:flex}.install-card.install-warning[data-v-9167ba0e]{background:#fffbeb;border-color:#fde68a}.install-icon[data-v-9167ba0e]{width:38px;height:38px;color:var(--accent-dark);background:#dcfce7;border-radius:12px;flex:none;place-items:center;display:grid}.install-card.install-warning .install-icon[data-v-9167ba0e]{color:#b45309;background:#fef3c7}.install-icon svg[data-v-9167ba0e]{width:20px;height:20px}.install-copy[data-v-9167ba0e]{flex:1;min-width:0}.install-copy strong[data-v-9167ba0e]{font-size:.9rem;display:block}.install-copy p[data-v-9167ba0e]{color:var(--muted);margin:2px 0 0;font-size:.8rem;line-height:1.45}.install-btn[data-v-9167ba0e]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:none;padding:9px 14px;font-size:.82rem;font-weight:700;transition:background .15s}.install-btn[data-v-9167ba0e]:hover{background:var(--accent-dark)}@media (width<=520px){.install-card[data-v-9167ba0e]{flex-wrap:wrap}.install-btn[data-v-9167ba0e]{width:100%}}.side-col[data-v-9167ba0e]{flex-direction:column;gap:18px;display:flex}@media (width>=880px){.layout[data-v-9167ba0e]{grid-template-columns:340px minmax(0,1fr);align-items:start}}.push-card[data-v-9167ba0e]{flex-direction:column;gap:12px;padding:22px;display:flex}.push-head[data-v-9167ba0e]{justify-content:space-between;align-items:center;gap:10px;display:flex}.push-head h2[data-v-9167ba0e]{letter-spacing:-.01em;margin:0;font-size:1.1rem}.push-status[data-v-9167ba0e]{color:var(--muted);white-space:nowrap;background:#f1f5f2;border-radius:999px;flex:none;padding:3px 9px;font-size:.7rem;font-weight:700}.push-status-active[data-v-9167ba0e]{color:var(--accent-dark);background:#ecfdf3;border:1px solid #bbf7d0}.push-status-warning[data-v-9167ba0e]{color:#b45309;background:#fffbeb;border:1px solid #fde68a}.push-note[data-v-9167ba0e]{color:var(--muted);margin:0;font-size:.82rem;line-height:1.45}.push-actions[data-v-9167ba0e]{flex-direction:column;gap:8px;margin-top:2px;display:flex}.push-btn[data-v-9167ba0e]{cursor:pointer;border-radius:11px;width:100%;padding:11px 14px;font-size:.88rem;font-weight:700;transition:background .15s,opacity .15s}.push-btn[data-v-9167ba0e]:disabled{opacity:.55;cursor:default}.secondary[data-v-9167ba0e]{color:var(--accent-dark);background:#ecfdf3;border:1px solid #bbf7d0}.secondary[data-v-9167ba0e]:hover:not(:disabled){background:#dcfce7}.ghost[data-v-9167ba0e]{border:1px solid var(--line);color:var(--muted);background:0 0}.ghost[data-v-9167ba0e]:hover:not(:disabled){background:#f6f8f7}.push-feedback[data-v-9167ba0e]{color:var(--accent-dark);margin:0;font-size:.8rem;line-height:1.45}.push-feedback.push-error[data-v-9167ba0e]{color:#b91c1c}.card[data-v-9167ba0e]{border:1px solid var(--line);background:var(--card);border-radius:20px;box-shadow:0 18px 40px -34px #0f1f1773}.form-card[data-v-9167ba0e]{flex-direction:column;gap:14px;padding:22px;display:flex}.form-card h2[data-v-9167ba0e],.list-head h2[data-v-9167ba0e]{letter-spacing:-.01em;margin:0;font-size:1.1rem}.hint[data-v-9167ba0e]{color:var(--muted);margin:-8px 0 2px;font-size:.85rem}label[data-v-9167ba0e]{color:var(--muted);flex-direction:column;gap:6px;font-size:.8rem;font-weight:600;display:flex}input[data-v-9167ba0e]{width:100%;color:var(--ink);font-variant-numeric:tabular-nums;background:#fbfdfc;border:1px solid #d7e0da;border-radius:12px;padding:12px 14px;font-size:1rem;transition:border-color .15s,box-shadow .15s}input[data-v-9167ba0e]::placeholder{color:#a8b6ae}input[data-v-9167ba0e]:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #16a34a29}.primary[data-v-9167ba0e]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#16a34a,#15803d);border:none;border-radius:12px;margin-top:4px;padding:13px 16px;font-size:.95rem;font-weight:700;transition:filter .15s,transform .15s}.primary[data-v-9167ba0e]:hover:not(:disabled){filter:brightness(1.06)}.primary[data-v-9167ba0e]:active:not(:disabled){transform:translateY(1px)}.primary[data-v-9167ba0e]:disabled{opacity:.65;cursor:default}.preview[data-v-9167ba0e]{text-align:center;color:var(--muted);margin:0;font-size:.85rem}.stats[data-v-9167ba0e]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}@media (width>=700px){.stats[data-v-9167ba0e]{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat[data-v-9167ba0e]{border:1px solid var(--line);background:var(--card);border-radius:16px;padding:14px 16px;box-shadow:0 14px 30px -30px #0f1f1780}.stat-label[data-v-9167ba0e]{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700;display:block}.stat strong[data-v-9167ba0e]{font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap;margin-top:6px;font-size:clamp(1.05rem,1.6vw,1.3rem);display:block}.stat small[data-v-9167ba0e]{color:var(--muted);margin-top:2px;font-size:.7rem;font-weight:600;display:inline-block}.list-card[data-v-9167ba0e]{overflow:hidden}.list-head[data-v-9167ba0e]{justify-content:space-between;align-items:center;padding:20px 22px 14px;display:flex}.count[data-v-9167ba0e]{min-width:26px;color:var(--accent-dark);text-align:center;background:#ecfdf3;border-radius:999px;padding:3px 9px;font-size:.78rem;font-weight:700}.empty[data-v-9167ba0e]{color:var(--muted);text-align:center;margin:0;padding:22px 22px 30px;font-size:.92rem;line-height:1.6}.empty span[data-v-9167ba0e]{font-size:.85rem}.entries[data-v-9167ba0e]{margin:0;padding:0;list-style:none}.entry[data-v-9167ba0e]{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:15px 18px 15px 22px;transition:background .15s;display:flex}.entry[data-v-9167ba0e]:hover{background:#f8fbf9}.entry-main[data-v-9167ba0e]{min-width:0}.entry-top[data-v-9167ba0e]{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.entry-odo[data-v-9167ba0e]{font-variant-numeric:tabular-nums;font-size:1.02rem;font-weight:700}.entry-date[data-v-9167ba0e]{color:var(--muted);font-size:.78rem}.entry-meta[data-v-9167ba0e]{color:#3f5249;font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:7px;margin-top:4px;font-size:.88rem;display:flex}.dot[data-v-9167ba0e]{background:#b9c6bf;border-radius:50%;width:3px;height:3px}.entry-extra[data-v-9167ba0e]{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:.78rem;display:flex}.badge[data-v-9167ba0e]{color:var(--accent-dark);background:#ecfdf3;border:1px solid #bbf7d0;border-radius:999px;padding:3px 8px;font-weight:600}.km[data-v-9167ba0e]{color:var(--muted)}.icon-btn[data-v-9167ba0e]{color:#9aa8a1;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;transition:color .15s,background .15s,border-color .15s;display:inline-flex}.icon-btn svg[data-v-9167ba0e]{width:18px;height:18px}.icon-btn[data-v-9167ba0e]:hover:not(:disabled){color:#dc2626;background:#fef2f2;border-color:#fecaca}.icon-btn[data-v-9167ba0e]:disabled{opacity:.5;cursor:default}.footnote[data-v-9167ba0e]{color:#98a69f;text-align:center;margin:26px 0 0;font-size:.78rem}:root{--bg:#f4f6f5;--card:#fff;--ink:#0f1f17;--muted:#5f6f68;--line:#e3e9e5;--accent:#16a34a;--accent-dark:#15803d;color:var(--ink);background-color:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}html{-webkit-text-size-adjust:100%}body{background:radial-gradient(80rem 40rem at 110% -10%, #22c55e1f, transparent 60%), var(--bg);overscroll-behavior-y:none}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
