:root{--bg:#faf7f2;--bg-elev:#fff;--text:#1c1917;--text-muted:#78716c;--text-soft:#a8a29e;--border:#ece8e0;--border-strong:#d6d3d1;--primary:#0d9488;--primary-hover:#0f766e;--primary-soft:#ccfbf1;--yes:#22c55e;--yes-soft:#dcfce7;--maybe:#eab308;--maybe-soft:#fef9c3;--no:#ef4444;--no-soft:#fee2e2;--auto-no:repeating-linear-gradient(45deg, #fee2e2, #fee2e2 4px, #fecaca 4px, #fecaca 8px);--radius:10px;--radius-sm:6px;--shadow-sm:0 1px 2px #0000000a;--shadow:0 4px 12px #0000000f;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:15px/1.5 var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{min-height:100svh;margin:0}button{font:inherit;cursor:pointer;border:1px solid var(--border-strong);background:var(--bg-elev);color:var(--text);border-radius:var(--radius-sm);padding:8px 14px;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:var(--border)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}button.primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}button.ghost{background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){background:var(--border)}input,select{font:inherit;border:1px solid var(--border-strong);background:var(--bg-elev);color:var(--text);border-radius:var(--radius-sm);box-sizing:border-box;width:100%;min-height:40px;padding:8px 10px}input[type=date]{appearance:none;text-align:left;min-height:40px;font-size:15px;line-height:1.2}input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:20px}input:focus,select:focus{outline:2px solid var(--primary);outline-offset:-1px;border-color:var(--primary)}label{color:var(--text-muted);margin-bottom:4px;font-size:13px;display:block}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px}.muted{color:var(--text-muted)}.small{font-size:13px}#app{flex-direction:column;min-height:100svh;display:flex}.pending[data-v-5531b316]{flex:1;justify-content:center;align-items:center;min-height:calc(100svh - 200px);padding:24px;display:flex}.card[data-v-5531b316]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);text-align:center;width:100%;max-width:480px;padding:40px 32px;box-shadow:0 20px 60px #0000002e,0 6px 20px #00000014}.loading[data-v-5531b316]{flex-direction:column;align-items:center;gap:16px;padding:20px 0;display:flex}.spinner[data-v-5531b316]{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin-5531b316}@keyframes spin-5531b316{to{transform:rotate(360deg)}}.content[data-v-5531b316]{flex-direction:column;align-items:center;gap:12px;display:flex}.icon[data-v-5531b316]{margin-bottom:4px;font-size:48px;line-height:1}h1[data-v-5531b316]{margin:0;font-size:22px}.info-row[data-v-5531b316]{background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border);text-align:left;align-items:center;gap:12px;width:100%;max-width:320px;margin:12px 0 4px;padding:12px 16px;display:flex}.avatar[data-v-5531b316]{border-radius:50%;width:36px;height:36px}.who[data-v-5531b316]{flex:1;min-width:0;overflow:hidden}.name[data-v-5531b316]{font-weight:600}.hint[data-v-5531b316]{background:var(--primary-soft);color:var(--primary-hover);border-radius:var(--radius-sm);margin:8px 0 0;padding:12px 16px;font-size:14px;line-height:1.6}.email[data-v-5531b316]{color:var(--primary);font-weight:600;text-decoration:none}.email[data-v-5531b316]:hover{text-decoration:underline}.actions[data-v-5531b316]{border-top:1px solid var(--border);margin-top:24px;padding-top:16px}.actions button[data-v-5531b316]{padding:8px 20px}.studios-link[data-v-5531b316]{color:#b91c1c;cursor:pointer;background:linear-gradient(135deg,#fee2e2 0%,#ffedd5 100%);border:1px solid #fecaca;border-radius:999px;margin-top:8px;padding:8px 20px;font-size:13px;font-weight:600;transition:transform .15s,box-shadow .15s}.studios-link[data-v-5531b316]:hover{transform:translateY(-1px);box-shadow:0 3px 10px #e85d7533}.topbar[data-v-dea44422]{border-bottom:1px solid var(--border);background:var(--bg-elev);z-index:10;align-items:center;gap:12px;padding:12px 24px;display:flex;position:sticky;top:0}.brand[data-v-dea44422]{color:var(--text);align-items:center;gap:8px;font-size:16px;font-weight:600;text-decoration:none;display:flex}.brand-logo[data-v-dea44422]{flex-shrink:0;width:30px;height:30px;display:block}.by-jc[data-v-dea44422]{justify-content:center;align-items:center;gap:8px;display:inline-flex}.jc-badge-small[data-v-dea44422]{color:#fff;letter-spacing:.5px;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#e85d75 0%,#f2984d 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:800;display:inline-flex;transform:rotate(-6deg);box-shadow:0 3px 10px #e85d7559}.spacer[data-v-dea44422]{flex:1}.user[data-v-dea44422]{align-items:center;gap:10px;display:flex}.admin-link[data-v-dea44422]{background:var(--primary-soft);color:var(--primary-hover);border:1px solid var(--primary);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;text-decoration:none}.login-gate[data-v-dea44422]{flex:1;justify-content:center;align-items:center;min-height:calc(100svh - 200px);padding:24px;display:flex}.login-gate .login-card[data-v-dea44422]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);text-align:center;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:440px;padding:44px 32px;display:flex;box-shadow:0 20px 60px #0000002e,0 6px 20px #00000014}.login-gate .login-logo[data-v-dea44422]{width:72px;height:72px;margin-bottom:4px}.login-gate .app-name[data-v-dea44422]{letter-spacing:-.5px;color:var(--text);margin:0;font-size:32px;font-weight:700}.login-gate .tagline[data-v-dea44422]{color:var(--text);margin:4px 0 0;font-size:15px;font-weight:500}.login-gate .tagline-zh[data-v-dea44422]{color:var(--text-muted);margin:0 0 12px;font-size:14px}.login-gate .features[data-v-dea44422]{text-align:left;width:100%;max-width:340px;color:var(--text);flex-direction:column;gap:8px;margin:12px 0 8px;padding:0;font-size:13px;line-height:1.5;list-style:none;display:flex}.login-gate .big[data-v-dea44422]{margin-top:16px;padding:14px 32px;font-size:15px;font-weight:600}.login-gate .login-note[data-v-dea44422]{border-top:1px solid var(--border);max-width:320px;margin-top:16px;padding-top:16px;line-height:1.5}.admin-link[data-v-dea44422]:hover{background:var(--primary);color:#fff}@media (width<=600px){.admin-link[data-v-dea44422]{padding:3px 8px;font-size:11px}}.avatar[data-v-dea44422]{border:1px solid var(--border);border-radius:50%;width:28px;height:28px}.page[data-v-dea44422]{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:24px}.footer[data-v-dea44422]{text-align:center;border-top:1px solid var(--border);flex-direction:column;gap:4px;padding:20px 24px;display:flex}.footer-line[data-v-dea44422]{margin:0}.footer-link[data-v-dea44422]{color:var(--primary);font-weight:500;text-decoration:none}.footer-link[data-v-dea44422]:hover{text-decoration:underline}@media (width<=600px){.topbar[data-v-dea44422]{padding:10px 14px}.page[data-v-dea44422]{padding:16px}.user .small[data-v-dea44422]{display:none}}.home[data-v-0d65d8c4]{flex-direction:column;gap:24px;max-width:560px;margin:0 auto;display:flex}.hero[data-v-0d65d8c4]{text-align:center;padding:16px 0 0}.hero h1[data-v-0d65d8c4]{margin:0 0 6px;font-size:28px}.hero p[data-v-0d65d8c4]{margin:0;font-size:14px}.hero .cross-link[data-v-0d65d8c4]{color:#b91c1c;background:linear-gradient(135deg,#fee2e2 0%,#ffedd5 100%);border:1px solid #fecaca;border-radius:999px;margin-top:12px;padding:6px 16px;font-size:13px;font-weight:500;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-block}.hero .cross-link[data-v-0d65d8c4]:hover{transform:translateY(-1px);box-shadow:0 3px 10px #e85d7533}.recents[data-v-0d65d8c4]{flex-direction:column;gap:8px;display:flex}.recents-title[data-v-0d65d8c4]{color:var(--text-muted);margin:0 0 0 4px;font-size:13px;font-weight:500}.recents-list[data-v-0d65d8c4]{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.recent[data-v-0d65d8c4]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;padding:10px 12px;transition:background .15s,border-color .15s;display:flex}.recent[data-v-0d65d8c4]:hover{background:var(--border);border-color:var(--border-strong)}.recent-main[data-v-0d65d8c4]{flex:1;min-width:0}.recent-name[data-v-0d65d8c4]{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.fill-tag[data-v-0d65d8c4]{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:6px 14px;font-size:13px;font-weight:600;line-height:1.4}.fill-tag.done[data-v-0d65d8c4]{color:#065f46;background:#d1fae5;border:1px solid #6ee7b7}.fill-tag.todo[data-v-0d65d8c4]{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.recent-meta[data-v-0d65d8c4]{align-items:center;gap:6px;margin-top:2px;display:flex}.recent-meta .code[data-v-0d65d8c4]{background:var(--border);color:var(--text);border-radius:3px;padding:1px 6px;font-family:ui-monospace,Consolas,monospace;font-size:11px}.panel[data-v-0d65d8c4]{padding:0;overflow:hidden}.tabs[data-v-0d65d8c4]{border-bottom:1px solid var(--border);background:var(--bg);display:flex}.tab[data-v-0d65d8c4]{color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex:1;padding:14px 12px;font-weight:500}.tab.active[data-v-0d65d8c4]{color:var(--text);background:var(--bg-elev);border-bottom-color:var(--primary);font-weight:600}.tab-badge[data-v-0d65d8c4]{background:var(--primary);color:#fff;text-align:center;vertical-align:middle;border-radius:9px;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;display:inline-block}.tab:not(.active) .tab-badge[data-v-0d65d8c4]{background:var(--text-muted)}.tabpanel[data-v-0d65d8c4]{padding:18px 18px 22px}.tab.locked[data-v-0d65d8c4]{color:var(--text-soft);opacity:.7}.tab.locked[data-v-0d65d8c4]:hover{color:var(--text-muted)}.tab.locked.active[data-v-0d65d8c4]{color:var(--text-muted);border-bottom-color:var(--border-strong)}.lock-ico[data-v-0d65d8c4]{vertical-align:-2px;opacity:.75;margin-left:6px}.no-perm-panel[data-v-0d65d8c4]{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 24px;display:flex}.np-icon[data-v-0d65d8c4]{font-size:36px}.np-title[data-v-0d65d8c4]{color:var(--text-muted);font-size:13px}.recents-panel[data-v-0d65d8c4]{padding:12px}.recents-panel .recents-list[data-v-0d65d8c4]{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tabpanel[data-v-0d65d8c4]>*+*{margin-top:28px}.row[data-v-0d65d8c4]{gap:10px;display:grid}.row.two[data-v-0d65d8c4]{grid-template-columns:1fr 1fr}.row.three[data-v-0d65d8c4]{grid-template-columns:1fr 1fr 1fr}.row>.field[data-v-0d65d8c4]{min-width:0;margin-top:0}.row>.field input[data-v-0d65d8c4],.row>.field select[data-v-0d65d8c4]{width:100%}.tabpanel .field>label[data-v-0d65d8c4],.tabpanel .split-toggle>span[data-v-0d65d8c4]{color:var(--text);margin-bottom:6px;font-size:14px;font-weight:700}@media (width<=480px){.row.three[data-v-0d65d8c4]{grid-template-columns:1fr 1fr}.row.three .field[data-v-0d65d8c4]:nth-child(3){grid-column:span 2}}.weekdays[data-v-0d65d8c4]{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.wd[data-v-0d65d8c4]{border:1px solid var(--border-strong);background:var(--bg-elev);color:var(--text-muted);border-radius:var(--radius-sm);padding:10px 0;font-size:14px;font-weight:500}.wd.weekend[data-v-0d65d8c4]{color:var(--primary)}.wd.active[data-v-0d65d8c4]{background:var(--primary);color:#fff;border-color:var(--primary)}.presets[data-v-0d65d8c4]{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.presets button[data-v-0d65d8c4]{padding:4px 10px;font-size:12px}.chip-input[data-v-0d65d8c4]{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elev);flex-wrap:wrap;align-items:center;gap:6px;min-height:38px;padding:6px 8px;display:flex}.chip-input[data-v-0d65d8c4]:focus-within{outline:2px solid var(--primary);outline-offset:-1px;border-color:var(--primary)}.chip-add-row[data-v-0d65d8c4]{flex:1;align-items:center;gap:6px;min-width:120px;display:flex}.chip-input input[data-v-0d65d8c4]{background:0 0;border:none;outline:none;flex:1;width:auto;min-width:60px;padding:4px 0}.chip-input input[data-v-0d65d8c4]:focus{outline:none}.chip-add[data-v-0d65d8c4]{border:1.5px solid var(--primary);background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:18px;font-weight:700;line-height:1;display:inline-flex}.chip-add[data-v-0d65d8c4]:disabled{background:var(--border);border-color:var(--border-strong);color:var(--text-soft);cursor:not-allowed}.chip-add[data-v-0d65d8c4]:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.split-toggle[data-v-0d65d8c4]{color:var(--text-muted);cursor:pointer;align-items:center;gap:6px;margin-bottom:0;font-size:13px;display:flex}.split-toggle input[data-v-0d65d8c4]{width:auto;min-height:0;margin:0}.chip[data-v-0d65d8c4]{background:var(--primary-soft);color:var(--primary);border-radius:999px;align-items:center;gap:4px;padding:3px 4px 3px 10px;font-size:13px;font-weight:500;display:inline-flex}.chip-x[data-v-0d65d8c4]{color:var(--primary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:14px;line-height:1;display:inline-flex}.chip-x[data-v-0d65d8c4]:hover{background:var(--primary);color:#fff}.hint-line[data-v-0d65d8c4]{margin-top:4px}.hint-list[data-v-0d65d8c4]{flex-direction:column;gap:3px;margin:8px 0 0;padding-left:18px;display:flex}.hint-list li[data-v-0d65d8c4]{line-height:1.5}.hint-list strong[data-v-0d65d8c4]{color:var(--text)}.participants-field[data-v-0d65d8c4]{border-radius:var(--radius-sm);background:#fff7ed;border:1px solid #fed7aa;padding:14px 16px}.participants-field>label[data-v-0d65d8c4]{color:var(--text);font-weight:600}.date-group[data-v-0d65d8c4]{border-radius:var(--radius-sm);background:#faf5eb;border:1px solid #ece2c8;flex-direction:column;gap:18px;padding:14px 16px;display:flex}.intro-line[data-v-0d65d8c4]{text-align:center;color:#92400e;border-radius:var(--radius-sm);background:#fef3c7;border:1px solid #fbbf24;margin:0;padding:12px 16px;font-size:15px;font-weight:600}.login-screen[data-v-0d65d8c4]{flex:1;justify-content:center;align-items:center;min-height:calc(100svh - 200px);padding:24px;display:flex}.login-card[data-v-0d65d8c4]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);text-align:center;width:100%;max-width:440px;box-shadow:var(--shadow);flex-direction:column;align-items:center;gap:12px;padding:40px 32px;display:flex}.login-card .brand-mark[data-v-0d65d8c4]{align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.login-card .brand-dot[data-v-0d65d8c4]{background:var(--primary);border-radius:50%;width:12px;height:12px}.login-card h1[data-v-0d65d8c4]{letter-spacing:-.5px;margin:12px 0 0;font-size:24px}.login-card .tagline[data-v-0d65d8c4]{margin:0;font-size:14px;line-height:1.6}.login-card .login-big-btn[data-v-0d65d8c4]{width:100%;max-width:280px;margin-top:24px;padding:14px 32px;font-size:15px;font-weight:600}.login-card .login-perks[data-v-0d65d8c4]{text-align:left;border-top:1px solid var(--border);flex-direction:column;gap:8px;width:100%;max-width:280px;margin-top:20px;padding:20px 0 0;list-style:none;display:flex}.login-card .login-perks li[data-v-0d65d8c4]{line-height:1.4}.error[data-v-0d65d8c4]{color:var(--no);margin:12px 0 0;font-size:13px}.block[data-v-0d65d8c4]{width:100%;margin-top:16px;padding:12px;font-weight:600}.features[data-v-0d65d8c4]{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (width<=360px){.features[data-v-0d65d8c4]{grid-template-columns:1fr}}.feat[data-v-0d65d8c4]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.emoji[data-v-0d65d8c4]{margin-bottom:4px;font-size:22px}.feat h3[data-v-0d65d8c4]{margin:0 0 4px;font-size:14px}.feat p[data-v-0d65d8c4]{margin:0;font-size:12px}.time-input[data-v-7a0bba90]{flex-direction:column;gap:8px;display:flex}.hint[data-v-7a0bba90]{margin:0 0 4px}.day-card[data-v-7a0bba90]{border-radius:var(--radius);background:#fff;border:1px solid #ecebe6;flex-direction:column;gap:10px;padding:12px 14px;display:flex;box-shadow:0 1px 2px #00000008}.time-input.locked .day-card[data-v-7a0bba90]{opacity:.55;pointer-events:none}.time-input.locked .day-more[data-v-7a0bba90],.time-input.locked .busy-badge[data-v-7a0bba90]{pointer-events:auto;opacity:1}.day-head[data-v-7a0bba90]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.day-title[data-v-7a0bba90]{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.day-title strong.day-date[data-v-7a0bba90]{font-size:15px;font-weight:700}.day-title .range-hint[data-v-7a0bba90]{color:var(--text-muted);font-family:ui-monospace,Consolas,monospace;font-size:12px}.day-title .note[data-v-7a0bba90]{color:#b45309;font-size:12px;font-weight:600}.day-head-right[data-v-7a0bba90]{align-items:center;gap:6px;display:inline-flex}.busy-badge[data-v-7a0bba90]{color:#92400e;white-space:nowrap;cursor:pointer;background:#fef3c7;border:1px solid #fcd34d;border-radius:999px;align-items:center;gap:3px;padding:2px 7px;font-size:11px;font-weight:600;transition:background .12s;display:inline-flex}.busy-badge[data-v-7a0bba90]:hover,.busy-badge.open[data-v-7a0bba90]{background:#fde68a}.busy-badge.conflict[data-v-7a0bba90]{color:#991b1b;background:#fee2e2;border-color:#f87171;animation:1.4s ease-in-out infinite conflict-pulse-7a0bba90}.busy-badge.conflict[data-v-7a0bba90]:hover,.busy-badge.conflict.open[data-v-7a0bba90]{background:#fecaca;animation:none}@keyframes conflict-pulse-7a0bba90{0%,to{box-shadow:0 0 #f8717100}50%{box-shadow:0 0 0 4px #f8717140}}.badge-chev[data-v-7a0bba90]{margin-left:1px;font-size:9px}.events-list[data-v-7a0bba90]{border-radius:var(--radius-sm);background:#fffbeb;border:1px dashed #fcd34d;flex-direction:column;gap:4px;padding:8px 10px;font-size:12px;display:flex}.event-item[data-v-7a0bba90]{align-items:baseline;gap:8px;display:flex}.ev-time[data-v-7a0bba90]{color:#92400e;white-space:nowrap;min-width:90px;font-family:ui-monospace,Consolas,monospace;font-weight:600}.ev-title[data-v-7a0bba90]{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.events-empty[data-v-7a0bba90]{color:#92400e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.events-reload[data-v-7a0bba90]{color:#92400e;cursor:pointer;background:#fff;border:1px solid #f59e0b;border-radius:999px;min-height:0;padding:4px 12px;font-size:12px;font-weight:500}.events-reload[data-v-7a0bba90]:hover{background:#fef3c7}.day-more[data-v-7a0bba90]{border:1.5px solid var(--border-strong);background:var(--bg-elev);width:34px;height:34px;color:var(--text);border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:20px;font-weight:700;line-height:1;transition:all .12s;display:inline-flex}.day-more[data-v-7a0bba90]:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.modes-row[data-v-7a0bba90]{align-items:center;gap:6px;display:flex}.mode-buttons[data-v-7a0bba90]{flex-wrap:wrap;flex:1;gap:6px;display:flex}.mode-btn[data-v-7a0bba90]{border:1.5px solid var(--border-strong);background:var(--bg);color:var(--text-muted);justify-content:center;align-items:center;padding:0;font-weight:600;line-height:1;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.mode-btn.icon[data-v-7a0bba90]{border-radius:50%;width:34px;height:34px;font-size:16px}.mode-btn.text[data-v-7a0bba90]{border-radius:999px;height:34px;padding:0 14px;font-size:13px;font-weight:500}.mode-btn[data-v-7a0bba90]:hover:not(:disabled){border-color:var(--text-muted)}.mode-btn.yes[data-v-7a0bba90]{color:var(--yes);border-color:var(--yes)}.mode-btn.maybe[data-v-7a0bba90]{color:var(--maybe);border-color:var(--maybe)}.mode-btn.no[data-v-7a0bba90]{color:var(--no);border-color:var(--no)}.mode-btn.yes.active[data-v-7a0bba90]{background:var(--yes);color:#fff}.mode-btn.maybe.active[data-v-7a0bba90]{background:var(--maybe);color:#fff}.mode-btn.no.active[data-v-7a0bba90]{background:var(--no);color:#fff}.mode-btn.plain.active[data-v-7a0bba90]{background:var(--text);color:var(--bg-elev);border-color:var(--text)}.ranges[data-v-7a0bba90]{flex-direction:column;gap:4px;padding:4px 0 2px;display:flex}.range-row[data-v-7a0bba90]{align-items:center;gap:6px;display:flex}.range-row select[data-v-7a0bba90]{flex:1;min-width:0;height:30px;padding:4px 6px;font-family:ui-monospace,Consolas,monospace;font-size:13px}.tilde[data-v-7a0bba90]{color:var(--text-muted);font-size:12px;font-weight:600}.range-x[data-v-7a0bba90]{width:26px;height:26px;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:inline-flex}.range-x[data-v-7a0bba90]:hover:not(:disabled){color:var(--no);border-color:var(--no)}.add-range[data-v-7a0bba90]{border:1px dashed var(--border-strong);color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;align-self:flex-start;padding:3px 10px;font-size:12px}.add-range[data-v-7a0bba90]:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.overlay[data-v-7a0bba90]{z-index:100;background:#0006;position:fixed;inset:0}.overlay.center[data-v-7a0bba90]{justify-content:center;align-items:center;padding:16px;display:flex}.day-modal[data-v-7a0bba90]{background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;max-width:360px;max-height:85vh;box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.day-modal-head[data-v-7a0bba90]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:8px;padding:14px 16px 10px;display:flex}.dm-date[data-v-7a0bba90]{font-size:16px;font-weight:600}.dm-week[data-v-7a0bba90]{margin-top:2px}.dm-close[data-v-7a0bba90]{color:var(--text-muted);border-radius:4px;padding:4px 8px;font-size:16px;line-height:1}.day-modal-body[data-v-7a0bba90]{flex-direction:column;gap:2px;padding:8px;display:flex;overflow-y:auto}.pop-btn[data-v-7a0bba90]{text-align:left;border-radius:var(--radius-sm);color:var(--text);background:0 0;border:none;justify-content:flex-start;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:14px;display:flex}.pop-btn[data-v-7a0bba90]:hover{background:var(--border)}.divider[data-v-7a0bba90]{background:var(--border);height:1px;margin:4px 6px}.popover-section[data-v-7a0bba90]{text-transform:uppercase;letter-spacing:.4px;padding:6px 10px 2px;font-size:11px;font-weight:500}.pop-btn.danger[data-v-7a0bba90]{color:var(--no)}.pop-btn.danger[data-v-7a0bba90]:hover{background:var(--no-soft)}.modal[data-v-7a0bba90]{background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;max-width:400px;max-height:85vh;box-shadow:var(--shadow);flex-direction:column;padding:20px;display:flex}.modal h3[data-v-7a0bba90]{margin:0 0 6px;font-size:16px}.modal p[data-v-7a0bba90]{margin-bottom:10px}.copy-presets[data-v-7a0bba90]{gap:6px;margin-bottom:8px;display:flex}.copy-list[data-v-7a0bba90]{border:1px solid var(--border);border-radius:var(--radius-sm);flex:1;max-height:280px;margin-bottom:12px;padding:4px;overflow-y:auto}.copy-row[data-v-7a0bba90]{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;margin-bottom:0;padding:8px;font-size:14px;display:flex}.copy-row[data-v-7a0bba90]:hover{background:var(--border)}.copy-row input[data-v-7a0bba90]{width:auto;margin:0}.copy-date[data-v-7a0bba90]{font-weight:500}.modal-actions[data-v-7a0bba90]{justify-content:flex-end;gap:8px;display:flex}.grouped[data-v-1f2abfa2]{flex-direction:column;gap:18px;display:flex}.header-row[data-v-1f2abfa2]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.head-title[data-v-1f2abfa2]{margin:0;font-size:16px;font-weight:600}.filter[data-v-1f2abfa2]{align-items:center;gap:6px;display:flex}.filter-label[data-v-1f2abfa2]{white-space:nowrap}.filter select[data-v-1f2abfa2]{width:auto;height:28px;padding:3px 22px 3px 8px;font-size:12px}.filter-static[data-v-1f2abfa2]{background:var(--border);border-radius:var(--radius-sm);padding:3px 8px}.sec[data-v-1f2abfa2]{flex-direction:column;gap:8px;display:flex}.sec-head[data-v-1f2abfa2]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:6px;display:flex}.sec-title[data-v-1f2abfa2]{flex:1;align-items:center;gap:6px;margin:0;font-size:14px;font-weight:600;display:inline-flex}.sec-title .sec-ico[data-v-1f2abfa2]{color:var(--yes);flex-shrink:0}.sec-count[data-v-1f2abfa2]{white-space:nowrap}.share-btn[data-v-1f2abfa2]{border:1px solid var(--border-strong);background:var(--bg-elev);color:var(--text);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px}.share-btn[data-v-1f2abfa2]:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-hover)}.empty[data-v-1f2abfa2]{padding:4px 2px}.empty-hint[data-v-1f2abfa2]{border-radius:var(--radius-sm);color:#92400e;background:#fef3c7;border:1px solid #fcd34d;padding:10px 14px}.progress-banner[data-v-1f2abfa2]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:6px;padding:12px 16px;display:flex}.pb-row[data-v-1f2abfa2]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pb-stat[data-v-1f2abfa2]{color:var(--primary);font-size:18px}.pb-list[data-v-1f2abfa2]{line-height:1.6}.list[data-v-1f2abfa2]{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.item[data-v-1f2abfa2]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);border-left:3px solid;align-items:center;gap:8px;padding:6px 10px;display:flex}.item.strict[data-v-1f2abfa2]{border-left-color:var(--yes)}.item.partial[data-v-1f2abfa2]{border-left-color:#f97316}.item.selected[data-v-1f2abfa2]{background:#fff7d6;border-color:#fcd34d #fcd34d #fcd34d #eab308}.selected-empty[data-v-1f2abfa2]{border-radius:var(--radius-sm);background:#fffbeb;border:1px dashed #fcd34d;align-items:center;gap:12px;padding:14px 16px;display:flex}.se-icon[data-v-1f2abfa2]{flex-shrink:0;font-size:24px;line-height:1}.se-text[data-v-1f2abfa2]{flex:1;min-width:0}.se-title[data-v-1f2abfa2]{color:#92400e;font-size:14px;font-weight:600}.se-hint[data-v-1f2abfa2]{margin-top:2px;line-height:1.5}.se-star-inline[data-v-1f2abfa2]{color:#eab308;padding:0 4px;font-weight:700;display:inline-block}.pick-btn[data-v-1f2abfa2]{width:28px;height:28px;color:var(--text-soft);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:3px;transition:color .15s,background .15s;display:inline-flex}.pick-btn[data-v-1f2abfa2]:hover:not(:disabled){color:#eab308;background:#fef9c3}.pick-btn.picked[data-v-1f2abfa2]{color:#eab308}.pick-btn.picked[data-v-1f2abfa2]:hover{color:#ca8a04}.pick-btn .star[data-v-1f2abfa2]{fill:#0000;stroke:currentColor;stroke-width:1.6px;width:100%;height:100%}.pick-btn.picked .star[data-v-1f2abfa2]{fill:currentColor;stroke:currentColor}.info[data-v-1f2abfa2]{flex:1;min-width:0}.when[data-v-1f2abfa2]{flex-wrap:wrap;align-items:baseline;gap:6px;font-size:13px;line-height:1.3;display:flex}.date[data-v-1f2abfa2]{font-weight:700}.time[data-v-1f2abfa2]{white-space:nowrap;font-family:ui-monospace,Consolas,monospace}.time-row[data-v-1f2abfa2]{flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:13px;display:flex}.time-edit[data-v-1f2abfa2]{background:#fffbeb;border:1px solid #eab308;border-radius:4px;width:auto;height:26px;min-height:26px;padding:2px 22px 2px 6px;font-family:ui-monospace,Consolas,monospace;font-size:12px}.tilde[data-v-1f2abfa2]{color:var(--text-muted);font-size:12px;font-weight:600}.dur[data-v-1f2abfa2]{color:var(--text-muted);font-size:12px}.icon-btn[data-v-1f2abfa2]{border:1px solid var(--border-strong);background:var(--bg-elev);width:24px;height:24px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;margin-left:4px;padding:0;font-size:12px;line-height:1;display:inline-flex}.icon-btn.edit-icon[data-v-1f2abfa2]:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.icon-btn.done-icon[data-v-1f2abfa2]{color:#fff;background:#10b981;border-color:#10b981;font-weight:700}.icon-btn.done-icon[data-v-1f2abfa2]:hover{background:#059669;border-color:#059669}.meta[data-v-1f2abfa2]{text-overflow:ellipsis;margin-top:1px;line-height:1.3;overflow:hidden}.meta .ok[data-v-1f2abfa2]{color:var(--yes);font-weight:500}.meta .ng[data-v-1f2abfa2]{color:#991b1b}.add-btn[data-v-1f2abfa2]{background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);white-space:nowrap;padding:4px 8px;font-size:12px;text-decoration:none}.add-btn[data-v-1f2abfa2]:hover{background:var(--border)}.toggle-more[data-v-1f2abfa2]{align-self:flex-start;margin-top:4px;padding:3px 10px;font-size:12px}.head[data-v-3fe4909d]{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.plist h3[data-v-3fe4909d]{align-items:center;gap:6px;margin:0;font-size:16px;display:inline-flex}.edit-btn[data-v-3fe4909d]{border:1px solid var(--border-strong);background:var(--bg-elev);width:26px;height:26px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;display:inline-flex}.edit-btn[data-v-3fe4909d]:hover{color:var(--primary);border-color:var(--primary)}.name-edit-btn[data-v-3fe4909d]{width:20px;height:20px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;min-height:0;margin-left:2px;padding:0;font-size:12px;line-height:1;display:inline-flex}.name-edit-btn[data-v-3fe4909d]:hover{color:var(--primary);background:var(--primary-soft)}.list[data-v-3fe4909d]{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.list li.row[data-v-3fe4909d]{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elev);align-items:center;gap:10px;padding:8px 10px;display:flex}.list li.row.me[data-v-3fe4909d]{border-color:var(--primary)}.list li.row.done[data-v-3fe4909d]{background:var(--yes-soft);border-color:var(--yes)}.list li.row.unclaimed[data-v-3fe4909d]{opacity:.7;border-style:dashed}.cb[data-v-3fe4909d]{border:2px solid var(--border-strong);background:var(--bg);color:#fff;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;font-weight:700;display:inline-flex}.cb.checked[data-v-3fe4909d]{background:var(--yes);border-color:var(--yes)}.avatar[data-v-3fe4909d]{border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:32px;height:32px}.avatar.ph[data-v-3fe4909d]{background:var(--border);color:var(--text);justify-content:center;align-items:center;font-weight:600;display:flex}.info[data-v-3fe4909d]{flex:1;min-width:0}.name[data-v-3fe4909d]{flex-wrap:wrap;align-items:center;gap:4px;font-size:14px;font-weight:500;display:flex}.badge[data-v-3fe4909d]{border-radius:999px;padding:2px 6px;font-size:10px;font-weight:500}.me-badge[data-v-3fe4909d]{background:var(--primary);color:#fff}.extra-badge[data-v-3fe4909d]{background:var(--border);color:var(--text-muted)}.overlay[data-v-3fe4909d]{z-index:100;background:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal[data-v-3fe4909d]{background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;max-width:420px;max-height:85vh;box-shadow:var(--shadow);flex-direction:column;gap:8px;padding:20px;display:flex}.modal h3[data-v-3fe4909d]{margin:0;font-size:16px}.chip-input[data-v-3fe4909d]{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);flex-wrap:wrap;align-items:center;gap:6px;min-height:38px;padding:6px 8px;display:flex}.chip-input[data-v-3fe4909d]:focus-within{outline:2px solid var(--primary);outline-offset:-1px;border-color:var(--primary)}.chip-add-row[data-v-3fe4909d]{flex:1;align-items:center;gap:6px;min-width:120px;display:flex}.chip-input input[data-v-3fe4909d]{background:0 0;border:none;outline:none;flex:1;width:auto;min-width:60px;padding:4px 0;font-size:14px}.chip-add[data-v-3fe4909d]{border:1.5px solid var(--primary);background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:16px;font-weight:700;line-height:1;display:inline-flex}.chip-add[data-v-3fe4909d]:disabled{background:var(--border);border-color:var(--border-strong);color:var(--text-soft);cursor:not-allowed}.chip-add[data-v-3fe4909d]:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.chip[data-v-3fe4909d]{background:var(--primary-soft);color:var(--primary-hover);border-radius:999px;align-items:center;gap:4px;padding:3px 4px 3px 10px;font-size:13px;font-weight:500;display:inline-flex}.chip.claimed[data-v-3fe4909d]{background:var(--yes-soft);color:var(--yes);border:1px solid var(--yes)}.chip-x[data-v-3fe4909d]{color:inherit;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:14px;line-height:1;display:inline-flex}.chip-x[data-v-3fe4909d]:hover{background:#0000001a}.modal-actions[data-v-3fe4909d]{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.room[data-v-3dc8cf21]{flex-direction:column;gap:16px;display:flex}.room-head[data-v-3dc8cf21]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.head-main h1[data-v-3dc8cf21]{margin:0 0 2px;font-size:22px}.head-main .back-btn[data-v-3dc8cf21]{color:var(--text-muted);margin:0 0 6px -4px;padding:4px 8px}.head-main .back-btn[data-v-3dc8cf21]:hover{color:var(--text)}.head-actions[data-v-3dc8cf21]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.room-meta[data-v-3dc8cf21]{flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 0;display:flex}.login-prompt[data-v-3dc8cf21]{text-align:center;padding:32px}.login-prompt h2[data-v-3dc8cf21]{margin:0 0 8px}.login-prompt button[data-v-3dc8cf21]{margin-top:12px}.login-prompt .login-big[data-v-3dc8cf21]{padding:12px 28px;font-size:15px;font-weight:600}.layout[data-v-3dc8cf21]{grid-template-columns:1fr 280px;align-items:start;gap:16px;display:grid}@media (width<=900px){.layout[data-v-3dc8cf21]{grid-template-columns:1fr}}.sidebar[data-v-3dc8cf21]{flex-direction:column;gap:12px;display:flex}.danger-zone[data-v-3dc8cf21]{border-radius:var(--radius);background:#fef2f2;border:1px dashed #fca5a5;padding:12px}.delete-room-btn[data-v-3dc8cf21]{color:#b91c1c;border-radius:var(--radius-sm);cursor:pointer;background:#fff;border:1px solid #f87171;width:100%;padding:10px;font-size:13px;font-weight:600}.delete-room-btn[data-v-3dc8cf21]:hover:not(:disabled){background:#fee2e2;border-color:#dc2626}.delete-room-btn[data-v-3dc8cf21]:disabled{opacity:.6;cursor:wait}.danger-hint[data-v-3dc8cf21]{margin:8px 0 0;line-height:1.4}.main[data-v-3dc8cf21]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.tabs[data-v-3dc8cf21]{border-bottom:1px solid var(--border);gap:4px;margin:-4px -4px 16px;padding:0 4px;display:flex}.tab[data-v-3dc8cf21]{color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:10px 14px;font-weight:500}.tab.active[data-v-3dc8cf21]{color:var(--text);border-bottom-color:var(--primary)}.tab .count[data-v-3dc8cf21]{background:var(--border);border-radius:999px;margin-left:4px;padding:1px 7px;font-size:11px}.save-status[data-v-3dc8cf21]{align-self:center;margin-left:auto;padding-right:8px}.cal-row[data-v-3dc8cf21]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.divider[data-v-3dc8cf21]{background:var(--border);height:1px;margin:16px 0}.error[data-v-3dc8cf21]{color:var(--no)}.excluded-bar[data-v-3dc8cf21]{background:var(--bg-elev);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex}.exc-chip[data-v-3dc8cf21]{background:var(--bg);border:1px solid var(--border-strong);color:var(--text);border-radius:999px;padding:4px 10px;font-size:12px}.exc-chip[data-v-3dc8cf21]:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.progress-banner[data-v-3dc8cf21]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:6px;padding:12px 16px;display:flex}.pb-row[data-v-3dc8cf21]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pb-stat[data-v-3dc8cf21]{color:var(--primary);font-size:18px}.pb-list[data-v-3dc8cf21]{line-height:1.6}.claim-card[data-v-3dc8cf21]{width:100%;max-width:600px;margin:0 auto;padding:24px}.claim-card h2[data-v-3dc8cf21]{margin:0 0 4px;font-size:20px}.claim-section[data-v-3dc8cf21]{margin-top:20px}.claim-section-label[data-v-3dc8cf21]{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:12px;font-weight:600}.claim-grid[data-v-3dc8cf21]{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.claim-btn[data-v-3dc8cf21]{border:2px solid var(--primary);background:var(--bg-elev);color:var(--primary);flex-direction:column;align-items:center;gap:4px;padding:14px 12px;font-size:15px;font-weight:600;display:flex}.claim-btn[data-v-3dc8cf21]:hover:not(:disabled){background:var(--primary);color:#fff}.claim-btn.taken[data-v-3dc8cf21]{border-color:var(--border);color:var(--text-soft);cursor:not-allowed;text-decoration:line-through}.claim-btn.current[data-v-3dc8cf21]{background:var(--primary);color:#fff;border-color:var(--primary)}.claim-tag[data-v-3dc8cf21]{color:var(--text-soft);font-size:11px;font-weight:400;text-decoration:none}.claim-btn.current .claim-tag[data-v-3dc8cf21]{color:#ffffffd9}.claim-hint[data-v-3dc8cf21]{text-align:center;margin-top:14px}.claim-actions[data-v-3dc8cf21]{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;margin-top:16px;padding-top:16px;display:flex}.claim-actions button[data-v-3dc8cf21]{padding:8px 20px}.cal-chip[data-v-3dc8cf21]{border:1.5px solid var(--border-strong);background:var(--bg-elev);color:var(--text-muted);border-radius:999px;align-items:center;gap:6px;height:34px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.cal-chip[data-v-3dc8cf21]:hover:not(:disabled){border-color:var(--text-muted);color:var(--text)}.cal-chip.active[data-v-3dc8cf21]{color:#92400e;background:#fef3c7;border-color:#f59e0b}.cal-chip.active[data-v-3dc8cf21]:hover:not(:disabled){background:#fde68a}.cal-chip.loading[data-v-3dc8cf21]{opacity:.6;cursor:wait}.cal-ic[data-v-3dc8cf21]{font-size:15px;line-height:1}.cal-txt[data-v-3dc8cf21]{line-height:1}.cal-x[data-v-3dc8cf21]{opacity:.7;margin-left:4px;font-size:16px;font-weight:700;line-height:1}.submit-btn[data-v-3dc8cf21]{background:var(--bg-elev);border:2px solid var(--primary);color:var(--primary);border-radius:999px;height:34px;padding:6px 16px;font-size:13px;font-weight:600;transition:all .15s}.submit-btn[data-v-3dc8cf21]:hover:not(:disabled){background:var(--primary-soft)}.submit-btn.done[data-v-3dc8cf21]{color:#fff;background:#10b981;border-color:#10b981}.submit-btn.done[data-v-3dc8cf21]:hover:not(:disabled){background:#059669;border-color:#059669}.submit-btn.big[data-v-3dc8cf21]{border-radius:999px;height:46px;padding:10px 32px;font-size:15px}.bottom-submit[data-v-3dc8cf21]{border-top:1px dashed var(--border);justify-content:center;margin-top:20px;padding-top:12px;display:flex}.lock-banner[data-v-3dc8cf21]{border-radius:var(--radius-sm);background:#ecfeff;border:1px solid #67e8f9;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;display:flex}.lock-ic[data-v-3dc8cf21]{font-size:18px}.lock-txt[data-v-3dc8cf21]{flex-direction:column;flex:1;gap:2px;display:flex}.unlock-btn[data-v-3dc8cf21]{background:var(--bg-elev);border:1.5px solid var(--primary);color:var(--primary);border-radius:999px;flex-shrink:0;padding:6px 14px;font-size:13px;font-weight:600}.unlock-btn[data-v-3dc8cf21]:hover{background:var(--primary-soft)}.section-heading[data-v-3dc8cf21]{margin:0 0 12px;font-size:16px;font-weight:600}.fill-mode-tabs[data-v-3dc8cf21]{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);gap:0;margin-bottom:12px;padding:2px;display:inline-flex}.fmt-btn[data-v-3dc8cf21]{color:var(--text-muted);background:0 0;border:none;border-radius:4px;padding:6px 14px;font-size:13px;font-weight:500}.fmt-btn.active[data-v-3dc8cf21]{background:var(--bg-elev);color:var(--text);box-shadow:var(--shadow-sm);font-weight:600}.privacy[data-v-09ed4f3e]{max-width:720px;margin:0 auto;padding:8px 4px 40px;line-height:1.7}.back-btn[data-v-09ed4f3e]{color:var(--text-muted);margin-bottom:16px;padding:6px 12px}.back-btn[data-v-09ed4f3e]:hover{color:var(--text)}h1[data-v-09ed4f3e]{margin:0 0 4px;font-size:26px}h2[data-v-09ed4f3e]{border-top:1px solid var(--border);margin:32px 0 8px;padding-top:12px;font-size:18px}h2[data-v-09ed4f3e]:first-of-type{border-top:none;padding-top:0}h3[data-v-09ed4f3e]{color:var(--text);margin:20px 0 4px;font-size:15px}p[data-v-09ed4f3e]{margin:8px 0}ul[data-v-09ed4f3e]{margin:8px 0;padding-left:22px}li[data-v-09ed4f3e]{margin:4px 0}code[data-v-09ed4f3e]{background:var(--border);border-radius:4px;padding:1px 6px;font-family:ui-monospace,Consolas,monospace;font-size:13px}a[data-v-09ed4f3e]{color:var(--primary);text-decoration:underline}a[data-v-09ed4f3e]:hover{text-decoration:none}.en[data-v-09ed4f3e]{color:var(--text-muted);border-left:2px solid var(--border);padding-left:12px;font-size:13px;line-height:1.6}.backdrop[data-v-71bf52e5]{z-index:100;background:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dlg[data-v-71bf52e5]{color:#2b2b2b;background:#fff;border:none;border-radius:16px;width:min(560px,92vw);max-height:calc(100svh - 32px);padding:24px;font-family:Segoe UI,Microsoft JhengHei,PingFang TC,sans-serif;overflow-y:auto;box-shadow:0 20px 60px #00000040}h2[data-v-71bf52e5]{color:#2b2b2b;margin:0 0 16px;font-size:1.3rem}.form-grid[data-v-71bf52e5]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-grid label[data-v-71bf52e5]{color:#8a8578;flex-direction:column;gap:4px;font-size:.85rem;display:flex}.form-grid label.full[data-v-71bf52e5]{grid-column:1/-1}.form-grid input[data-v-71bf52e5],.form-grid textarea[data-v-71bf52e5]{color:#2b2b2b;background:#fff;border:1px solid #e6e2da;border-radius:8px;min-height:0;padding:9px 10px;font-family:inherit;font-size:.95rem}.form-grid textarea[data-v-71bf52e5]{resize:vertical}.err[data-v-71bf52e5]{color:#c0392b;margin:12px 0 0;font-size:.85rem}.dialog-actions[data-v-71bf52e5]{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.dialog-actions button[data-v-71bf52e5]{cursor:pointer;color:#2b2b2b;background:#fff;border:1px solid #e6e2da;border-radius:10px;padding:10px 16px;font-family:inherit;font-size:.95rem}.dialog-actions button.primary[data-v-71bf52e5]{color:#fff;background:#e85d75;border-color:#e85d75;font-weight:600}.dialog-actions button.primary[data-v-71bf52e5]:hover:not(:disabled){background:#d14561}.dialog-actions button[data-v-71bf52e5]:disabled{opacity:.6;cursor:wait}@media (width<=520px){.form-grid[data-v-71bf52e5]{grid-template-columns:1fr}}.backdrop[data-v-7375e472]{z-index:100;background:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dlg[data-v-7375e472]{color:#2b2b2b;background:#fff;border:none;border-radius:16px;flex-direction:column;gap:12px;width:min(860px,94vw);max-height:calc(100svh - 32px);padding:24px;font-family:Segoe UI,Microsoft JhengHei,PingFang TC,sans-serif;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000040}h2[data-v-7375e472]{color:#2b2b2b;margin:0 0 4px;font-size:1.3rem}.compare-users[data-v-7375e472]{color:#8a8578;font-size:.88rem;display:block}.compare-users input[data-v-7375e472]{color:#2b2b2b;background:#fff;border:1px solid #e6e2da;border-radius:8px;width:76px;margin:0 4px;padding:6px 8px;font-family:inherit;font-size:.95rem}.compare-wrap[data-v-7375e472]{flex:1;max-height:60vh;overflow:auto}.compare-wrap table[data-v-7375e472]{border-collapse:collapse;min-width:100%;font-size:.85rem}.compare-wrap th[data-v-7375e472],.compare-wrap td[data-v-7375e472]{text-align:left;vertical-align:top;border:1px solid #e6e2da;min-width:110px;padding:8px 10px}.compare-wrap thead th[data-v-7375e472]{color:#2b2b2b;background:#f0ede7;position:sticky;top:0}.compare-wrap tbody th[data-v-7375e472]{white-space:nowrap;color:#8a8578;background:#faf8f4;font-weight:600}.compare-wrap a[data-v-7375e472]{color:#e85d75;text-decoration:underline}.dialog-actions[data-v-7375e472]{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.dialog-actions button[data-v-7375e472]{cursor:pointer;color:#2b2b2b;background:#fff;border:1px solid #e6e2da;border-radius:10px;padding:10px 16px;font-family:inherit;font-size:.95rem}.studios-page[data-v-577122b2]{--bg:#f7f5f2;--card:#fff;--sf-text:#2b2b2b;--muted:#8a8578;--accent:#e85d75;--accent-dark:#d14561;--sf-border:#e6e2da;--tag-bg:#f0ede7;background:var(--bg);color:var(--sf-text);min-height:calc(100svh - 100px);margin:-24px;padding:0;font-family:Segoe UI,Microsoft JhengHei,PingFang TC,sans-serif}@media (width<=600px){.studios-page[data-v-577122b2]{margin:-16px}}.login-screen[data-v-577122b2]{background:#f7f5f2;justify-content:center;align-items:center;min-height:calc(100svh - 100px);margin:-24px;padding:24px;display:flex}.login-card[data-v-577122b2]{text-align:center;background:#fff;border:1px solid #e6e2da;border-radius:14px;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:380px;padding:40px 32px;display:flex;box-shadow:0 8px 24px #0000000f}.login-card .logo-inline[data-v-577122b2]{color:#fff;background:linear-gradient(135deg,#e85d75 0%,#f2984d 100%);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:8px;font-weight:800;display:flex;transform:rotate(-6deg);box-shadow:0 3px 10px #e85d7559}.login-card h1[data-v-577122b2]{letter-spacing:2px;color:#2b2b2b;margin:0;font-size:1.8rem}.login-card .subtitle[data-v-577122b2]{color:#8a8578;margin:4px 0 20px}.login-card .primary.big[data-v-577122b2]{color:#fff;cursor:pointer;background:#e85d75;border:1px solid #e85d75;border-radius:10px;padding:12px 28px;font-size:.95rem;font-weight:600}.login-card .primary.big[data-v-577122b2]:hover{background:#d14561}.page-header[data-v-577122b2]{text-align:center;padding:32px 16px 16px;position:relative}.page-header .logo[data-v-577122b2]{background:linear-gradient(135deg, var(--accent) 0%, #f2984d 100%);color:#fff;letter-spacing:.5px;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.05rem;font-weight:800;display:flex;position:absolute;top:14px;left:18px;transform:rotate(-6deg);box-shadow:0 3px 10px #e85d7559}.page-header h1[data-v-577122b2]{letter-spacing:2px;color:var(--sf-text);margin:0;font-size:2rem}.page-header .subtitle[data-v-577122b2]{color:var(--muted);margin-top:4px}.page-header .cross-link[data-v-577122b2]{background:var(--tag-bg);color:#6b6656;border:1px solid var(--sf-border);border-radius:999px;margin-top:10px;padding:6px 16px;font-size:.85rem;text-decoration:none;display:inline-block}.page-header .cross-link[data-v-577122b2]:hover{background:#e8e4dc}.main[data-v-577122b2]{max-width:1080px;margin:0 auto;padding:16px}.toolbar[data-v-577122b2]{border:1px solid var(--sf-border);background:#fdfcfa;border-radius:14px;flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:14px 16px;display:flex;box-shadow:0 1px 3px #00000008}.toolbar input[type=search][data-v-577122b2]{flex:240px}.toolbar input[data-v-577122b2],.toolbar select[data-v-577122b2]{border:1px solid var(--sf-border);background:var(--card);color:var(--sf-text);border-radius:10px;padding:10px 14px;font-family:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.toolbar input[data-v-577122b2]:hover:not(:focus),.toolbar select[data-v-577122b2]:hover:not(:focus){border-color:#c9c2b3}.toolbar input[data-v-577122b2]:focus,.toolbar select[data-v-577122b2]:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #e85d7526}.toolbar select[data-v-577122b2]{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='none' stroke='%238a8578' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1l5 5 5-5'/></svg>");background-position:right 12px center;background-repeat:no-repeat;min-width:140px;padding-right:34px}.range-group[data-v-577122b2]{background:var(--card);border:1px solid var(--sf-border);color:var(--muted);white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:6px 12px;font-size:.88rem;transition:border-color .15s;display:inline-flex}.range-group[data-v-577122b2]:hover{border-color:#c9c2b3}.range-group[data-v-577122b2]:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #e85d7526}.range-group input.num[data-v-577122b2]{border:1px solid var(--sf-border);width:72px;color:var(--sf-text);background:#fdfcfa;border-radius:8px;padding:5px 8px;font-family:inherit;font-size:.88rem}.range-group input.num[data-v-577122b2]:focus{border-color:var(--accent);background:#fff;outline:none}.range-group input.num.short[data-v-577122b2]{width:56px}.toolbar button[data-v-577122b2]{border:1px solid var(--sf-border);background:var(--card);cursor:pointer;color:var(--sf-text);border-radius:10px;padding:10px 16px;font-family:inherit;font-size:.95rem;transition:transform .1s,border-color .15s,background .15s}.toolbar button[data-v-577122b2]:hover{border-color:#c9c2b3}.toolbar button[data-v-577122b2]:active{transform:translateY(1px)}.toolbar button.primary[data-v-577122b2]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.toolbar button.primary[data-v-577122b2]:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.toolbar .add-btn[data-v-577122b2]{color:#fff;background:#3d6a8f;border-color:#3d6a8f;margin-left:auto;font-weight:600}.toolbar .add-btn[data-v-577122b2]:hover{background:#2f5473;border-color:#2f5473}.fav-filter.active[data-v-577122b2]{background:var(--accent);border-color:var(--accent);color:#fff}.fav-filter.active[data-v-577122b2]:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.result-count[data-v-577122b2]{color:var(--muted);margin:4px 2px 12px;font-size:.85rem}.studio-list[data-v-577122b2]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.card[data-v-577122b2]{background:var(--card);border:1px solid var(--sf-border);border-radius:14px;flex-direction:column;gap:8px;padding:16px;display:flex}.card-head[data-v-577122b2]{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.card-title[data-v-577122b2]{color:var(--sf-text);font-size:1.05rem;font-weight:700}.card-title .branch[data-v-577122b2]{color:var(--muted);margin-left:4px;font-size:.9rem;font-weight:500}.room-row[data-v-577122b2]{margin-top:-2px}.price[data-v-577122b2]{color:var(--accent);white-space:nowrap;font-weight:700}.price small[data-v-577122b2]{color:var(--muted);font-weight:400}.tags[data-v-577122b2]{flex-wrap:wrap;gap:6px;display:flex}.tag[data-v-577122b2]{background:var(--tag-bg);color:#6b6656;border-radius:999px;padding:3px 10px;font-size:.78rem}.tag.station[data-v-577122b2]{color:#3d7a68;background:#e3f0ec}.tag.room[data-v-577122b2]{color:#3d6a8f;background:#e2ecf6;padding:4px 12px;font-size:.82rem;font-weight:600}a.tag.link[data-v-577122b2]{color:#6a4fa3;background:#ece7f5;text-decoration:none}a.tag.link[data-v-577122b2]:hover{background:#ded5f0}.info[data-v-577122b2]{color:var(--muted);word-break:break-all;font-size:.85rem;line-height:1.5}.info a[data-v-577122b2]{color:inherit;text-decoration:underline}.note[data-v-577122b2]{color:#a3672a;background:#fdf4e7;border-radius:8px;padding:6px 10px;font-size:.82rem}.note a[data-v-577122b2]{color:inherit;text-decoration:underline}.updated[data-v-577122b2]{color:#c4c0b6;text-align:right;margin-top:auto;font-size:.72rem}.card-actions[data-v-577122b2]{border-top:1px solid var(--sf-border);justify-content:flex-end;gap:8px;padding-top:10px;display:flex}.card:not(:has(.updated)) .card-actions[data-v-577122b2]{margin-top:auto}.card-actions button[data-v-577122b2]{border:1px solid var(--sf-border);background:var(--card);color:var(--sf-text);cursor:pointer;border-radius:10px;padding:5px 12px;font-family:inherit;font-size:.82rem}.card-actions .delete[data-v-577122b2]{color:#c0392b}.card-actions .fav[data-v-577122b2]{color:#c9c4ba;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin-right:auto;padding:0;display:inline-flex}.card-actions .fav svg[data-v-577122b2]{width:17px;height:17px}.card-actions .fav[data-v-577122b2]:hover{background:#fbeef1}.card-actions .fav.active[data-v-577122b2]{color:var(--accent)}.card-actions .cmp.active[data-v-577122b2]{color:#fff;background:#3d6a8f;border-color:#3d6a8f}.card-actions .share[data-v-577122b2]{color:#3d6a8f;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.card-actions .share[data-v-577122b2]:hover{background:#e2ecf6}.card-actions .share svg[data-v-577122b2]{width:16px;height:16px}.empty[data-v-577122b2]{text-align:center;color:var(--muted);grid-column:1/-1;padding:48px 0}.compare-bar[data-v-577122b2]{background:var(--card);border:1px solid var(--sf-border);z-index:50;color:var(--sf-text);border-radius:999px;align-items:center;gap:10px;padding:8px 10px 8px 18px;font-size:.9rem;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000002e}.compare-bar button[data-v-577122b2]{border:1px solid var(--sf-border);background:var(--card);cursor:pointer;color:var(--sf-text);border-radius:10px;padding:6px 14px;font-family:inherit;font-size:.85rem}.compare-bar button.primary[data-v-577122b2]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.compare-bar button.primary[data-v-577122b2]:hover{background:var(--accent-dark)}.toast[data-v-577122b2]{color:#fff;white-space:pre-wrap;z-index:99;background:#333;border-radius:12px;max-width:min(420px,88vw);padding:12px 18px;font-size:.85rem;line-height:1.5;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000004d}.gate[data-v-119f9f8b]{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:60px 24px;display:flex}.admin[data-v-119f9f8b]{flex-direction:column;gap:20px;max-width:900px;margin:0 auto;display:flex}.head[data-v-119f9f8b]{text-align:center;padding:8px 0}.head h1[data-v-119f9f8b]{margin:4px 0 2px;font-size:22px}.head .back-btn[data-v-119f9f8b]{color:var(--text-muted);margin-bottom:8px}.section[data-v-119f9f8b]{flex-direction:column;gap:8px;display:flex}.section-title[data-v-119f9f8b]{border-bottom:1px solid var(--border);margin:0;padding:8px 4px;font-size:16px;font-weight:600}.empty[data-v-119f9f8b]{padding:12px 4px}.list[data-v-119f9f8b]{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.row[data-v-119f9f8b]{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.row.pending-row[data-v-119f9f8b]{background:#fffbeb;border-left:3px solid #f59e0b}.row.blocked-row[data-v-119f9f8b]{opacity:.7;border-left:3px solid #ef4444}.avatar[data-v-119f9f8b]{background:var(--border);width:40px;height:40px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.who[data-v-119f9f8b]{min-width:0}.name[data-v-119f9f8b]{font-size:14px;font-weight:600}.email[data-v-119f9f8b]{font-family:ui-monospace,Consolas,monospace}.ts[data-v-119f9f8b]{margin-top:2px}.perms[data-v-119f9f8b]{flex-wrap:wrap;gap:6px;display:flex}.perm-toggle[data-v-119f9f8b]{border:1.5px solid var(--border-strong);background:var(--bg);color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:4px;min-height:0;padding:4px 10px;font-size:12px;transition:all .15s;display:inline-flex}.perm-toggle[data-v-119f9f8b]:hover:not(:disabled){border-color:var(--primary)}.perm-toggle.on[data-v-119f9f8b]{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.perm-toggle .check[data-v-119f9f8b]{text-align:center;width:12px;font-weight:700;display:inline-block}.perm-toggle[data-v-119f9f8b]:disabled{opacity:.5;cursor:wait}.perm-toggle.dirty[data-v-119f9f8b]{outline-offset:1px;outline:2px dashed #f59e0b}.save-perms[data-v-119f9f8b]{color:#fff;background:#059669;border-color:#059669;font-weight:600}.save-perms[data-v-119f9f8b]:hover:not(:disabled){background:#047857;border-color:#047857}.actions[data-v-119f9f8b]{flex-wrap:wrap;gap:6px;display:flex}.actions button[data-v-119f9f8b]{min-height:0;padding:6px 12px;font-size:12px}.actions button.danger[data-v-119f9f8b]{color:#b91c1c;border-color:#f87171}.actions button.danger[data-v-119f9f8b]:hover:not(:disabled){background:#fee2e2}@media (width<=720px){.row[data-v-119f9f8b]{grid-template-columns:auto 1fr;gap:8px}.perms[data-v-119f9f8b],.actions[data-v-119f9f8b]{grid-column:1/-1}}
