.toast-container[data-v-d4e535ae]{position:fixed;bottom:calc(72px + env(safe-area-inset-bottom,0px));right:var(--space-4);z-index:9999;display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}@media (min-width: 768px){.toast-container[data-v-d4e535ae]{bottom:var(--space-5)}}.toast[data-v-d4e535ae]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:.9375rem;font-weight:500;box-shadow:var(--shadow-md);pointer-events:auto;max-width:340px}.toast--success[data-v-d4e535ae]{background:var(--success);color:#fff}.toast--error[data-v-d4e535ae]{background:var(--danger);color:#fff}.toast--info[data-v-d4e535ae]{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border)}.toast-icon[data-v-d4e535ae]{font-style:normal;font-size:1rem;flex-shrink:0}.toast-enter-active[data-v-d4e535ae],.toast-leave-active[data-v-d4e535ae]{transition:opacity .2s ease,transform .2s ease}.toast-enter-from[data-v-d4e535ae],.toast-leave-to[data-v-d4e535ae]{opacity:0;transform:translateY(8px)}.esb-wrap[data-v-3c43f8ae]{position:fixed;bottom:var(--space-5, 20px);left:50%;transform:translate(-50%);z-index:8000;width:min(480px,calc(100vw - 32px));background:var(--bg-elevated, #fff);border:1px solid var(--border, #e0e0e0);border-radius:var(--radius, 8px);box-shadow:var(--shadow-md, 0 4px 16px rgba(0,0,0,.12));overflow:hidden}.esb-bar[data-v-3c43f8ae]{display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px)}.esb-icon[data-v-3c43f8ae]{font-size:1rem;flex-shrink:0}.esb-label[data-v-3c43f8ae]{flex:1;font-size:.875rem;font-weight:500;color:var(--text, #222)}.esb-bar-actions[data-v-3c43f8ae]{display:flex;align-items:center;gap:var(--space-1, 4px)}.esb-list[data-v-3c43f8ae]{border-top:1px solid var(--border, #e0e0e0);padding:var(--space-2, 8px) 0}.esb-item[data-v-3c43f8ae]{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:var(--space-2, 8px);row-gap:2px;align-items:center;padding:var(--space-2, 8px) var(--space-3, 12px);cursor:pointer;transition:background .1s}.esb-item[data-v-3c43f8ae]:hover{background:var(--bg-hover, rgba(0,0,0,.04))}.esb-item--checked .esb-item-name[data-v-3c43f8ae]{color:var(--text, #222)}.esb-checkbox[data-v-3c43f8ae]{grid-row:1 / 3;width:15px;height:15px;cursor:pointer;flex-shrink:0;accent-color:var(--accent, #4a6cf7)}.esb-item-name[data-v-3c43f8ae]{font-size:.875rem;font-weight:500;color:var(--text, #222);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.esb-item-type[data-v-3c43f8ae]{font-size:.75rem;color:var(--text-muted, #888);background:var(--bg-subtle, #f5f5f5);padding:1px 6px;border-radius:99px;white-space:nowrap;justify-self:end}.esb-item-desc[data-v-3c43f8ae]{grid-column:2 / 4;font-size:.8125rem;color:var(--text-muted, #888);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.esb-footer[data-v-3c43f8ae]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2, 8px) var(--space-3, 12px);border-top:1px solid var(--border, #e0e0e0);margin-top:var(--space-1, 4px)}.esb-footer-right[data-v-3c43f8ae]{display:flex;gap:var(--space-2, 8px);align-items:center}.esb-btn[data-v-3c43f8ae]{border:none;border-radius:var(--radius-sm, 5px);cursor:pointer;font-size:.8125rem;font-weight:500;padding:5px 10px;transition:background .15s,opacity .15s}.esb-btn--ghost[data-v-3c43f8ae]{background:transparent;color:var(--text-muted, #888)}.esb-btn--ghost[data-v-3c43f8ae]:hover{background:var(--bg-hover, rgba(0,0,0,.06));color:var(--text, #222)}.esb-btn--primary[data-v-3c43f8ae]{background:var(--accent, #4a6cf7);color:#fff}.esb-btn--primary[data-v-3c43f8ae]:hover:not(:disabled){opacity:.88}.esb-btn--primary[data-v-3c43f8ae]:disabled{opacity:.4;cursor:not-allowed}.esb-close[data-v-3c43f8ae]{font-size:1.1rem;padding:2px 7px;line-height:1}.esb-small[data-v-3c43f8ae]{font-size:.75rem}.banner-enter-active[data-v-3c43f8ae],.banner-leave-active[data-v-3c43f8ae]{transition:opacity .2s ease,transform .2s ease}.banner-enter-from[data-v-3c43f8ae],.banner-leave-to[data-v-3c43f8ae]{opacity:0;transform:translate(-50%) translateY(10px)}.expand-enter-active[data-v-3c43f8ae],.expand-leave-active[data-v-3c43f8ae]{transition:opacity .15s ease}.expand-enter-from[data-v-3c43f8ae],.expand-leave-to[data-v-3c43f8ae]{opacity:0}.cwb-wrap[data-v-b2d7d8da]{position:fixed;bottom:var(--space-5, 20px);left:50%;transform:translate(-50%);z-index:7900;width:min(520px,calc(100vw - 32px));background:var(--bg-elevated, #fff);border:1px solid #e6a817;border-radius:var(--radius, 8px);box-shadow:var(--shadow-md, 0 4px 16px rgba(0,0,0,.12));overflow:hidden}.cwb-bar[data-v-b2d7d8da]{display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px);background:#e6a8170f}.cwb-icon[data-v-b2d7d8da]{font-size:.95rem;flex-shrink:0}.cwb-label[data-v-b2d7d8da]{flex:1;font-size:.875rem;font-weight:500;color:var(--text, #222)}.cwb-scene[data-v-b2d7d8da]{font-weight:400;color:var(--text-muted, #888)}.cwb-bar-actions[data-v-b2d7d8da]{display:flex;align-items:center;gap:var(--space-1, 4px)}.cwb-list[data-v-b2d7d8da]{border-top:1px solid rgba(230,168,23,.3)}.cwb-item[data-v-b2d7d8da]{display:flex;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px);align-items:flex-start}.cwb-item+.cwb-item[data-v-b2d7d8da]{border-top:1px solid var(--border, #e0e0e0)}.cwb-bullet[data-v-b2d7d8da]{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:#e6a817;color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px}.cwb-text[data-v-b2d7d8da]{font-size:.875rem;color:var(--text, #222);line-height:1.5}.cwb-footer[data-v-b2d7d8da]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2, 8px) var(--space-3, 12px);border-top:1px solid var(--border, #e0e0e0)}.cwb-note[data-v-b2d7d8da]{font-size:.8rem;color:var(--text-muted, #888)}.cwb-btn[data-v-b2d7d8da]{border:none;border-radius:var(--radius-sm, 5px);cursor:pointer;font-size:.8125rem;font-weight:500;padding:5px 10px;transition:background .15s,opacity .15s}.cwb-btn--ghost[data-v-b2d7d8da]{background:transparent;color:var(--text-muted, #888)}.cwb-btn--ghost[data-v-b2d7d8da]:hover{background:var(--bg-hover, rgba(0,0,0,.06));color:var(--text, #222)}.cwb-close[data-v-b2d7d8da]{font-size:1.1rem;padding:2px 7px;line-height:1}.banner-enter-active[data-v-b2d7d8da],.banner-leave-active[data-v-b2d7d8da]{transition:opacity .2s ease,transform .2s ease}.banner-enter-from[data-v-b2d7d8da],.banner-leave-to[data-v-b2d7d8da]{opacity:0;transform:translate(-50%) translateY(10px)}.expand-enter-active[data-v-b2d7d8da],.expand-leave-active[data-v-b2d7d8da]{transition:opacity .15s ease}.expand-enter-from[data-v-b2d7d8da],.expand-leave-to[data-v-b2d7d8da]{opacity:0}.modal-backdrop[data-v-ed9d5118]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);box-sizing:border-box}.modal-card[data-v-ed9d5118]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:480px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;max-height:80vh}.modal-header[data-v-ed9d5118]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);flex-shrink:0}.modal-title[data-v-ed9d5118]{margin:0;font-size:1.125rem;font-weight:600}.modal-close[data-v-ed9d5118]{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--text-muted);padding:var(--space-1)}.modal-close[data-v-ed9d5118]:hover{color:var(--text)}.story-list[data-v-ed9d5118]{flex:1;overflow-y:auto;padding:var(--space-2) 0}.story-item[data-v-ed9d5118]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;text-align:left;background:none;border:none;border-left:3px solid transparent;padding:var(--space-3) var(--space-5);cursor:pointer;font:inherit;transition:background .15s,border-color .15s}.story-item[data-v-ed9d5118]:hover{background:var(--bg)}.story-item.active[data-v-ed9d5118]{background:#2563eb0f;border-left-color:var(--accent)}.story-item-main[data-v-ed9d5118]{flex:1;min-width:0}.story-item-title[data-v-ed9d5118]{display:block;font-weight:500;font-size:.9375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.story-item-meta[data-v-ed9d5118]{display:block;font-size:.8125rem;color:var(--text-muted);margin-top:2px}.story-item-date[data-v-ed9d5118]{color:var(--text-muted)}.story-item-badge[data-v-ed9d5118]{font-size:.75rem;font-weight:600;color:var(--accent);flex-shrink:0}.modal-footer[data-v-ed9d5118]{padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);flex-shrink:0}.search-backdrop[data-v-49b4bf36]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;z-index:2000;padding-left:var(--space-4);padding-right:var(--space-4);box-sizing:border-box}.search-card[data-v-49b4bf36]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:560px;box-shadow:var(--shadow-md);overflow:hidden}.search-input-wrap[data-v-49b4bf36]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.search-icon[data-v-49b4bf36]{color:var(--text-muted);flex-shrink:0}.search-input[data-v-49b4bf36]{flex:1;border:none;background:transparent;font-size:1rem;outline:none;color:var(--text);padding:0;min-height:unset;width:auto;box-shadow:none}.search-input[data-v-49b4bf36]:focus{border-color:transparent;box-shadow:none}.search-esc[data-v-49b4bf36]{font-size:.75rem;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:2px 6px;cursor:pointer;flex-shrink:0}.search-results[data-v-49b4bf36]{max-height:400px;overflow-y:auto}.search-hint[data-v-49b4bf36]{padding:var(--space-4) var(--space-5);font-size:.9375rem;color:var(--text-muted);text-align:center}.search-result[data-v-49b4bf36]{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background .1s}.search-result[data-v-49b4bf36]:hover,.search-result.active[data-v-49b4bf36]{background:var(--bg)}.search-result-type[data-v-49b4bf36]{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);flex-shrink:0;width:72px;padding-top:2px}.search-result-body[data-v-49b4bf36]{flex:1;min-width:0}.search-result-title[data-v-49b4bf36]{display:block;font-weight:500;font-size:.9375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-excerpt[data-v-49b4bf36]{display:block;font-size:.8125rem;color:var(--text-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.otter-panel[data-v-799e8aa5]{position:fixed;top:0;right:0;bottom:0;width:min(320px,90vw);background:var(--bg-elevated);border-left:1px solid var(--border);box-shadow:-4px 0 20px #0000001a;display:flex;flex-direction:column;overflow:hidden;transform:translate(110%);transition:transform .25s ease;z-index:210;padding-top:calc(64px + env(safe-area-inset-top,0px))}.otter-panel--open[data-v-799e8aa5]{transform:translate(0)}.otter-panel--resizing[data-v-799e8aa5]{transition:none;-webkit-user-select:none;user-select:none}.otter-resize-handle[data-v-799e8aa5]{position:absolute;left:0;top:0;bottom:0;width:5px;cursor:col-resize;z-index:1}.otter-resize-handle[data-v-799e8aa5]:hover,.otter-panel--resizing .otter-resize-handle[data-v-799e8aa5]{background:var(--accent);opacity:.35}@media (max-width: 767px){.otter-resize-handle[data-v-799e8aa5]{display:none}}@media (max-width: 767px){.otter-panel[data-v-799e8aa5]{padding-top:env(safe-area-inset-top,0px);padding-bottom:calc(60px + env(safe-area-inset-bottom,0px))}}.otter-header[data-v-799e8aa5]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg-elevated)}.otter-header-left[data-v-799e8aa5]{display:flex;align-items:center;gap:var(--space-2)}.otter-avatar[data-v-799e8aa5]{font-size:1.5rem;line-height:1}.otter-name[data-v-799e8aa5]{font-size:.9375rem;font-weight:600;color:var(--text);line-height:1.2}.otter-tagline[data-v-799e8aa5]{font-size:.75rem;color:var(--text-muted);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.otter-header-right[data-v-799e8aa5]{display:flex;align-items:center;gap:var(--space-1)}.otter-clear-btn[data-v-799e8aa5]{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:.75rem;padding:2px var(--space-2);border-radius:var(--radius-sm);transition:color .15s,background .15s}.otter-clear-btn[data-v-799e8aa5]:hover{color:var(--text);background:var(--border)}.otter-close-btn[data-v-799e8aa5]{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:var(--space-1);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.otter-close-btn[data-v-799e8aa5]:hover{color:var(--text);background:var(--border)}.otter-messages[data-v-799e8aa5]{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.otter-welcome[data-v-799e8aa5]{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-3);text-align:center;color:var(--text-muted);font-size:.9375rem;line-height:1.5}.otter-welcome-avatar[data-v-799e8aa5]{font-size:2.5rem;line-height:1}.otter-welcome p[data-v-799e8aa5]{margin:0}.otter-msg[data-v-799e8aa5]{display:flex;gap:var(--space-2);align-items:flex-end}.otter-msg--user[data-v-799e8aa5]{flex-direction:row-reverse}.otter-msg-icon[data-v-799e8aa5]{font-size:1.1rem;line-height:1;flex-shrink:0;margin-bottom:2px}.otter-bubble[data-v-799e8aa5]{max-width:85%;padding:var(--space-2) var(--space-3);border-radius:14px;font-size:.9rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.otter-msg--assistant .otter-bubble[data-v-799e8aa5]{background:var(--bg);border:1px solid var(--border);border-bottom-left-radius:4px;color:var(--text)}.otter-msg--user .otter-bubble[data-v-799e8aa5]{background:var(--accent);color:var(--accent-fg);border-bottom-right-radius:4px}.otter-action-chips[data-v-799e8aa5]{display:flex;flex-direction:column;gap:var(--space-1);padding-left:calc(1.1rem + var(--space-2));margin-top:calc(-1 * var(--space-2))}.otter-action-pending[data-v-799e8aa5]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.otter-action-pending-label[data-v-799e8aa5]{font-size:.8125rem;color:var(--text-muted);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.otter-action-btn[data-v-799e8aa5]{flex-shrink:0;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:500;cursor:pointer;border:1px solid;transition:background .15s,color .15s}.otter-action-btn--save[data-v-799e8aa5]{background:color-mix(in srgb,var(--success, #16a34a) 12%,transparent);color:var(--success, #16a34a);border-color:color-mix(in srgb,var(--success, #16a34a) 30%,transparent)}.otter-action-btn--save[data-v-799e8aa5]:hover{background:color-mix(in srgb,var(--success, #16a34a) 22%,transparent)}.otter-action-btn--skip[data-v-799e8aa5]{background:transparent;color:var(--text-muted);border-color:var(--border)}.otter-action-btn--skip[data-v-799e8aa5]:hover{background:var(--border);color:var(--text)}.otter-action-chip[data-v-799e8aa5]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:500;background:color-mix(in srgb,var(--success, #16a34a) 12%,transparent);color:var(--success, #16a34a);border:1px solid color-mix(in srgb,var(--success, #16a34a) 30%,transparent)}.otter-action-chip--muted[data-v-799e8aa5]{background:transparent;color:var(--text-muted);border-color:var(--border)}.otter-action-chip--error[data-v-799e8aa5]{background:color-mix(in srgb,var(--danger, #dc2626) 10%,transparent);color:var(--danger, #dc2626);border-color:color-mix(in srgb,var(--danger, #dc2626) 25%,transparent)}.otter-bubble--typing[data-v-799e8aa5]{display:flex;align-items:center;gap:4px;padding:var(--space-3) var(--space-3);min-width:48px}.typing-dot[data-v-799e8aa5]{width:6px;height:6px;border-radius:50%;background:var(--text-muted);display:inline-block;animation:otter-typing-799e8aa5 1.4s ease-in-out infinite}.typing-dot[data-v-799e8aa5]:nth-child(2){animation-delay:.2s}.typing-dot[data-v-799e8aa5]:nth-child(3){animation-delay:.4s}@keyframes otter-typing-799e8aa5{0%,80%,to{opacity:.25;transform:scale(.85)}40%{opacity:1;transform:scale(1)}}.otter-input-drag-bar[data-v-799e8aa5]{flex-shrink:0;height:5px;cursor:row-resize;background:transparent;transition:background .15s}.otter-input-drag-bar[data-v-799e8aa5]:hover{background:var(--accent);opacity:.35}.otter-no-key[data-v-799e8aa5]{flex-shrink:0;padding:var(--space-4);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-2);text-align:center}.otter-no-key p[data-v-799e8aa5]{margin:0;font-size:.875rem;color:var(--text-muted)}.otter-input-row[data-v-799e8aa5]{flex-shrink:0;display:flex;align-items:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:var(--bg-elevated)}.otter-textarea[data-v-799e8aa5]{flex:1;min-height:40px;max-height:400px;resize:none;border-radius:var(--radius-sm);font-size:.9rem;padding:var(--space-2) var(--space-3);line-height:1.5;overflow-y:auto}.otter-send-btn[data-v-799e8aa5]{flex-shrink:0;width:38px;height:38px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-fg);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}.otter-send-btn[data-v-799e8aa5]:hover:not(:disabled){background:var(--accent-hover)}.otter-send-btn[data-v-799e8aa5]:disabled{opacity:.4;cursor:default}.otter-scrim[data-v-799e8aa5]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:209;background:#00000040;cursor:pointer}.fb-backdrop[data-v-9bade08f]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:300;padding:var(--space-4);box-sizing:border-box}.fb-card[data-v-9bade08f]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:var(--space-5);width:100%;max-width:26rem;display:flex;flex-direction:column;gap:var(--space-4)}.fb-header[data-v-9bade08f]{display:flex;align-items:center;justify-content:space-between}.fb-title[data-v-9bade08f]{margin:0;font-size:1.125rem;font-weight:700;color:var(--text)}.fb-close[data-v-9bade08f]{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:var(--space-1);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.fb-close[data-v-9bade08f]:hover{color:var(--text);background:var(--border)}.fb-field[data-v-9bade08f]{display:flex;flex-direction:column;gap:var(--space-2)}.fb-label[data-v-9bade08f]{font-size:.8125rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.fb-types[data-v-9bade08f]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.fb-type-btn[data-v-9bade08f]{display:flex;align-items:center;gap:5px;padding:4px 12px;border-radius:999px;font-size:.8125rem;font-weight:500;border:1.5px solid var(--border);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.fb-type-btn[data-v-9bade08f]:hover{border-color:var(--accent);color:var(--accent)}.fb-type-btn--active[data-v-9bade08f]{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent)}.fb-textarea[data-v-9bade08f]{width:100%;box-sizing:border-box;resize:vertical;min-height:100px;border-radius:var(--radius-sm);font-size:.9375rem;padding:var(--space-2) var(--space-3);line-height:1.5}.fb-error[data-v-9bade08f]{margin:0;font-size:.8125rem;color:var(--danger)}.fb-actions[data-v-9bade08f]{display:flex;justify-content:flex-end;gap:var(--space-2)}.fb-thankyou[data-v-9bade08f]{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;text-align:center}.fb-thankyou-icon[data-v-9bade08f]{font-size:2rem;line-height:1}.fb-thankyou-msg[data-v-9bade08f]{margin:0;font-size:.9375rem;color:var(--text-muted);line-height:1.5}.app[data-v-fb499c8c]{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.app-body[data-v-fb499c8c]{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}@media (min-width: 768px){.app-body[data-v-fb499c8c]{padding-top:calc(64px + env(safe-area-inset-top,0px))}}.main-content[data-v-fb499c8c]{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.sidebar[data-v-fb499c8c]{width:260px;flex-shrink:0;background:var(--bg-elevated);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.sidebar-header[data-v-fb499c8c]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-title[data-v-fb499c8c]{font-size:.9375rem;font-weight:600;margin:0;color:var(--text)}.sidebar-header-actions[data-v-fb499c8c]{display:flex;align-items:center;gap:var(--space-1)}.sidebar-icon-btn[data-v-fb499c8c]{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:var(--space-1);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;line-height:1}.sidebar-icon-btn[data-v-fb499c8c]:hover{color:var(--text);background:var(--bg)}.sidebar-close[data-v-fb499c8c]{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--text-muted);padding:var(--space-1)}.sidebar-close[data-v-fb499c8c]:hover{color:var(--text)}.sidebar-section-title-btn[data-v-fb499c8c]{background:none;border:none;cursor:pointer;font:inherit;display:flex;align-items:center;gap:var(--space-1);width:100%;text-align:left;color:var(--text-muted);padding:var(--space-1) var(--space-4);margin:0 0 var(--space-1)}.sidebar-section-title-btn[data-v-fb499c8c]:hover{color:var(--text)}.sidebar-link[data-v-fb499c8c]{font-weight:500}.sidebar-nav[data-v-fb499c8c]{flex:1;overflow-y:auto;padding:var(--space-2) 0}.sidebar-section[data-v-fb499c8c]{margin-bottom:var(--space-4)}.sidebar-section[data-v-fb499c8c]:last-child{margin-bottom:0}.sidebar-section-title[data-v-fb499c8c]{font-size:.6875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-1) var(--space-4);margin:0 0 var(--space-1)}.sidebar-item[data-v-fb499c8c]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:.9375rem;padding:var(--space-2) var(--space-4);color:var(--text);text-decoration:none;border-left:3px solid transparent;transition:background .15s,border-color .15s}.sidebar-item[data-v-fb499c8c]:hover{background:var(--bg);text-decoration:none;color:var(--text)}.sidebar-item.active[data-v-fb499c8c]{background:#2563eb14;border-left-color:var(--accent);color:var(--accent);font-weight:500}.sidebar-item-label[data-v-fb499c8c]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-item-button[data-v-fb499c8c]{width:100%;text-align:left;background:none;border:none;border-left:3px solid transparent;cursor:pointer;font:inherit;font-size:.9375rem;padding:var(--space-2) var(--space-4);color:var(--text);transition:background .15s,border-color .15s}.sidebar-item-button[data-v-fb499c8c]:hover{background:var(--bg);color:var(--text)}.sidebar-item-button.active[data-v-fb499c8c]{background:#2563eb14;border-left-color:var(--accent);color:var(--accent);font-weight:500}.sidebar-new-story[data-v-fb499c8c]{color:var(--text-muted);margin-top:var(--space-1)}.sidebar-new-story[data-v-fb499c8c]:hover{color:var(--accent)}.sidebar-empty-inline[data-v-fb499c8c]{font-size:.8125rem;color:var(--text-muted);padding:var(--space-2) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.sidebar-empty-inline .sidebar-link[data-v-fb499c8c]{font-weight:500}.sidebar-chapter[data-v-fb499c8c]{margin-bottom:var(--space-3)}.sidebar-chapter-title[data-v-fb499c8c]{font-size:.8125rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;padding:var(--space-1) var(--space-4);margin-bottom:var(--space-1)}.sidebar-chapter-title-btn[data-v-fb499c8c]{width:100%;text-align:left;background:none;border:none;cursor:pointer;font:inherit}.sidebar-chapter-title-btn[data-v-fb499c8c]:hover{color:var(--text)}.sidebar-scene[data-v-fb499c8c]{display:block;font-size:.9375rem;padding:var(--space-2) var(--space-4);color:var(--text);text-decoration:none;border-left:3px solid transparent;transition:background .15s,border-color .15s}.sidebar-scene[data-v-fb499c8c]:hover{background:var(--bg);text-decoration:none;color:var(--text)}.sidebar-scene.active[data-v-fb499c8c]{background:#2563eb14;border-left-color:var(--accent);color:var(--accent);font-weight:500}.sidebar-scene-btn[data-v-fb499c8c]{display:block;width:100%;text-align:left;font-size:.9375rem;padding:var(--space-2) var(--space-4);color:var(--text);background:none;border:none;border-left:3px solid transparent;cursor:pointer;font:inherit;transition:background .15s,border-color .15s}.sidebar-scene-btn[data-v-fb499c8c]:hover{background:var(--bg);color:var(--text)}.sidebar-scene-btn.active[data-v-fb499c8c]{background:#2563eb14;border-left-color:var(--accent);color:var(--accent);font-weight:500}.sidebar-scrim[data-v-fb499c8c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:199;background:#00000059;cursor:pointer}.sidebar-toggle[data-v-fb499c8c]{position:fixed;bottom:calc(60px + env(safe-area-inset-bottom,0px));left:var(--space-3);z-index:99;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:.875rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text);box-shadow:var(--shadow)}.sidebar-toggle[data-v-fb499c8c]:hover{background:var(--border)}.sidebar-footer[data-v-fb499c8c]{flex-shrink:0;padding:var(--space-2) var(--space-3);border-top:1px solid var(--border)}.sidebar-feedback-btn[data-v-fb499c8c]{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-2);background:none;border:none;border-radius:var(--radius-sm);font:inherit;font-size:.8125rem;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s}.sidebar-feedback-btn[data-v-fb499c8c]:hover{color:var(--text);background:var(--bg)}.nav-brand[data-v-fb499c8c]{display:none;align-items:center;gap:8px;text-decoration:none;margin-right:8px;flex-shrink:0}.nav-logo[data-v-fb499c8c]{width:32px;height:32px;object-fit:contain;border-radius:6px}.nav-brand-name[data-v-fb499c8c]{font-size:1rem;font-weight:700;color:var(--text);letter-spacing:-.01em;white-space:nowrap}@media (min-width: 768px){.nav-brand[data-v-fb499c8c]{display:flex}}.nav-otter-btn[data-v-fb499c8c]{background:none;border:none;cursor:pointer;font:inherit}.nav-otter-icon[data-v-fb499c8c]{font-size:1.1rem;line-height:1}.nav-otter-btn--active[data-v-fb499c8c]{color:var(--accent);background:#2563eb1a}@media (min-width: 768px){.nav-otter-btn[data-v-fb499c8c]{margin-left:auto}}@media (max-width: 767px){.sidebar[data-v-fb499c8c]{position:fixed;top:0;left:0;bottom:0;z-index:200;transform:translate(-100%);transition:transform .2s ease;box-shadow:4px 0 12px #0000001a}.sidebar-open[data-v-fb499c8c]{transform:translate(0)}.sidebar-toggle[data-v-fb499c8c]{display:flex;bottom:calc(64px + env(safe-area-inset-bottom,0px))}}@media (min-width: 768px){.sidebar[data-v-fb499c8c]{transform:none}.sidebar-toggle[data-v-fb499c8c]{display:none}}.ai-expand[data-v-371f7318]{margin-top:var(--space-2)}.ai-expand-btn[data-v-371f7318]{font-size:.8125rem}.ai-expand-btn[data-v-371f7318]:disabled{opacity:.7;cursor:wait}.ai-expand-spinner[data-v-371f7318]{display:inline-block;animation:pulse-371f7318 .8s ease-in-out infinite}@keyframes pulse-371f7318{50%{opacity:.5}}.ai-expand-error[data-v-371f7318]{margin:var(--space-1) 0 0;font-size:.8125rem;color:var(--danger)}.ai-expand-error-link[data-v-371f7318]{display:block;margin-top:var(--space-1);font-size:.8125rem}.ai-setup-overlay[data-v-371f7318]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#0006;padding:var(--space-4);padding-left:max(var(--space-4),env(safe-area-inset-left));padding-right:max(var(--space-4),env(safe-area-inset-right));padding-bottom:max(var(--space-4),env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch}.ai-setup-card[data-v-371f7318]{max-width:360px;width:100%;padding:var(--space-5);margin:auto}.ai-setup-title[data-v-371f7318]{font-size:1.125rem;font-weight:600;margin:0 0 var(--space-3)}.ai-setup-text[data-v-371f7318]{font-size:.9375rem;color:var(--text-muted);margin:0 0 var(--space-4);line-height:1.5}.ai-setup-actions[data-v-371f7318]{display:flex;gap:var(--space-2)}.ai-result-card[data-v-371f7318]{max-width:480px;width:100%;max-height:min(90vh,90dvh);display:flex;flex-direction:column;padding:var(--space-5);margin:auto;overflow-y:auto;box-sizing:border-box;-webkit-overflow-scrolling:touch}.ai-result-hint[data-v-371f7318]{font-size:.875rem;color:var(--text-muted);margin:0 0 var(--space-3);line-height:1.4}.ai-result-textarea[data-v-371f7318]{width:100%;max-width:100%;min-height:120px;padding:var(--space-3);margin-bottom:var(--space-4);font-family:inherit;font-size:.9375rem;line-height:1.5;border:1px solid var(--border);border-radius:var(--radius);resize:both;background:var(--bg);color:var(--text)}.ai-result-textarea[data-v-371f7318]:focus{outline:none;border-color:var(--accent)}.ai-result-actions[data-v-371f7318]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ai-result-actions .btn-primary[data-v-371f7318]{flex-shrink:0}.ai-result-inline-error[data-v-371f7318]{margin:0 0 var(--space-3);font-size:.8125rem}.resizable-textarea-wrapper[data-v-64c85eec]{position:relative;display:block;width:100%}.resizable-textarea-wrapper--sized .resizable-textarea-input[data-v-64c85eec]{height:100%;min-height:100%}.resizable-textarea-input[data-v-64c85eec]{display:block;width:100%;box-sizing:border-box;resize:none;font:inherit;font-size:16px;color:inherit;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);padding-bottom:calc(var(--space-2) + 20px);padding-right:calc(var(--space-3) + 20px);transition:border-color .15s,box-shadow .15s}.resizable-textarea-input[data-v-64c85eec]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.resizable-textarea-wrapper--auto-expand .resizable-textarea-input[data-v-64c85eec]{overflow-y:hidden}.resizable-textarea-handle[data-v-64c85eec]{position:absolute;bottom:0;right:0;width:20px;height:20px;cursor:se-resize;transform-origin:bottom right;transition:transform .15s ease,background-color .15s;background:linear-gradient(135deg,transparent 45%,var(--border) 45%,var(--border) 52%,transparent 52%),linear-gradient(135deg,transparent 62%,var(--border) 62%,var(--border) 68%,transparent 68%),linear-gradient(135deg,transparent 78%,var(--border) 78%,var(--border) 84%,transparent 84%);background-color:var(--bg);border-left:1px solid var(--border);border-top:1px solid var(--border);border-radius:var(--radius-sm) 0 0 0;flex-shrink:0}.resizable-textarea-wrapper:hover .resizable-textarea-handle[data-v-64c85eec]{transform:scale(1.5)}.resizable-textarea-handle[data-v-64c85eec]:hover{background-color:var(--bg-elevated)}.resizable-textarea-handle[data-v-64c85eec]:active{background-color:var(--border)}.form-card[data-v-3a50a836]{margin-bottom:0}.form-title[data-v-3a50a836]{font-size:1.125rem;font-weight:600;margin:0 0 var(--space-4)}.form-group[data-v-3a50a836]{margin-bottom:var(--space-4)}.form-actions[data-v-3a50a836]{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.save-error[data-v-3a50a836]{margin-bottom:var(--space-2);font-size:.875rem;color:var(--danger)}.idea-type-select[data-v-3a50a836]{width:100%;padding:var(--space-2) var(--space-3);font-size:.9375rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text)}.modal-backdrop[data-v-3a50a836]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--space-4);box-sizing:border-box}.modal-card[data-v-3a50a836]{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-5);max-width:28rem;width:100%;box-shadow:var(--shadow-md),0 0 0 1px #0000000d}.modal-title[data-v-3a50a836]{margin:0 0 var(--space-3);font-size:1.25rem;font-weight:600;color:var(--text)}.modal-input[data-v-3a50a836]{width:100%;padding:var(--space-2) var(--space-3);font-size:1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text);box-sizing:border-box}.modal-actions[data-v-3a50a836]{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.manage-types-btn[data-v-3a50a836]{margin-top:var(--space-1);font-size:.8125rem}.manage-type-list[data-v-3a50a836]{list-style:none;margin:0 0 var(--space-3);padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.manage-type-item[data-v-3a50a836]{display:flex;align-items:center;gap:var(--space-1)}.manage-type-input[data-v-3a50a836]{flex:1;padding:var(--space-1) var(--space-2);font-size:.9375rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text)}.btn-danger-icon[data-v-3a50a836]{color:var(--danger)}.manage-empty[data-v-3a50a836]{color:var(--text-muted);font-size:.875rem;margin-bottom:var(--space-3)}.modal-backdrop[data-v-3fc366ee]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);box-sizing:border-box}.modal-card[data-v-3fc366ee]{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-5);max-width:28rem;width:100%;box-shadow:var(--shadow-md)}.modal-title[data-v-3fc366ee]{margin:0 0 var(--space-2);font-size:1.125rem;font-weight:600}.modal-body[data-v-3fc366ee]{margin:0 0 var(--space-5);font-size:.9375rem;color:var(--text-muted);line-height:1.6}.modal-actions[data-v-3fc366ee]{display:flex;gap:var(--space-2);justify-content:flex-end}.btn-danger[data-v-3fc366ee]{background:var(--danger);color:#fff}.btn-danger[data-v-3fc366ee]:hover:not(:disabled){background:var(--danger-hover)}.entities-page[data-v-6a0c0bff]{display:flex;flex-direction:column;min-height:0}.entities-error[data-v-6a0c0bff]{color:var(--danger);font-size:.875rem;margin:0 0 var(--space-3)}.entities-layout[data-v-6a0c0bff]{display:flex;gap:var(--space-4);flex:1;min-height:400px}.entities-list-col[data-v-6a0c0bff]{min-width:280px;width:35%;max-width:380px;display:flex;flex-direction:column;gap:var(--space-3);overflow:hidden}.entity-type-buttons[data-v-6a0c0bff]{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-1)}.entity-type-btn[data-v-6a0c0bff]{font-size:.875rem}.entity-type-btn.active[data-v-6a0c0bff]{background:var(--accent);color:var(--accent-fg);font-weight:600}.entities-new-btn[data-v-6a0c0bff]{flex-shrink:0}.entities-add-type-link[data-v-6a0c0bff]{font-size:.875rem;color:var(--accent);text-decoration:none}.entities-add-type-link[data-v-6a0c0bff]:hover{text-decoration:underline}.entity-list-wrap[data-v-6a0c0bff]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.entities-empty-type[data-v-6a0c0bff]{font-size:.875rem;color:var(--text-muted);margin:0 0 var(--space-2)}.entity-list[data-v-6a0c0bff]{overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-2)}.entity-list-item[data-v-6a0c0bff]{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-sm);cursor:pointer;border:1px solid transparent}.entity-list-item[data-v-6a0c0bff]:hover{background:var(--bg-elevated)}.entity-list-item.active[data-v-6a0c0bff]{background:var(--bg-elevated);border-color:var(--accent)}.entity-list-item-main[data-v-6a0c0bff]{flex:1;min-width:0}.entity-list-item-title[data-v-6a0c0bff]{font-weight:600;font-size:.9375rem;display:block;margin-bottom:2px}.entity-body-preview[data-v-6a0c0bff]{font-size:.8125rem;color:var(--text-muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entity-list-item-actions[data-v-6a0c0bff]{flex-shrink:0;display:flex;gap:var(--space-1)}.entities-detail-col[data-v-6a0c0bff]{flex:1;min-width:0;overflow:auto}.entities-placeholder[data-v-6a0c0bff]{color:var(--text-muted);font-size:.9375rem;margin:0;padding:var(--space-4)}.entities-empty-state[data-v-6a0c0bff]{padding:var(--space-5);text-align:center}.entities-empty-state p[data-v-6a0c0bff]{margin:0 0 var(--space-4);color:var(--text-muted)}@media (max-width: 767px){.entities-layout[data-v-6a0c0bff]{flex-direction:column}.entities-list-col[data-v-6a0c0bff]{width:100%;max-width:none;max-height:280px}}:root{--bg: #f7f7fb;--bg-elevated: #fff;--text: #18181b;--text-muted: #71717a;--border: #e4e4e7;--accent: #6366f1;--accent-hover: #4f46e5;--accent-fg: #fff;--accent-subtle: rgba(99, 102, 241, .09);--danger: #e11d48;--danger-hover: #be123c;--success: #16a34a;--radius: 14px;--radius-sm: 9px;--radius-lg: 20px;--shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 16px rgba(99, 102, 241, .1), 0 1px 4px rgba(0, 0, 0, .06);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 40px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, monospace}html[data-theme=light]{--bg: #f7f7fb;--bg-elevated: #fff;--text: #18181b;--text-muted: #71717a;--border: #e4e4e7;--accent: #6366f1;--accent-hover: #4f46e5;--accent-subtle: rgba(99, 102, 241, .09);--danger: #e11d48;--danger-hover: #be123c;--success: #16a34a;--shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 16px rgba(99, 102, 241, .1), 0 1px 4px rgba(0, 0, 0, .06)}html[data-theme=dark]{--bg: #0d0d12;--bg-elevated: #15151d;--text: #f4f4f5;--text-muted: #a1a1aa;--border: #27272e;--accent: #818cf8;--accent-hover: #a5b4fc;--accent-subtle: rgba(129, 140, 248, .12);--danger: #fb7185;--danger-hover: #fda4af;--success: #4ade80;--shadow: 0 1px 4px rgba(0, 0, 0, .35);--shadow-md: 0 4px 20px rgba(0, 0, 0, .45)}@media (prefers-color-scheme: dark){html[data-theme=system]{--bg: #0d0d12;--bg-elevated: #15151d;--text: #f4f4f5;--text-muted: #a1a1aa;--border: #27272e;--accent: #818cf8;--accent-hover: #a5b4fc;--accent-subtle: rgba(129, 140, 248, .12);--danger: #fb7185;--danger-hover: #fda4af;--success: #4ade80;--shadow: 0 1px 4px rgba(0, 0, 0, .35);--shadow-md: 0 4px 20px rgba(0, 0, 0, .45)}}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}@media (max-width: 360px){html{font-size:15px}}body{margin:0;font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh;min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#app{min-height:100vh;display:flex;flex-direction:column}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);min-height:44px;font:inherit;font-size:.9375rem;font-weight:500;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,color .15s,box-shadow .15s,transform .1s}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:var(--accent-fg);box-shadow:0 1px 4px #6366f14d}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 2px 8px #6366f166}.btn-ghost{background:transparent;color:var(--text)}.btn-ghost:hover{background:var(--accent-subtle);color:var(--accent)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-hover)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:.875rem;min-height:36px}.btn-icon{padding:var(--space-2)}input,textarea,select{font:inherit;font-size:16px;color:inherit;background:var(--bg-elevated);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);width:100%;max-width:100%;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}textarea{min-height:100px;min-width:120px;max-width:100%;resize:both}label{display:block;font-size:.8125rem;font-weight:600;color:var(--text-muted);letter-spacing:.01em;margin-bottom:var(--space-1)}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5);max-width:100%;box-sizing:border-box;transition:box-shadow .2s,transform .15s}.page{flex:1;width:100%;max-width:720px;margin:0 auto;padding:var(--space-5) var(--space-4);padding-bottom:calc(80px + var(--space-5) + env(safe-area-inset-bottom,0px));box-sizing:border-box}.page-title{font-size:1.75rem;font-weight:700;letter-spacing:-.025em;line-height:1.2;margin:0 0 var(--space-3)}.page-subtitle{font-size:.9375rem;color:var(--text-muted);line-height:1.6;margin:0 0 var(--space-6)}.nav{position:fixed;bottom:0;left:0;right:0;z-index:100;background:var(--bg-elevated);border-top:1px solid var(--border);padding:var(--space-2) var(--space-3);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;gap:var(--space-1);flex-wrap:wrap}@media (max-width: 767px){.nav{justify-content:space-between;gap:0;padding-left:calc(var(--space-3) + env(safe-area-inset-left,0px));padding-right:calc(var(--space-3) + env(safe-area-inset-right,0px))}.nav-link{flex:1;min-width:44px;justify-content:center}.nav-link-text{display:none}.page{padding-top:calc(var(--space-4) + env(safe-area-inset-top,0px))}}@media (max-width: 400px){.page{padding-left:var(--space-3);padding-right:var(--space-3)}}@media (min-width: 768px){.nav{top:0;bottom:auto;border-top:none;border-bottom:1px solid var(--border);padding:var(--space-3) var(--space-5);padding-bottom:var(--space-3);padding-top:calc(var(--space-3) + env(safe-area-inset-top,0px));justify-content:flex-start;gap:var(--space-2)}.page{padding-top:calc(64px + var(--space-5) + env(safe-area-inset-top,0px))}}.nav-link{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);min-height:44px;min-width:44px;font-size:.875rem;font-weight:500;color:var(--text-muted);border-radius:var(--radius-sm);transition:background .15s,color .15s;box-sizing:border-box}.nav-link:hover{color:var(--accent);background:var(--accent-subtle);text-decoration:none}.nav-link.router-link-active{color:var(--accent);background:var(--accent-subtle);font-weight:600}.empty-state{text-align:center;padding:var(--space-7) var(--space-6);color:var(--text-muted);font-size:.9375rem;line-height:1.6}.empty-state p{margin:0 0 var(--space-4)}.empty-otter{margin:0 auto var(--space-4)}.generate-otter{flex-shrink:0}
