.app-toast[data-v-7885529a]{position:fixed;left:16px;right:16px;bottom:calc(24px + env(safe-area-inset-bottom));max-width:420px;margin:0 auto;background:var(--color-ink);color:var(--color-bg);border-radius:var(--radius-lg);padding:14px 16px;display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;box-shadow:0 12px 30px #2c1b0e4d;z-index:999}.app-toast .material-icons[data-v-7885529a]{font-size:20px;flex-shrink:0}.app-toast.error[data-v-7885529a]{background:var(--color-danger);color:#fff}.app-toast.success[data-v-7885529a]{background:var(--color-success-strong);color:#fff}.toast-text[data-v-7885529a]{flex:1;line-height:1.4}.toast-enter-active[data-v-7885529a],.toast-leave-active[data-v-7885529a]{transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .3s}.toast-enter-from[data-v-7885529a],.toast-leave-to[data-v-7885529a]{transform:translateY(120%);opacity:0}.animated .front[data-v-03a18607],.animated .shadow[data-v-03a18607]{animation:fade-03a18607 .3s ease-out both}.animated .handle[data-v-03a18607]{stroke-dasharray:1;stroke-dashoffset:1;animation:draw-03a18607 .4s ease-out .2s forwards}.animated .item[data-v-03a18607]{transform-box:fill-box;animation:drop-03a18607 .5s cubic-bezier(.3,1.4,.5,1) both}.animated .i1[data-v-03a18607]{animation-delay:.45s}.animated .i2[data-v-03a18607]{animation-delay:.6s}.animated .i3[data-v-03a18607]{animation-delay:.75s}.animated .i4[data-v-03a18607]{animation-delay:.9s}.animated .spark[data-v-03a18607]{stroke-dasharray:1;stroke-dashoffset:1;animation:draw-03a18607 .25s ease-out 1.35s forwards}.animated .s2[data-v-03a18607]{animation-delay:1.45s}.animated .s3[data-v-03a18607]{animation-delay:1.55s}@keyframes fade-03a18607{0%{opacity:0}}@keyframes draw-03a18607{to{stroke-dashoffset:0}}@keyframes drop-03a18607{0%{opacity:0;transform:translateY(-70px)}60%{opacity:1}}@media(prefers-reduced-motion:reduce){.animated[data-v-03a18607] *{animation:none!important}.animated .handle[data-v-03a18607],.animated .spark[data-v-03a18607]{stroke-dashoffset:0}}.splash[data-v-54b3945d]{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:24px;background:#fff}.splash-slogan[data-v-54b3945d]{max-width:300px;text-align:center;text-wrap:balance;font-size:17px;font-weight:500;line-height:1.45;color:var(--color-muted);animation:fade-54b3945d .4s ease-out 1.1s both}.splash-dots[data-v-54b3945d]{display:flex;gap:8px}.splash-dots i[data-v-54b3945d]{width:8px;height:8px;border-radius:50%;background:var(--color-coral);animation:pulse-54b3945d 1.2s ease-in-out infinite}.splash-dots i[data-v-54b3945d]:nth-child(2){animation-delay:.15s}.splash-dots i[data-v-54b3945d]:nth-child(3){animation-delay:.3s}.visually-hidden[data-v-54b3945d]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@keyframes fade-54b3945d{0%{opacity:0}}@keyframes pulse-54b3945d{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.splash-slogan[data-v-54b3945d],.splash-dots i[data-v-54b3945d]{animation:none!important}.splash-dots i[data-v-54b3945d]{opacity:.6}}.listto-page{min-height:100dvh;background:var(--color-bg);color:var(--color-ink);padding:calc(env(safe-area-inset-top) + 20px) 20px calc(env(safe-area-inset-bottom) + 130px)}.listto-content{width:100%;max-width:560px;margin:0 auto}.listto-heading{font-size:28px;line-height:1.25;font-weight:750;overflow-wrap:anywhere;margin:20px 0}.listto-subtle{color:var(--color-muted);font-size:14px;line-height:1.5}.listto-row{display:flex;align-items:center;gap:12px;min-width:0}.listto-grow{flex:1;min-width:0;overflow-wrap:anywhere}.listto-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);border-radius:999px;min-height:48px;padding:12px 20px;font:inherit;font-weight:650;cursor:pointer;transition:transform .18s ease,background .18s ease}.listto-button.primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.listto-button.danger{color:var(--color-danger)}.listto-button.full{width:100%}.listto-button:active:not(:disabled){transform:scale(.97)}.listto-button:disabled{opacity:.55;cursor:not-allowed}.listto-button.primary:disabled{opacity:1;background:var(--color-surface-soft);border-color:var(--color-surface-soft);color:var(--color-accent)}.listto-icon-button{width:48px;min-height:48px;flex-shrink:0;border:none;background:transparent;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--color-muted);cursor:pointer}.listto-avatar{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:var(--color-surface-soft);color:var(--color-accent);font-weight:700}.listto-input{width:100%;min-width:0;min-height:48px;padding:12px 16px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-bg-soft);color:var(--color-ink);font:inherit;font-size:16px}.listto-input::placeholder{color:var(--color-muted);opacity:1}.listto-label{display:block;color:var(--color-ink);font-size:14px;margin:16px 0 8px;font-weight:600}.listto-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0 -10px 12px}.listto-toolbar h1{order:5;flex:1 0 100%;min-width:0;padding:4px 10px 0;font-size:26px;font-weight:700;line-height:1.2;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.listto-toolbar>h1+*{margin-left:auto}.listto-progress{height:4px;background:var(--color-bg-soft);border-radius:4px;overflow:hidden;margin:10px 0 20px}.listto-progress>span{display:block;height:100%;background:var(--color-accent);border-radius:inherit;transition:width .22s ease}.listto-error{background:var(--color-danger-bg);color:var(--color-danger);border-radius:12px;padding:14px;font-size:14px;margin:16px 0}.listto-section{margin-top:28px}.listto-section>h2{font-size:18px;margin-bottom:14px}.listto-setting{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--color-border)}.listto-setting .name{display:block;font-weight:600;overflow-wrap:anywhere}.listto-setting .detail{display:block;font-size:13px;color:var(--color-muted);margin-top:4px;overflow-wrap:anywhere}.listto-empty{text-align:center;color:var(--color-muted);padding:44px 12px}.listto-empty h2{font-size:20px;color:var(--color-ink);margin:12px 0}.listto-empty p{line-height:1.5}.listto-sheet-backdrop{position:fixed;inset:0;z-index:220;background:#14231c66;display:flex;justify-content:center;align-items:flex-end}.listto-sheet{width:100%;max-width:560px;background:#fff;border-radius:24px 24px 0 0;padding:24px 20px calc(env(safe-area-inset-bottom) + 24px);max-height:90dvh;overflow-y:auto}.listto-sheet h2{font-size:22px}.listto-sheet .actions{display:flex;gap:12px;margin-top:24px}.listto-sheet .actions>button{flex:1}.listto-menu{padding:0;list-style:none}.listto-menu button{width:100%;display:flex;align-items:center;gap:12px;padding:14px 0;background:transparent;border:0;border-bottom:1px solid var(--color-border);font:inherit;color:var(--color-ink);text-align:left;cursor:pointer;min-height:48px}.listto-menu .danger{color:var(--color-danger)}.listto-finalize{margin-top:28px}.listto-list-move{transition:transform .22s ease}.listto-list-enter-active,.listto-list-leave-active{transition:opacity .18s ease,transform .18s ease}.listto-list-enter-from,.listto-list-leave-to{opacity:0;transform:translateY(8px)}.listto-sheet-enter-active,.listto-sheet-leave-active{transition:opacity .2s ease}.listto-sheet-enter-active .listto-sheet,.listto-sheet-leave-active .listto-sheet{transition:transform .2s ease}.listto-sheet-enter-from,.listto-sheet-leave-to{opacity:0}.listto-sheet-enter-from .listto-sheet,.listto-sheet-leave-to .listto-sheet{transform:translateY(30px)}.listto-route-enter-active,.listto-route-leave-active{transition:opacity .15s ease,transform .15s ease}.listto-route-enter-from,.listto-route-leave-to{opacity:0;transform:translateY(5px)}.auth-form{display:flex;flex-direction:column;gap:24px}.auth-field label{display:block;margin-bottom:10px;color:var(--color-ink);font-size:14px;font-weight:600}.auth-input-shell{display:flex;align-items:center;min-height:56px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-bg-soft);transition:border-color .18s,box-shadow .18s,background .18s}.auth-input-shell:focus-within{background:#fff;border-color:var(--color-accent);box-shadow:0 0 0 3px #0f556022}.auth-input-shell input{flex:1;min-width:0;width:100%;height:54px;padding:14px 16px;border:0;background:transparent;border-radius:inherit;font:inherit;font-size:16px;color:var(--color-ink)}.auth-input-shell input::placeholder{color:var(--color-muted);opacity:1}.auth-input-shell input:disabled{opacity:.65}.auth-eye{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;margin-right:4px;background:transparent;border:0;border-radius:50%;color:var(--color-muted);cursor:pointer}.auth-eye:hover{background:var(--color-surface-soft)}.auth-hint{display:block;margin:8px 0 0;font-size:13px;color:var(--color-muted)}.auth-options{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;margin:-8px 0}.auth-remember{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;color:var(--color-muted);cursor:pointer}.auth-remember input{width:20px;height:20px;accent-color:var(--color-accent);flex-shrink:0}.auth-text-button{padding:8px 0;min-height:44px;border:0;background:transparent;font:inherit;font-size:14px;font-weight:600;color:var(--color-accent);cursor:pointer}.auth-secondary{width:100%;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--color-border);border-radius:999px;background:#fff;padding:12px 18px;color:var(--color-accent);font:inherit;font-weight:600;text-decoration:none;cursor:pointer;transition:background .18s,transform .18s}.auth-secondary:hover{background:var(--color-bg-soft)}.auth-secondary:active{transform:scale(.98)}.auth-secondary .material-icons{font-size:20px}.auth-text-button:disabled,.auth-secondary:disabled{opacity:.55;cursor:not-allowed}.auth-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--color-muted);text-decoration:none;font-size:14px}.auth-back .material-icons{font-size:20px}.auth-feedback,.auth-invite{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border-radius:12px;font-size:14px;line-height:1.5}.auth-feedback .material-icons,.auth-invite .material-icons{font-size:20px;flex-shrink:0;margin-top:1px}.auth-feedback.error{color:var(--color-danger);background:var(--color-danger-bg)}.auth-feedback.success,.auth-invite{color:var(--color-accent);background:var(--color-surface-soft)}.auth-invite{margin-bottom:24px}.auth-feedback-enter-active,.auth-feedback-leave-active{transition:opacity .18s,transform .18s}.auth-feedback-enter-from,.auth-feedback-leave-to{opacity:0;transform:translateY(-4px)}@media(max-width:360px){.listto-page{padding-left:16px;padding-right:16px}.listto-toolbar h1{font-size:24px}}.listto-page{background:var(--color-page)}.listto-card{background:#fff;border-radius:20px;box-shadow:var(--shadow-soft)}.listto-toolbar .listto-icon-button{background:#fff;box-shadow:var(--shadow-soft);color:var(--color-ink)}.listto-input,.auth-input-shell{background:#fff}.listto-sheet{border-radius:28px 28px 0 0}input:focus,textarea:focus,select:focus{outline:none}.listto-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #0f55601f}.splash-fade-leave-active{transition:opacity .3s ease}.splash-fade-leave-to{opacity:0}:root{color-scheme:light;--color-ink: #0D2B30;--color-bg: #FFFFFF;--color-bg-soft: #F6F8F8;--color-surface: #FFFFFF;--color-surface-soft: #E4F1F2;--color-surface-soft-active: #C6E2E5;--color-accent: #0F5560;--color-accent-strong: #0A4049;--color-coral: #F0654E;--color-coral-text: #B23A24;--color-coral-soft: #FDEBE7;--color-paper: #F8F4EE;--color-page: #F4F5F3;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--shadow-soft: 0 1px 2px rgba(13, 43, 48, .04), 0 6px 18px rgba(13, 43, 48, .06);--color-muted: #56625D;--color-muted-light: #6B7671;--color-border: #DDE6E7;--color-danger: #C62828;--color-danger-strong: #FF5A5F;--color-danger-bg: #FFF5F5;--color-danger-border: #FFCDD2;--color-success: #4CAF50;--color-success-strong: #2E7D32;--color-success-bg: #E8F5E9;--color-warning: #E65100;--color-warning-bg: #FFF3E0;--color-info: #2196F3;--color-info-bg: #E3F2FD;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--radius-sm: 10px;--radius-md: 12px;--radius-lg: 14px;--radius-xl: 16px;--radius-2xl: 18px;--radius-3xl: 20px;--radius-4xl: 24px;--radius-pill: 100px;--shadow-sm: 0 2px 12px rgba(13, 43, 48, .06);--shadow-md: 0 8px 24px rgba(13, 43, 48, .15);--shadow-lg: 0 12px 30px rgba(13, 43, 48, .3)}h1,h2,h3,h4,button,.listto-button{font-family:var(--font-sans)}h1,h2{letter-spacing:-.025em;font-weight:700}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:none}*::-webkit-scrollbar{display:none}body{font-family:var(--font-sans);font-size:16px;line-height:1.5;color:var(--color-ink);letter-spacing:0;background:var(--color-page);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-coral);outline-offset:2px}.material-icons{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.material-icons.filled{font-variation-settings:"FILL" 1,"wght" 600,"GRAD" 0,"opsz" 24}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
