body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary:#3e62ad;--primary-hover:#2d4a8c;--primary-light:#5c7fc4;--primary-lighter:#e8edf7;--text-primary:#111827;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-tertiary:#f3f4f6;--border-default:#e5e7eb;--border-focus:#3e62ad;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Yu Gothic UI","Hiragino Sans",sans-serif}.chat-container{background:#f9fafb;background:var(--bg-secondary);display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,Yu Gothic UI,Hiragino Sans,sans-serif;font-family:var(--font-sans);height:100vh;margin:0 auto;max-width:800px}.chat-header{background:#3e62ad;background:var(--primary);box-shadow:0 2px 10px #0000001a;color:#fff;padding:.75rem 1rem;position:relative;text-align:center}.chat-header h1{font-size:1.2rem;font-weight:700;line-height:1.4;margin:0 0 .25rem}.chat-header h1 .header-sub{display:inline-block;font-size:.8em;font-weight:600;opacity:.92}.chat-header p{font-size:.9rem;margin:.1rem 0;opacity:.95}.data-info{color:#fffc;font-size:.75rem;font-weight:400;margin-top:.25rem}.init-loading-screen{align-items:center;background:#fff;background:var(--bg-primary);display:flex;flex:1 1;justify-content:center}.init-loading-content{padding:2rem;text-align:center}.init-spinner{animation:spin .8s linear infinite;border:4px solid #e5e7eb;border-top-color:#3e62ad;border:4px solid var(--border-default);border-radius:50%;border-top-color:var(--primary);height:48px;margin:0 auto 1.5rem;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.init-loading-title{color:#111827;color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.init-loading-subtitle{color:#6b7280;color:var(--text-secondary);font-size:.875rem;margin:0 0 1.5rem}.init-progress{margin:0 auto;max-width:300px}.init-progress-bar{background:#f3f4f6;background:var(--bg-tertiary);border-radius:4px;height:8px;overflow:hidden;width:100%}.init-progress-fill{background:#3e62ad;background:var(--primary);border-radius:4px;height:100%;transition:width .3s ease}.init-progress-text{color:#6b7280;color:var(--text-secondary);font-size:.75rem;margin:.5rem 0 0}.init-error-icon{font-size:3rem;margin-bottom:1rem}.init-retry-button{background:#3e62ad;background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9375rem;font-weight:600;margin-top:1.5rem;padding:.625rem 2rem;transition:background .2s ease}.init-retry-button:hover{background:#2d4a8c;background:var(--primary-hover)}.chat-messages{background:#fff;background:var(--bg-primary);flex:1 1;overflow-y:auto;padding:1rem}.message{display:flex;margin-bottom:1rem}.message.user{justify-content:flex-end}.message.assistant{justify-content:flex-start}.message-content{border-radius:12px;max-width:70%;padding:1rem;position:relative}.message.user .message-content{background:#3e62ad;background:var(--primary);color:#fff}.message.assistant .message-content{background:#f3f4f6;background:var(--bg-tertiary);color:#111827;color:var(--text-primary)}.message-text{font-size:.9375rem;line-height:1.6;margin:0 0 .5rem;white-space:pre-wrap}.message-time{display:block;font-size:.75rem;margin-top:.5rem;opacity:.7;text-align:right}.results-container{display:flex;flex-direction:column;gap:.75rem;max-width:95%}.results-header{background:#3e62ad;background:var(--primary);border-radius:8px;color:#fff;font-size:.9375rem;font-weight:600;padding:.75rem 1rem;text-align:center}.result-card{background:#fff;background:var(--bg-primary);border:1px solid #e5e7eb;border-left:4px solid #e5e7eb;border:1px solid var(--border-default);border-left-width:4px;border-radius:8px;box-shadow:0 1px 3px #0000000f;overflow:hidden;transition:box-shadow .2s ease,border-left-color .2s ease}.result-card:hover{box-shadow:0 4px 12px #0000001a}.result-card--optimal{border-left-color:#22c55e}.result-card--related{border-left-color:#3b82f6}.result-card--reference{border-left-color:#9ca3af;border-left-color:var(--text-tertiary)}.card-header{cursor:pointer;justify-content:space-between;padding:.75rem 1rem;-webkit-user-select:none;user-select:none}.card-header,.card-header-left{align-items:center;display:flex}.card-header-left{gap:.5rem}.card-number-label{color:#111827;color:var(--text-primary);font-size:.875rem;font-weight:600}.expand-icon{color:#9ca3af;color:var(--text-tertiary);font-size:.75rem;transition:transform .2s ease}.similarity-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:500;line-height:1.4;padding:.125rem .625rem}.card-catchphrase{cursor:pointer;display:flex;flex-direction:column;gap:.25rem;line-height:1.5;padding:0 1rem .75rem}.catchphrase-keywords{color:#3e62ad;color:var(--primary);font-size:.8125rem;font-weight:500}.catchphrase-question{color:#111827;color:var(--text-primary);font-size:.875rem;line-height:1.5}.card-preview-section{animation:slideDown .2s ease-out;border-top:1px solid #e5e7eb;border-top:1px solid var(--border-default);margin-top:0;padding:.75rem 1rem 1rem}@keyframes slideDown{0%{max-height:0;opacity:0;transform:translateY(-8px)}to{max-height:500px;opacity:1;transform:translateY(0)}}.card-preview-text{color:#111827;color:var(--text-primary);font-size:.875rem;line-height:1.6;margin:0 0 .75rem}.show-full-button{align-items:center;background:#e8edf7;background:var(--primary-lighter);border:1px solid #3e62ad;border:1px solid var(--primary);border-radius:6px;color:#3e62ad;color:var(--primary);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:600;padding:.375rem 1rem;transition:background .2s ease,color .2s ease}.show-full-button:hover{background:#3e62ad;background:var(--primary);color:#fff}.card-full-detail{animation:slideDown .25s ease-out;border-top:1px solid #e5e7eb;border-top:1px solid var(--border-default);margin-top:0;padding:.75rem 1rem 1rem}.detail-section{margin-bottom:1rem}.detail-label{color:#3e62ad;color:var(--primary);display:block;font-size:.875rem;margin-bottom:.375rem}.detail-text{color:#111827;color:var(--text-primary);font-size:.875rem;line-height:1.7;margin:0;white-space:pre-wrap}.detail-metadata{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-default);display:flex;flex-wrap:wrap;font-size:.75rem;gap:1rem;margin-bottom:.75rem;padding-top:.5rem}.close-detail-button,.detail-metadata{color:#6b7280;color:var(--text-secondary)}.close-detail-button{align-items:center;background:#f3f4f6;background:var(--bg-tertiary);border:1px solid #e5e7eb;border:1px solid var(--border-default);border-radius:6px;cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:500;padding:.375rem 1rem;transition:background .2s ease}.close-detail-button:hover{background:#e5e7eb;background:var(--border-default)}.show-more-button{background:#fff;background:var(--bg-primary);border:1px dashed #3e62ad;border:1px dashed var(--primary);border-radius:8px;color:#3e62ad;color:var(--primary);cursor:pointer;display:block;font-size:.875rem;font-weight:600;padding:.625rem;transition:background .2s ease;width:100%}.email-prompt-box,.show-more-button:hover{background:#e8edf7;background:var(--primary-lighter)}.email-prompt-box{border:1px solid #5c7fc4;border:1px solid var(--primary-light);border-radius:8px;padding:1.25rem;text-align:center}.prompt-icon{font-size:1.5rem;margin-bottom:.5rem}.prompt-title{color:#111827;color:var(--text-primary);font-size:1rem;font-weight:700;margin:0 0 .5rem}.prompt-text{color:#6b7280;color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin:0 0 1rem}.email-button{align-items:center;background:#3e62ad;background:var(--primary);border-radius:8px;color:#fff;display:inline-flex;font-size:.9375rem;font-weight:600;gap:.5rem;justify-content:center;padding:.625rem 1.5rem;text-decoration:none;transition:background .2s ease,transform .2s ease}.email-button:hover{background:#2d4a8c;background:var(--primary-hover);transform:translateY(-1px)}.email-button--primary{font-size:1rem;padding:.75rem 2rem}.prompt-footer{color:#9ca3af;color:var(--text-tertiary);font-size:.8125rem;margin:.75rem 0 0}.no-results-container{background:#fff;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-default);border-radius:8px;max-width:90%;padding:2rem 1.5rem;text-align:center}.no-results-icon{font-size:2.5rem;margin-bottom:.75rem}.no-results-title{color:#111827;color:var(--text-primary);font-size:1.125rem;font-weight:700;margin:0 0 .5rem}.no-results-text{font-size:.875rem;margin:0 0 1.25rem}.contact-info,.no-results-text{color:#6b7280;color:var(--text-secondary);line-height:1.6}.contact-info{font-size:.8125rem;margin:1rem 0 0}.loading-container{align-items:center;display:flex;gap:.75rem;padding:1rem}.typing-indicator{display:flex;gap:.3rem}.typing-indicator span{animation:bounce 1.4s ease-in-out infinite both;background:#3e62ad;background:var(--primary);border-radius:50%;height:10px;width:10px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.loading-text{color:#3e62ad;color:var(--primary);font-size:.9rem;font-weight:500;margin:0}.chat-input{background:#fff;background:var(--bg-primary);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-default);display:flex;flex-direction:column;gap:.5rem;padding:.5rem 1rem}.input-controls{align-items:center;display:flex;justify-content:flex-end}.input-row{display:flex;gap:.5rem}.input-row textarea{border:2px solid #e5e7eb;border:2px solid var(--border-default);border-radius:8px;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,Yu Gothic UI,Hiragino Sans,sans-serif;font-family:var(--font-sans);font-size:.9375rem;min-height:40px;padding:.5rem .75rem;resize:none;transition:border-color .2s ease}.input-row textarea:focus{border-color:#3e62ad;border-color:var(--border-focus);box-shadow:0 0 0 3px #3e62ad1a;outline:none}.input-row textarea:disabled{background:#f3f4f6;background:var(--bg-tertiary);cursor:not-allowed}.input-row button{background:#3e62ad;background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9375rem;font-weight:600;padding:.5rem 1.5rem;transition:background .2s ease,transform .2s ease}.input-row button:hover:not(:disabled){background:#2d4a8c;background:var(--primary-hover);transform:translateY(-1px)}.input-row button:disabled{cursor:not-allowed;opacity:.5}.scroll-to-top-inline{background:#3e62ad;background:var(--primary);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8125rem;font-weight:600;padding:.375rem .75rem;transition:background .2s ease;user-select:none;-webkit-user-select:none}.scroll-to-top-inline:hover{background:#2d4a8c;background:var(--primary-hover)}.scroll-to-top-inline:active{transform:translateY(0)}.chat-footer{background:#f9fafb;background:var(--bg-secondary);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-default);color:#111827;color:var(--text-primary);font-size:.75rem;padding:.5rem;text-align:center}.chat-footer p{line-height:1.5;margin:0 0 .5rem}@media (max-width:768px){.chat-container,.no-results-container,.results-container{max-width:100%}.message-content{max-width:85%}}@media (max-width:600px){.chat-header h1{font-size:1.05rem}.chat-header p{font-size:.8rem}.scroll-to-top-inline{font-size:.75rem;padding:.3rem .6rem}.card-header{padding:.625rem .75rem}.card-catchphrase{padding:0 .75rem .625rem}.catchphrase-keywords{font-size:.75rem}.catchphrase-question{font-size:.8125rem}.card-full-detail,.card-preview-section{padding:0 .75rem .75rem}.email-prompt-box{padding:1rem}.no-results-container{padding:1.5rem 1rem}}.theme-toggle{background:#ffffff26;border:1px solid #ffffff4d;border-radius:8px;cursor:pointer;font-size:1.1rem;line-height:1;padding:.25rem .5rem;position:absolute;right:.75rem;top:.625rem;transition:background .2s ease}.theme-toggle:hover{background:#ffffff40}.theme-dark{--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--bg-primary:#1e293b;--bg-secondary:#0f172a;--bg-tertiary:#334155;--border-default:#475569;--primary-lighter:#1e3a5f;color-scheme:dark}.theme-dark .input-row textarea{background:#1e293b;color:#f1f5f9}.theme-dark .result-card{box-shadow:0 1px 3px #0000004d}.archive-open-button{background:none;border:none;color:#ffffffe6;cursor:pointer;display:inline;font-size:.75rem;line-height:1;margin-left:.4rem;padding:0 .1rem;text-decoration:underline;text-underline-offset:2px;transition:color .15s ease,opacity .15s ease;vertical-align:middle}.archive-open-button:hover{color:#fff;opacity:.8}.archive-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.archive-modal{background:#fff;background:var(--bg-primary);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:80vh;max-width:560px;overflow:hidden;width:100%}.archive-modal-header{align-items:center;background:#3e62ad;background:var(--primary);color:#fff;display:flex;flex-shrink:0;justify-content:space-between;padding:1rem 1.25rem}.archive-modal-title{font-size:1rem;font-weight:700}.archive-modal-close{background:#ffffff26;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;line-height:1;padding:.2rem .5rem;transition:background .2s ease}.archive-modal-close:hover{background:#ffffff4d}.archive-modal-body{flex:1 1;overflow-y:auto;padding:.5rem 0}.archive-category{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-default)}.archive-category:last-child{border-bottom:none}.archive-category-header{align-items:center;background:none;border:none;color:#111827;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.625rem 1.25rem;text-align:left;transition:background .15s ease;width:100%}.archive-category-header:hover{background:#e8edf7;background:var(--primary-lighter)}.archive-category-toggle{color:#3e62ad;color:var(--primary);flex-shrink:0;font-size:.75rem;width:1rem}.archive-category-name{flex:1 1}.archive-category-count{color:#6b7280;color:var(--text-secondary);font-size:.75rem;font-weight:400}.archive-entry-list{background:#f9fafb;background:var(--bg-secondary);list-style:none;margin:0;padding:0 0 .25rem}.archive-entry-list li{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-default)}.archive-entry-button{align-items:baseline;background:none;border:none;color:#111827;color:var(--text-primary);cursor:pointer;display:flex;font-size:.8125rem;gap:.5rem;padding:.45rem 1.25rem .45rem 2.25rem;text-align:left;transition:background .15s ease,color .15s ease;width:100%}.archive-entry-button:hover{background:#e8edf7;background:var(--primary-lighter);color:#3e62ad;color:var(--primary)}.archive-entry-id{color:#3e62ad;color:var(--primary);flex-shrink:0;font-size:.75rem;font-weight:700}.archive-entry-question{color:#6b7280;color:var(--text-secondary);line-height:1.4}.theme-dark .archive-modal{box-shadow:0 20px 60px #0009}.theme-dark .archive-entry-button:hover{color:#5c7fc4;color:var(--primary-light)}.theme-dark .archive-category-header:hover,.theme-dark .archive-entry-button:hover{background:#e8edf7;background:var(--primary-lighter)}@media (max-width:600px){.archive-modal{max-height:90vh}.archive-modal-header{padding:.75rem 1rem}.archive-category-header{padding:.5rem 1rem}.archive-entry-button{padding-left:1.75rem}}.detail-special-terms{align-items:center;border-top:1px solid #e5e7eb;border-top:1px solid var(--border,#e5e7eb);display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px}.term-tag{background:#f3f4f6;background:var(--tag-bg,#f3f4f6);border:1px solid #e5e7eb;border:1px solid var(--border,#e5e7eb);border-radius:4px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:default;display:inline-block;font-size:.78rem;padding:2px 8px}.term-tag--linked{background:#5c7fc4;background:var(--primary-light,#5c7fc4);border-color:#3e62ad;border-color:var(--primary,#3e62ad);color:#fff;cursor:pointer;transition:background .15s}.term-tag--linked:hover{background:#3e62ad;background:var(--primary,#3e62ad)}.terminology-overlay{align-items:center;background:#00000059;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.terminology-popup{background:#fff;background:var(--card-bg,#fff);border-radius:10px;box-shadow:0 8px 32px #0000002e;max-width:420px;padding:20px 24px;width:90%}.terminology-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.terminology-term{color:#3e62ad;color:var(--primary,#3e62ad);font-size:1rem;font-weight:700}.terminology-close{background:none;border:none;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;font-size:1rem;padding:2px 6px}.terminology-close:hover,.terminology-definition{color:#111827;color:var(--text,#111827)}.terminology-definition{font-size:.9rem;line-height:1.7;margin:0}.theme-dark .terminology-popup{background:#1f2937;background:var(--card-bg-dark,#1f2937)}.theme-dark .terminology-definition{color:#f3f4f6;color:var(--text-dark,#f3f4f6)}.theme-dark .term-tag{background:#374151;border-color:#4b5563;color:#9ca3af}.tool-suggestion{background:#e8edf7;background:var(--primary-lighter);border:1px solid #5c7fc4;border:1px solid var(--primary-light);border-radius:10px;margin-top:.75rem;padding:.75rem}.tool-suggestion-title{color:#111827;color:var(--text-primary);font-size:.875rem;font-weight:700;margin-bottom:.5rem}.tool-suggestion-item{align-items:flex-start;background:#fff;background:var(--bg-primary);border:1px solid #e5e7eb;border-left:4px solid #3e62ad;border:1px solid var(--border-default);border-left:4px solid var(--primary);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:.2rem;margin-top:.4rem;padding:.625rem .75rem;text-align:left;transition:border-color .15s ease,transform .15s ease;width:100%}.tool-suggestion-item:hover{border-color:#3e62ad;border-color:var(--primary);transform:translateY(-1px)}.tool-suggestion-name{color:#111827;color:var(--text-primary);font-size:.9375rem;font-weight:700}.tool-suggestion-when{color:#6b7280;color:var(--text-secondary);font-size:.8125rem}.tool-suggestion-cta{font-size:.8125rem}.tool-footer-button,.tool-suggestion-cta{color:#5c7fc4;color:var(--primary-light);font-weight:600}.tool-footer-button{background:#fff;background:var(--bg-primary);border:1px solid #5c7fc4;border:1px solid var(--primary-light);border-radius:8px;cursor:pointer;display:inline-block;font-family:inherit;font-size:.875rem;margin:0 0 .5rem;padding:.5rem 1.25rem}.tool-footer-button:hover{background:#e8edf7;background:var(--primary-lighter)}@media (min-width:640px){.tool-footer-button{margin-right:.5rem}}.tool-modal{max-width:620px}.tool-modal-body{padding:1rem 1.25rem 1.25rem}.tool-modal-lead{color:#6b7280;color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin:0 0 .75rem}.tool-item{background:#fff;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-default);border-radius:10px;margin-bottom:.75rem;overflow:hidden}.tool-item--open{border-color:#5c7fc4;border-color:var(--primary-light)}.tool-item-header{grid-gap:.15rem .5rem;background:none;border:none;color:#111827;color:var(--text-primary);cursor:pointer;display:grid;font-family:inherit;gap:.15rem .5rem;grid-template-columns:1fr auto;padding:.875rem 1rem;text-align:left;width:100%}.tool-item-name{font-size:1rem;font-weight:700}.tool-item-tagline{color:#6b7280;color:var(--text-secondary);font-size:.8125rem;grid-column:1}.tool-item-toggle{align-self:center;color:#9ca3af;color:var(--text-tertiary);grid-column:2;grid-row:1/span 2}.tool-item-body{color:#111827;color:var(--text-primary);font-size:.875rem;line-height:1.7;padding:0 1rem 1rem}.tool-item-desc,.tool-item-when{margin:0 0 .75rem}.tool-download-button{background:#3e62ad;background:var(--primary);border-radius:8px;color:#fff;display:block;font-size:1rem;font-weight:700;padding:.875rem 1rem;text-align:center;text-decoration:none;word-break:break-all}.tool-download-button:hover{background:#2d4a8c;background:var(--primary-hover)}.tool-steps{margin:.75rem 0;padding-left:1.4rem}.tool-steps li{margin-bottom:.2rem}.tool-tip{background:#f3f4f6;background:var(--bg-tertiary);border-radius:8px;font-size:.8125rem;margin:0 0 .75rem;padding:.625rem .75rem}.tool-sub-links{display:flex;flex-wrap:wrap;font-size:.8125rem;gap:.5rem 1rem}.tool-sub-links a{color:#5c7fc4;color:var(--primary-light)}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f9fafb;color:#111827;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,Yu Gothic UI,Hiragino Sans,sans-serif;margin:0}.App{height:100vh;overflow:hidden}
/*# sourceMappingURL=main.044b1697.css.map*/