@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap";.offline-banner[data-v-378e0f1f]{position:fixed;top:0;left:0;right:0;z-index:9999;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-weight:500;box-shadow:0 2px 8px #00000026}.update-banner[data-v-378e0f1f]{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;border-radius:.75rem;box-shadow:0 4px 20px #00000026;border:1px solid #e5e7eb}.update-banner .actions[data-v-378e0f1f]{display:flex;gap:.5rem}.btn-update[data-v-378e0f1f]{padding:.5rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-update[data-v-378e0f1f]:hover{background:#1d4ed8}.btn-dismiss[data-v-378e0f1f]{padding:.5rem;background:transparent;border:none;color:#6b7280;cursor:pointer;font-size:1rem}.btn-dismiss[data-v-378e0f1f]:hover{color:#374151}.offline-ready-toast[data-v-378e0f1f]{position:fixed;bottom:1rem;right:1rem;z-index:9998;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#10b981;color:#fff;border-radius:.5rem;font-weight:500;box-shadow:0 2px 8px #00000026}.slide-down-enter-active[data-v-378e0f1f],.slide-down-leave-active[data-v-378e0f1f]{transition:transform .3s ease,opacity .3s ease}.slide-down-enter-from[data-v-378e0f1f],.slide-down-leave-to[data-v-378e0f1f]{transform:translateY(-100%);opacity:0}.slide-up-enter-active[data-v-378e0f1f],.slide-up-leave-active[data-v-378e0f1f]{transition:transform .3s ease,opacity .3s ease}.slide-up-enter-from[data-v-378e0f1f],.slide-up-leave-to[data-v-378e0f1f]{transform:translate(-50%,100%);opacity:0}.fade-enter-active[data-v-378e0f1f],.fade-leave-active[data-v-378e0f1f]{transition:opacity .3s ease}.fade-enter-from[data-v-378e0f1f],.fade-leave-to[data-v-378e0f1f]{opacity:0}@media(max-width:640px){.update-banner[data-v-378e0f1f]{left:1rem;right:1rem;transform:none;flex-wrap:wrap}.update-banner .message[data-v-378e0f1f]{flex:1}}.toast-container[data-v-80e025db]{position:fixed;top:1rem;right:1rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem;max-width:400px}.toast[data-v-80e025db]{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border-radius:8px;background:#fff;box-shadow:0 4px 12px #00000026;cursor:pointer;transition:transform .2s,opacity .2s}.toast[data-v-80e025db]:hover{transform:translate(-4px)}.toast-success[data-v-80e025db]{border-left:4px solid #10b981}.toast-error[data-v-80e025db]{border-left:4px solid #ef4444}.toast-warning[data-v-80e025db]{border-left:4px solid #f59e0b}.toast-info[data-v-80e025db]{border-left:4px solid #3b82f6}.toast-icon[data-v-80e025db]{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;font-weight:700}.toast-success .toast-icon[data-v-80e025db]{background:#d1fae5;color:#10b981}.toast-error .toast-icon[data-v-80e025db]{background:#fee2e2;color:#ef4444}.toast-warning .toast-icon[data-v-80e025db]{background:#fef3c7;color:#f59e0b}.toast-info .toast-icon[data-v-80e025db]{background:#dbeafe;color:#3b82f6}.toast-content[data-v-80e025db]{flex:1}.toast-message[data-v-80e025db]{margin:0;font-size:.9rem;color:#374151;line-height:1.4}.toast-close[data-v-80e025db]{flex-shrink:0;background:none;border:none;font-size:1.25rem;color:#9ca3af;cursor:pointer;padding:0;line-height:1}.toast-close[data-v-80e025db]:hover{color:#374151}.toast-enter-active[data-v-80e025db]{animation:toast-in-80e025db .3s ease-out}.toast-leave-active[data-v-80e025db]{animation:toast-out-80e025db .2s ease-in}@keyframes toast-in-80e025db{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toast-out-80e025db{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@media(max-width:480px){.toast-container[data-v-80e025db]{left:1rem;right:1rem;max-width:none}}.skip-link[data-v-6e8cfc98]{position:absolute;top:-100%;left:50%;transform:translate(-50%);z-index:10000;background-color:#1d4ed8;color:#fff;padding:1rem 2rem;border-radius:0 0 .5rem .5rem;font-weight:600;font-size:1rem;text-decoration:none;transition:top .3s ease}.skip-link[data-v-6e8cfc98]:focus{top:0;outline:4px solid #fbbf24;outline-offset:2px}.error-boundary[data-v-3e233d9d]{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem}.error-content[data-v-3e233d9d]{text-align:center;max-width:500px}.error-icon[data-v-3e233d9d]{font-size:4rem;margin-bottom:1rem}h2[data-v-3e233d9d]{font-size:1.5rem;font-weight:700;color:var(--color-gray-800);margin-bottom:.5rem}.error-message[data-v-3e233d9d]{color:var(--color-gray-600);margin-bottom:1.5rem;line-height:1.6}.error-actions[data-v-3e233d9d]{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}.error-details[data-v-3e233d9d]{text-align:left;background-color:var(--color-gray-100);border-radius:.5rem;padding:1rem}.error-details summary[data-v-3e233d9d]{cursor:pointer;color:var(--color-gray-600);margin-bottom:.5rem}.error-details pre[data-v-3e233d9d]{font-size:.75rem;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.btn[data-v-3e233d9d]{padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary[data-v-3e233d9d]{background-color:var(--color-primary);color:#fff;border:none}.btn-primary[data-v-3e233d9d]:hover{opacity:.9}.btn-secondary[data-v-3e233d9d]{background-color:#fff;color:var(--color-gray-700);border:1px solid var(--color-gray-300)}.btn-secondary[data-v-3e233d9d]:hover{background-color:var(--color-gray-50)}#app{display:flex;flex-direction:column;min-height:100vh}.skeleton-wrapper[data-v-15ab5035]{width:100%}.animate-pulse .skeleton[data-v-15ab5035]{animation:pulse-15ab5035 1.5s ease-in-out infinite}@keyframes pulse-15ab5035{0%,to{opacity:.4}50%{opacity:.8}}.skeleton[data-v-15ab5035]{background:linear-gradient(90deg,var(--color-gray-200) 0%,var(--color-gray-100) 50%,var(--color-gray-200) 100%);background-size:200% 100%;border-radius:.25rem}.skeleton-card[data-v-15ab5035]{padding:1rem;border:1px solid var(--color-gray-200);border-radius:.5rem;margin-bottom:1rem}.skeleton-header[data-v-15ab5035]{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.skeleton-circle[data-v-15ab5035]{width:40px;height:40px;border-radius:50%;flex-shrink:0}.skeleton-text-group[data-v-15ab5035]{flex:1}.skeleton-title[data-v-15ab5035]{height:18px;width:60%;margin-bottom:.5rem}.skeleton-subtitle[data-v-15ab5035]{height:14px;width:40%}.skeleton-body[data-v-15ab5035]{display:flex;flex-direction:column;gap:.5rem}.skeleton-list-item[data-v-15ab5035]{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--color-gray-100)}.skeleton-list-item[data-v-15ab5035]:last-child{border-bottom:none}.skeleton-avatar[data-v-15ab5035]{width:48px;height:48px;border-radius:50%;flex-shrink:0}.skeleton-content[data-v-15ab5035]{flex:1;display:flex;flex-direction:column;gap:.5rem}.skeleton-line[data-v-15ab5035]{height:16px;width:100%}.skeleton-line.short[data-v-15ab5035]{width:60%}.skeleton-progress[data-v-15ab5035]{display:flex;flex-direction:column;gap:.5rem}.skeleton-label[data-v-15ab5035]{height:14px;width:100px}.skeleton-bar[data-v-15ab5035]{height:8px;width:100%;border-radius:4px}.skeleton-box[data-v-15ab5035]{border-radius:.5rem}.home-view[data-v-5e77c49b]{padding-bottom:2rem}.hero[data-v-5e77c49b]{text-align:center;padding:3rem 1rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-radius:1rem;margin-bottom:2rem}.hero-title[data-v-5e77c49b]{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.hero-subtitle[data-v-5e77c49b]{font-size:1.125rem;opacity:.9;line-height:1.8;margin-bottom:1.5rem}.btn-hero[data-v-5e77c49b]{background-color:#fff;color:#2563eb;padding:1rem 3rem;font-size:1.25rem;font-weight:600;border:none;border-radius:.5rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.btn-hero[data-v-5e77c49b]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.section-header[data-v-5e77c49b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-title[data-v-5e77c49b]{font-size:1.5rem;font-weight:700;margin:0;color:var(--color-gray-800)}.loading[data-v-5e77c49b]{text-align:center;padding:3rem;color:var(--color-gray-500)}.empty-state[data-v-5e77c49b]{text-align:center;padding:3rem;background-color:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a}.empty-state p[data-v-5e77c49b]{margin-bottom:1.5rem;color:var(--color-gray-600)}.error-state[data-v-5e77c49b]{text-align:center;padding:3rem;background-color:#fef2f2;border-radius:1rem;border:1px solid #fecaca}.error-state p[data-v-5e77c49b]{margin-bottom:1.5rem;color:#dc2626}.person-list[data-v-5e77c49b]{display:flex;flex-direction:column;gap:1rem}.person-card[data-v-5e77c49b]{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.person-card[data-v-5e77c49b]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.person-info[data-v-5e77c49b]{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1rem}.person-name[data-v-5e77c49b]{font-size:1.25rem;font-weight:600;color:var(--color-gray-800)}.person-relationship[data-v-5e77c49b]{font-size:.875rem;color:var(--color-gray-500)}.person-progress[data-v-5e77c49b]{margin-bottom:1rem}.progress-label[data-v-5e77c49b]{display:block;margin-top:.5rem;font-size:.875rem;color:var(--color-gray-500)}.person-actions[data-v-5e77c49b]{display:flex;justify-content:flex-end}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #2563eb;--color-primary-dark: #1d4ed8;--color-success: #22c55e;--color-warning: #f59e0b;--color-error: #ef4444;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827}html{font-size:16px}body{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--color-gray-800);background-color:var(--color-gray-50);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.min-h-screen{min-height:100vh}.bg-gray-50{background-color:var(--color-gray-50)}.bg-white{background-color:#fff}.shadow-sm{box-shadow:0 1px 2px #0000000d}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-gray-200{border-color:var(--color-gray-200)}.max-w-4xl{max-width:56rem}.mx-auto{margin-left:auto;margin-right:auto}.px-4{padding-left:1rem;padding-right:1rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.space-x-4>*+*{margin-left:1rem}.text-xl{font-size:1.25rem}.text-sm{font-size:.875rem}.font-bold{font-weight:700}.text-center{text-align:center}.text-blue-600{color:var(--color-primary)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-900{color:var(--color-gray-900)}a{text-decoration:none;transition:color .2s ease}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;border-radius:.5rem;transition:all .2s ease;cursor:pointer;border:none}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-primary-dark)}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover{background-color:#dc2626}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.card{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.input{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid var(--color-gray-300);border-radius:.5rem;transition:border-color .2s ease,box-shadow .2s ease}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}@media(max-width:640px){.btn{padding:1rem 1.5rem;min-height:48px}.input{padding:1rem;min-height:48px;font-size:1.125rem}}.message-bubble{max-width:80%;padding:1rem 1.25rem;border-radius:1rem;margin-bottom:.75rem}.message-user{background-color:var(--color-primary);color:#fff;margin-left:auto;border-bottom-right-radius:.25rem}.message-assistant{background-color:var(--color-gray-100);color:var(--color-gray-800);margin-right:auto;border-bottom-left-radius:.25rem}.stop-button{position:fixed;bottom:2rem;right:2rem;width:80px;height:80px;border-radius:50%;background-color:var(--color-error);color:#fff;font-size:1.5rem;font-weight:700;border:4px solid white;box-shadow:0 4px 12px #ef444466;z-index:1000}.stop-button:hover{transform:scale(1.05)}.stop-button:active{transform:scale(.95)}.fatigue-warning{position:fixed;top:0;left:0;right:0;padding:1rem;background-color:var(--color-warning);color:#fff;text-align:center;font-weight:500;z-index:1001}.typing-indicator{display:flex;gap:.25rem;padding:.5rem}.typing-indicator span{width:8px;height:8px;background-color:var(--color-gray-400);border-radius:50%;animation:typing 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}.typing-indicator span:nth-child(3){animation-delay:0}@keyframes typing{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.progress-bar{width:100%;height:8px;background-color:var(--color-gray-200);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background-color:var(--color-primary);transition:width .3s ease}:root{--base-font-size: 18px;--min-touch-target: 48px}html[data-text-size=small]{--base-font-size: 14px}html[data-text-size=medium]{--base-font-size: 16px}html[data-text-size=large]{--base-font-size: 18px}html[data-text-size=xlarge]{--base-font-size: 20px}body{font-size:var(--base-font-size)}p,li,dd{line-height:1.8}a,button,[role=button],input[type=button],input[type=submit],input[type=reset]{min-height:var(--min-touch-target);min-width:var(--min-touch-target)}button+button,a+a,.btn+.btn{margin-left:.5rem}:focus{outline:3px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}input,textarea,select{font-size:inherit;min-height:var(--min-touch-target);padding:.75rem 1rem;border:2px solid var(--color-gray-300);border-radius:.5rem}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb33}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-error)}label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--color-gray-700)}label[data-required]:after{content:" *";color:var(--color-error)}.skip-link{position:absolute;top:-100%;left:0;padding:1rem;background:var(--color-primary);color:#fff;z-index:9999}.skip-link:focus{top:0}@media(prefers-contrast:high){:root{--color-primary: #0040ff;--color-gray-500: #000;--color-gray-600: #000}button,a{border:2px solid currentColor}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[role=alert]{padding:1rem;border-radius:.5rem;font-weight:500}[role=alert][data-type=error]{background-color:#fef2f2;color:#991b1b;border:1px solid #fca5a5}[role=alert][data-type=success]{background-color:#f0fdf4;color:#166534;border:1px solid #86efac}[role=alert][data-type=warning]{background-color:#fffbeb;color:#92400e;border:1px solid #fcd34d}@media(min-width:1200px){.content-wrapper{max-width:800px;margin:0 auto}}
