body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body,html{position:fixed;width:100vw}#root,body,html{height:100vh;height:100dvh;overflow:hidden}#root{padding-bottom:env(safe-area-inset-bottom)}.App{flex-direction:column;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden}.App,.App-nav{display:flex;position:relative}.App-nav{align-items:center;background-color:#007bff;box-shadow:0 2px 4px #0000001a;justify-content:center;padding:8px 15px;z-index:1000}.nav-links{display:flex;gap:20px}.nav-link{border-radius:6px;font-weight:500;padding:12px 16px;transition:background-color .2s;white-space:nowrap}.nav-link,.nav-link:hover{color:#fff;text-decoration:none}.nav-link:hover{background-color:#ffffff1a}.nav-link.active{background-color:#fff3}.nav-link.tour-highlight-active{background-color:#fff3;color:#fff}.nav-link .count{font-size:11px;margin-left:4px;opacity:.9}.nav-link[title=Settings]{align-items:center;display:flex;font-size:20px;justify-content:center;padding:8px 16px}.nav-link[title=Settings] span.rotating{animation:spin .2s;display:inline-block}.session-controls{align-items:center;display:flex;gap:5px;margin:0 16px;position:relative}.session-dropdown{background:#ffffffe6;color:#333;font-size:12px;min-width:100px;padding:4px 8px}.new-session-btn,.session-dropdown{border:1px solid #ffffff4d;border-radius:4px}.new-session-btn{align-items:center;background:#fff3;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.new-session-btn:hover{background:#ffffff4d}.delete-session-btn{align-items:center;background:#dc3545cc;border:1px solid #dc35454d;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:32px;justify-content:center;width:32px}.delete-session-btn:hover{background:#dc3545}.modal-overlay{background:#00000080;z-index:2000}.modal{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:300px;padding:20px}.modal h3{color:#333;margin:0 0 15px}.session-name-input{border:1px solid #ddd;border-radius:4px;font-size:14px;margin-bottom:15px;padding:8px 12px;width:100%}.session-name-input:focus{border-color:#007bff;outline:none}.modal-buttons{display:flex;gap:10px;justify-content:flex-end}.modal-buttons button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px}.modal-buttons button:first-child{background:#007bff;color:#fff}.modal-buttons button:first-child:disabled{background:#6c757d;cursor:not-allowed}.modal-buttons button:last-child{background:#6c757d;color:#fff}.modal-buttons .delete-btn{background:#dc3545;color:#fff}.modal-buttons .delete-btn:hover{background:#c82333}.App-main{background-color:#fff;display:flex;flex:1 1;flex-direction:column;height:calc(100vh - 80px);height:calc(100dvh - 80px);max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow-y:auto;padding:0;position:relative}.App-main.full-height{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh}*{box-sizing:border-box}.App-main{-ms-overflow-style:none;scrollbar-width:none}.App-main::-webkit-scrollbar{display:none}@media (max-width:768px){.App-nav{flex-direction:column;gap:4px;left:0;margin-bottom:8px;padding:4px 8px;position:fixed;right:0;top:0;z-index:1000}.nav-links{display:flex;gap:8px;justify-content:center;width:100%}.nav-link{flex:1 1;font-size:11px;padding:12px 8px;text-align:center}.nav-link[title=Settings]{flex:0 0 auto;font-size:18px;min-width:45px;padding:8px}.session-controls{display:flex;gap:4px;justify-content:center;width:100%}.session-dropdown{flex:1 1;font-size:10px;min-width:60px;padding:8px 4px}.new-session-btn{font-size:16px;height:32px;width:32px}.delete-session-btn{font-size:14px;height:32px;width:32px}.App-main{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0);padding-top:80px}.App-main.full-height{padding-top:0}}.loading-container{align-items:center;color:#666;display:flex;font-size:18px;height:100vh;justify-content:center}.guided-tour-container,.guided-tour-overlay{height:100vh;left:0;pointer-events:none;position:fixed;top:0;width:100vw;z-index:9999}.tour-overlay-section{background-color:#000000b3;pointer-events:auto;position:fixed;z-index:9999}.highlight-cutout{pointer-events:none;position:absolute;z-index:10001}.highlight-background{background-color:#ffffff26;border-radius:8px;pointer-events:none;position:fixed;z-index:10000}.highlight-border{animation:pulse-highlight 2s ease-in-out infinite;border:4px solid #2196f3cc;border-radius:8px;box-shadow:0 0 0 4px #fffc,0 0 20px 4px #2196f380;pointer-events:none;position:fixed;z-index:10001}@keyframes pulse-highlight{0%,to{border-color:#2196f3cc;box-shadow:0 0 0 4px #fffc,0 0 20px 4px #2196f380}50%{border-color:#2196f3;box-shadow:0 0 0 4px #fff,0 0 25px 8px #2196f3b3}}.guided-tour-dialogue{animation:dialogue-appear .3s ease-out;background-color:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;pointer-events:auto;position:fixed;width:320px;z-index:10002}@keyframes dialogue-appear{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.dialogue-content{max-height:200px;overflow-y:auto;padding:15px 15px 10px}.dialogue-content h3{color:#333;font-size:18px;margin:0 0 10px}.dialogue-content p{color:#555;font-size:14px;line-height:1.5;margin:0}.dialogue-controls{align-items:center;border-top:1px solid #e0e0e0;display:flex;gap:8px;justify-content:space-between;padding:10px 15px 15px}.exit-tour-button{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:28px;justify-content:center;margin-left:auto;padding:4px;transition:all .2s;width:28px}.exit-tour-button:hover{background-color:#f0f0f0;color:#333}.tour-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s;white-space:nowrap}.tour-button.primary{background-color:#007bff;color:#fff}.tour-button.primary:hover:not(:disabled){background-color:#0056b3}.tour-button.secondary{background-color:#f0f0f0;color:#333}.tour-button.secondary:hover:not(:disabled){background-color:#e0e0e0}.tour-button:disabled{cursor:not-allowed;opacity:.5}.step-indicator{color:#666;font-size:12px;white-space:nowrap}@media (max-width:768px){.guided-tour-dialogue{left:20px!important;max-width:320px;width:calc(100vw - 40px)}.dialogue-content{max-height:150px}}.upload-page{margin:0 auto;max-width:800px;padding:10px;width:800px}.upload-page h1{color:#333;margin-bottom:20px;text-align:center}.upload-form{display:flex;flex-direction:column}.category-header{gap:12px}.auto-toggle,.category-header{align-items:center;display:flex}.auto-toggle{color:#666;cursor:pointer;font-size:14px;font-weight:400;gap:6px}.auto-toggle input[type=checkbox]{cursor:pointer;height:16px;width:16px}.auto-toggle .toggle-label{-webkit-user-select:none;user-select:none}.auto-toggle:hover .toggle-label{color:#007bff}.source-dropdown.disabled-by-auto{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.source-dropdown{background-color:#fff;border:2px solid #ddd;border-radius:4px;flex:1 1;font-size:16px;padding:10px}.source-controls{align-items:center;display:flex;gap:10px}.new-source-btn{align-items:center;background:#4caf50cc;border:1px solid #4caf504d;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.new-source-btn:hover:not(:disabled){background:#4caf50}.new-source-btn:disabled{cursor:not-allowed;opacity:.5}.delete-source-btn{align-items:center;background:#dc3545cc;border:1px solid #dc35454d;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:32px;justify-content:center;width:32px}.delete-source-btn:hover:not(:disabled){background:#dc3545}.delete-source-btn:disabled{cursor:not-allowed;opacity:.5}.source-name-input{border:2px solid #ddd;border-radius:4px;font-size:16px;margin:10px 0;padding:10px;width:100%}.source-name-input:focus{border-color:#007bff;outline:none}.delimiter-input{background-color:#fff;border:2px solid #ddd;border-radius:4px;font-size:16px;padding:10px}.delimiter-input:focus{border-color:#007bff;outline:none}.help-text{font-size:12px;margin-top:-4px}.content-textarea{border:2px solid #ddd;border-radius:4px;font-family:monospace;font-size:14px;min-height:250px;padding:10px;resize:vertical}.content-textarea:focus{border-color:#007bff;outline:none}.submit-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:12px 24px;transition:background-color .2s}.submit-button:hover:not(:disabled){background-color:#0056b3}.submit-button:disabled{background-color:#6c757d;cursor:not-allowed}.upload-stats{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-top:20px;padding:20px}.upload-stats h3{color:#333;font-size:18px;margin-bottom:15px;margin-top:0}.stats-grid{grid-gap:12px;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:15px}.stat-item{flex-direction:column;gap:4px}.stat-label{color:#6c757d;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.stat-value{font-size:20px}.usage-bar{background-color:#e9ecef;border-radius:12px;height:24px;margin-bottom:8px;overflow:hidden}.usage-bar-fill{border-radius:12px;height:100%;transition:width .3s ease,background-color .3s ease}.usage-text{color:#6c757d;font-size:14px;font-weight:500;text-align:center}.user-id-input{padding:10px}@media (max-width:768px){.upload-page{margin:0;max-width:100%;padding:5px;width:100%}.content-textarea{min-height:200px;padding:8px}.submit-button{padding:10px 20px}}.toast{animation:slideIn .3s ease-out;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:500px;min-width:300px;padding:16px;position:fixed;right:20px;top:20px;z-index:1000}.toast-success{background-color:#4caf50;color:#fff}.toast-error{background-color:#f44336;color:#fff}.toast-info{background-color:#2196f3;color:#fff}.toast-content{align-items:center;display:flex;gap:12px;justify-content:space-between}.toast-message{flex:1 1;font-size:14px;line-height:1.5}.toast-close{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:24px;justify-content:center;opacity:.8;padding:0;transition:opacity .2s;width:24px}.toast-close:hover{opacity:1}.toast-close:focus{outline:2px solid #fff;outline-offset:2px}.toast-extra-content{border-top:1px solid #ffffff4d;margin-top:12px;padding-top:12px}.toast-stats h3{color:#fff;font-size:16px;margin-bottom:12px;margin-top:0}.toast-stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);margin-bottom:12px}.toast-stat-item{display:flex;flex-direction:column;gap:3px}.toast-stat-label{color:#fffc;font-size:11px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.toast-stat-value{color:#fff;font-size:18px;font-weight:700}.toast-usage-bar{background-color:#fff3;border-radius:10px;height:20px;margin-bottom:6px;overflow:hidden}.toast-usage-bar-fill{border-radius:10px;height:100%;transition:width .3s ease,background-color .3s ease}.toast-usage-text{color:#ffffffe6;font-size:12px;font-weight:500;text-align:center}@media (max-width:600px){.toast{left:20px;min-width:auto;right:20px}.toast-stats-grid{gap:8px;grid-template-columns:1fr}}.chunk-card-container{margin:0 auto;max-width:600px;position:relative;width:100%}.chunk-card,.chunk-card-container{display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0}.chunk-card{background:#fff;border:2px solid #ddd;border-radius:8px;margin:0;overflow:hidden;padding:15px}.chunk-card.empty{align-items:center;color:#666;cursor:default;display:flex;font-style:italic;justify-content:center}.chunk-header{border-bottom:1px solid #eee;min-height:25px;padding-bottom:10px}.chunk-actions{align-items:center;display:flex;gap:4px;justify-content:flex-end}.copy-button,.edit-button{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:18px;justify-content:center;min-width:auto;padding:4px 6px;transition:background-color .2s;width:auto}.copy-button:hover,.edit-button:hover{background-color:#f0f0f0}.copy-button:active,.edit-button:active{background-color:#e0e0e0}.chunk-id,.chunk-score{color:#666;font-family:monospace;font-size:12px}.done-indicator{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:12px;color:#28a745;font-size:12px;font-weight:700;padding:2px 8px}.chunk-content{display:flex;flex:1 1;flex-direction:column;gap:15px;height:100%;min-height:0;overflow:hidden}.chunk-text{word-wrap:break-word;-ms-overflow-style:none;background-color:#f8f9fa;border-radius:4px;color:#333;flex:1 1;font-size:16px;line-height:1.6;margin-bottom:10px;max-height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;padding:10px;scrollbar-width:none;white-space:pre-wrap}.chunk-text::-webkit-scrollbar{display:none}.chunk-metadata{align-items:center;display:flex;flex-shrink:0;gap:10px;justify-content:space-between}.chunk-source,.chunk-timestamp{color:#666;font-size:12px;font-style:italic}.chunk-source{flex-shrink:0;text-align:right}.chunk-edit-mode{display:flex;flex:1 1;flex-direction:column;gap:10px;overflow:hidden}.chunk-textarea{word-wrap:break-word;background-color:#fff;border:2px solid #007bff;border-radius:4px;color:#333;flex:1 1;font-family:inherit;font-size:14px;line-height:1.6;min-height:100px;overflow-y:auto;padding:10px;resize:none;white-space:pre-wrap}.chunk-textarea:focus{border-color:#0056b3;box-shadow:0 0 0 3px #007bff1a;outline:none}.chunk-textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.chunk-edit-actions{display:flex;flex-shrink:0;gap:10px;justify-content:flex-end}.chunk-edit-cancel,.chunk-edit-update{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.chunk-edit-cancel{background-color:#6c757d;color:#fff}.chunk-edit-cancel:hover:not(:disabled){background-color:#5a6268}.chunk-edit-update{background-color:#007bff;color:#fff}.chunk-edit-update:hover:not(:disabled){background-color:#0056b3}.chunk-edit-cancel:disabled,.chunk-edit-update:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.chunk-card{flex:1 1;margin:0;min-height:0;padding:10px}.chunk-text{font-size:14px;padding:6px}.chunk-header{margin-bottom:0;padding-bottom:6px}}.search-page{display:flex;flex-direction:column;height:100%;margin:0 auto;max-height:100%;max-width:800px;overflow:hidden;padding:10px;width:800px}.search-controls{flex-shrink:0}.search-bar{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-wrap:wrap;gap:10px;padding:15px}.search-row-1{display:contents}.source-filter{background:#fff;border:1px solid #ddd;border-radius:4px;flex:1 1;padding:8px 12px}.search-input-group{align-items:center;display:flex;flex:1 1;gap:8px}.search-input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:14px;min-width:200px;padding:8px 12px}.search-input:focus{border-color:#007bff;outline:none}.toggles{display:flex;flex-wrap:wrap;gap:15px}.toggle{align-items:center;color:#666;display:flex;font-size:14px;gap:5px;white-space:nowrap}.toggle,.toggle input[type=checkbox]{cursor:pointer}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.search-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 20px;transition:background-color .2s;width:100px}.search-button:hover:not(:disabled){background-color:#0056b3}.search-button:disabled{background-color:#6c757d;cursor:not-allowed}.spinner{animation:spin 1s linear infinite;display:inline-block}.latest-button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 20px;transition:background-color .2s;width:100px}.latest-button:hover:not(:disabled){background-color:#218838}.latest-button:disabled{background-color:#6c757d;cursor:not-allowed}.search-status{background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;margin-top:10px;padding:8px 12px}.search-status-text{color:#1565c0;font-size:14px;font-style:italic}.delete-button,.done-button{height:42px}@media (max-width:768px){.search-page{height:calc(100vh - 80px);height:calc(100dvh - 80px);margin:0;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);max-width:100%;padding:5px 5px calc(5px + env(safe-area-inset-bottom, 0px));width:100%}.search-bar{align-items:stretch;flex-direction:column;gap:10px;padding:8px}.search-row-1{align-items:flex-start;display:flex;gap:10px;width:100%}.search-row-1 .source-filter{flex:1 1;min-width:0}.search-row-1 .toggles{display:flex;flex-direction:column;flex-shrink:0;gap:4px;width:127px}.search-row-1 .toggles .toggle{font-size:12px}.search-input-group{flex-direction:row;flex-wrap:nowrap;gap:4px;width:100%}.search-input{flex:1 1;font-size:14px;min-width:0;padding:8px 12px}.latest-button,.search-button{font-size:12px;overflow:hidden;padding:8px 12px;text-overflow:ellipsis;white-space:nowrap;width:65px}.chunk-header{flex-wrap:nowrap;gap:5px;margin-bottom:0}.chunk-counter,.delete-button,.done-button{font-size:10px;padding:4px 6px;width:90px}.chunk-display{flex:1 1;margin:0;min-height:0}}.action-buttons{background:#f8f9fa;border-radius:8px;flex-shrink:0;gap:10px;justify-content:space-between;margin-top:15px;padding:10px}.action-button{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:14px;font-weight:500;gap:2px;justify-content:center;max-width:120px;padding:10px 16px;transition:background-color .2s,transform .1s}.button-main-text{display:block}.button-sub-text{display:block;font-size:.75em;font-weight:400;opacity:.9}.action-button:hover:not(:disabled){transform:scale(1.02)}.action-button:active:not(:disabled){transform:scale(.98)}.action-button:disabled{cursor:not-allowed;opacity:.5}.discard-action{background-color:#dc3545;color:#fff}.discard-action:hover:not(:disabled){background-color:#c82333}.select-action{background-color:#28a745;color:#fff}.select-action:hover:not(:disabled){background-color:#218838}.nav-action{background-color:#6c757d;color:#fff}.nav-action:hover:not(:disabled){background-color:#5a6268}@media (max-width:768px){.action-buttons{flex-wrap:wrap;gap:8px;margin-bottom:env(safe-area-inset-bottom,0)}.action-button{font-size:13px;max-width:none;padding:8px 12px}}.selected-page{display:flex;flex-direction:column;height:100%;margin:0 auto;max-height:100%;max-width:800px;overflow:hidden;padding:10px;width:800px}.selected-controls{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:15px;padding:10px}.total-count{color:#333;font-weight:700}.clear-all-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.clear-all-button:hover{background-color:#c82333}.chunk-display{display:flex;flex:1 1;flex-direction:column;margin:0;overflow:hidden}.chunk-header{align-items:center;display:flex;flex-shrink:0;gap:10px;justify-content:space-between;margin-bottom:0}.chunk-header>*{flex:1 1}.delete-button,.done-button{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;flex:0 0 auto;font-size:11px;height:38px;justify-content:center;padding:4px 8px;transition:background-color .2s;width:110px}.delete-button{background-color:#dc3545;color:#fff}.delete-button:hover{background-color:#c82333}.done-button{background-color:#28a745;color:#fff}.done-button:hover{background-color:#218838}.chunk-counter{align-items:center;background:#e9ecef;border-radius:15px;color:#333;display:flex;flex:0 0 auto;font-size:11px;font-weight:700;height:38px;justify-content:center;padding:4px 8px;text-align:center;width:110px}.empty-state{color:#666;padding:60px 20px;text-align:center}.empty-state p{font-size:16px;margin:10px 0}@media (max-width:768px){.selected-page{height:calc(100vh - 80px);height:calc(100dvh - 80px);margin:0;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);max-width:100%;padding:5px 5px calc(5px + env(safe-area-inset-bottom, 0px));width:100%}.selected-controls{align-items:stretch;flex-direction:column;gap:8px;margin-bottom:10px;padding:8px}.chunk-header{flex-wrap:nowrap;gap:5px;margin-bottom:0}.chunk-counter,.delete-button,.done-button{font-size:10px;padding:4px 6px;width:90px}.chunk-display{flex:1 1;margin:0;min-height:0}}.export-page{margin:0 auto;max-width:800px;padding:10px}.export-page h1{color:#333;margin-bottom:20px;text-align:center}.export-page h2{border-bottom:2px solid #e9ecef;color:#333;margin-bottom:15px;padding-bottom:8px}.data-management-section,.export-section,.stats-section{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:15px}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-item{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;justify-content:space-between;padding:15px}.stat-label{color:#666;font-weight:500}.stat-value{color:#333;font-size:18px;font-weight:700}.export-controls{display:flex;flex-direction:column;gap:20px}.format-selection{align-items:center;display:flex;gap:10px}.format-selection label{color:#333;font-weight:500}.format-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.export-buttons{display:flex;flex-wrap:wrap;gap:15px}.export-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .2s}.export-button.primary{background-color:#007bff;color:#fff}.export-button.primary:hover:not(:disabled){background-color:#0056b3}.export-button:not(.primary){background-color:#6c757d;color:#fff}.export-button:not(.primary):hover:not(:disabled){background-color:#5a6268}.export-button:disabled{background-color:#adb5bd;cursor:not-allowed;opacity:.6}.no-data-message{background:#fff;border:1px solid #dee2e6;border-radius:6px;color:#666;font-style:italic;padding:20px;text-align:center}.management-buttons{display:flex;flex-wrap:wrap;gap:15px}.clear-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .2s}.clear-button.danger{background-color:#dc3545;color:#fff}.clear-button.danger:hover{background-color:#c82333}@media (max-width:768px){.export-page{padding:5px}.data-management-section,.export-section,.stats-section{margin-bottom:15px;padding:10px}.export-buttons,.management-buttons{flex-direction:column}.clear-button,.export-button{justify-content:center;padding:10px 16px;width:100%}.format-selection{align-items:flex-start;flex-direction:column}.stats-grid{grid-template-columns:1fr}}.user-profile-page{-ms-overflow-style:none;height:100%;margin:0 auto;max-width:800px;overflow-y:auto;padding:20px;scrollbar-width:none}.user-profile-page::-webkit-scrollbar{display:none}.user-profile-page h1{color:#333;font-size:28px;margin-bottom:30px}.user-profile-page h2{color:#333;font-size:20px;margin-bottom:15px}.profile-section{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:30px;padding:30px}.google-section{background-color:#fff}.google-login-container{align-items:flex-start;display:flex;flex-direction:column;gap:15px}.google-login-text{color:#555;font-size:14px;margin:0}.google-user-info{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.google-avatar{border:2px solid #ddd;border-radius:50%;height:48px;width:48px}.google-user-details{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:150px}.google-user-name{color:#333;font-size:16px;font-weight:600}.google-user-email{color:#666;font-size:14px}.sign-out-button{background-color:#fff;border:1px solid #dc3545;border-radius:4px;color:#dc3545;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s}.sign-out-button:hover{background-color:#dc3545;color:#fff}.usage-section{background-color:#fff}.usage-details{display:flex;flex-direction:column;gap:15px}.usage-stat{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:10px 0}.usage-stat:last-of-type{border-bottom:none}.usage-label{color:#555;font-size:14px;font-weight:600}.usage-value{color:#333;font-size:14px;font-weight:500}.usage-progress{background-color:#e9ecef;border-radius:10px;height:20px;margin-top:10px;overflow:hidden;width:100%}.usage-progress-bar{border-radius:10px;height:100%;transition:width .3s ease,background-color .3s ease}.usage-percentage{color:#666;font-size:13px;font-weight:500;margin:8px 0 0;text-align:center}.upgrade-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:12px 30px;transition:transform .2s,box-shadow .2s;width:100%}.upgrade-button:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.form-group label{color:#555;font-size:16px;font-weight:700}.user-id-input{background-color:#fff;border:2px solid #ddd;border-radius:4px;font-size:16px;padding:12px;transition:border-color .2s}.user-id-input:focus{border-color:#007bff;outline:none}.user-id-input:disabled{background-color:#e9ecef;cursor:not-allowed}.help-text{color:#6c757d;font-size:13px;font-style:italic;line-height:1.4}.button-group{display:flex;flex-wrap:wrap;gap:12px}.reset-button,.save-button{border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .2s}.save-button{background-color:#007bff;color:#fff}.save-button:hover:not(:disabled){background-color:#0056b3}.save-button:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.6}.reset-button{background-color:#6c757d;color:#fff}.reset-button:hover{background-color:#5a6268}.message{animation:fadeIn .3s ease-in;border-radius:4px;margin-top:15px;padding:12px;white-space:pre-wrap}.message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.info-section{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;padding:30px}.info-section .info-row{color:#555;margin-bottom:15px}.info-section .info-row:last-child{margin-bottom:0}.privacy-policy-button{background-color:#fff;border:1px solid #007bff;border-radius:4px;color:#007bff;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s}.privacy-policy-button:hover{background-color:#007bff;color:#fff}.email-link{color:#007bff;text-decoration:none}.email-link:hover{text-decoration:underline}.privacy-notice{align-items:flex-start;background-color:#f0f7ff;border:1px solid #b8d4f0;border-radius:8px;color:#333;display:flex;font-size:13px;gap:10px;margin-top:20px;padding:12px 15px}.privacy-notice-icon{flex-shrink:0;font-size:16px}.privacy-notice-text{line-height:1.5}.privacy-notice-link{color:#007bff;font-weight:500;text-decoration:none}.privacy-notice-link:hover{text-decoration:underline}.privacy-links{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.privacy-policy-link{background-color:#fff;border:1px solid #28a745;border-radius:4px;color:#28a745;font-size:14px;padding:10px 20px;text-decoration:none;transition:all .2s}.privacy-policy-link:hover{background-color:#28a745;color:#fff;text-decoration:none}.privacy-modal{-ms-overflow-style:none;max-height:80vh;max-width:600px;overflow-y:auto;scrollbar-width:none}.privacy-modal::-webkit-scrollbar{display:none}.privacy-content{color:#333;line-height:1.6;text-align:left}.privacy-content h4{color:#333;margin-bottom:10px;margin-top:20px}.privacy-content p{margin-bottom:10px}.privacy-content ul{margin:10px 0;padding-left:20px}.privacy-content ul li{margin-bottom:5px}.privacy-content a{color:#007bff;text-decoration:none}.privacy-content a:hover{text-decoration:underline}.info-section h2{color:#333;font-size:20px;margin-bottom:15px}.info-section p{color:#555;line-height:1.6;margin-bottom:15px}.info-section ul{list-style-type:none;margin-bottom:15px;padding-left:0}.info-section ul li{color:#555;line-height:1.5;padding:8px 0 8px 25px;position:relative}.info-section ul li:before{color:#28a745;content:"✓";font-weight:700;left:0;position:absolute}.tutorial-link{color:#555;font-size:14px;margin-bottom:15px}.youtube-link{color:#dc3545;font-weight:500;text-decoration:none;transition:color .2s}.youtube-link:hover{color:#c82333;text-decoration:underline}.version-info{color:#666;font-size:14px}.note{background-color:#fff3cd;border:1px solid #ffc107;border-radius:4px;margin-top:20px;padding:12px}.note strong{color:#856404}.keyboard-shortcuts-section{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin:25px 0;padding:20px}.keyboard-shortcuts-section h3{color:#333;font-size:18px;margin-bottom:15px;margin-top:0}.shortcuts-list{display:flex;flex-direction:column;gap:12px}.shortcut-item{align-items:center;color:#555;display:flex;font-size:14px;gap:8px}.shortcut-item kbd{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 1px 2px #0000001a;color:#333;display:inline-block;font-family:Courier New,monospace;font-size:13px;font-weight:600;min-width:30px;padding:4px 8px;text-align:center}.shortcut-description{color:#666;flex:1 1}@media (max-width:768px){.user-profile-page{padding:15px 15px 40px}.user-profile-page h1{font-size:24px;margin-bottom:20px}.info-section,.profile-section{margin-bottom:20px;padding:20px}.button-group{flex-direction:column}.reset-button,.save-button{width:100%}.google-user-info{align-items:flex-start;flex-direction:column}.sign-out-button{width:100%}.keyboard-shortcuts-section{padding:15px}.shortcut-item{flex-wrap:wrap}.shortcut-item kbd{font-size:12px;min-width:25px;padding:3px 6px}}.scroll-indicator{align-items:center;animation:fadeInUp .3s ease-out;background:#007bffe6;border-radius:20px;bottom:20px;box-shadow:0 2px 10px #0003;color:#fff;display:flex;flex-direction:column;font-size:12px;font-weight:500;gap:4px;left:50%;padding:8px 16px;position:fixed;transform:translateX(-50%);z-index:100}.scroll-arrow{animation:bounce 1.5s ease-in-out infinite;font-size:16px}.scroll-text{font-size:11px;opacity:.9}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.guided-tour-section{background-color:#f8f9fa;border:2px solid #007bff;border-radius:8px;margin:25px 0;padding:20px;text-align:center}.start-tour-button{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:6px;box-shadow:0 4px 12px #007bff4d;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:14px 28px;transition:all .3s}.start-tour-button:hover:not(:disabled){background:linear-gradient(135deg,#0056b3,#004085);box-shadow:0 6px 16px #007bff66;transform:translateY(-2px)}.start-tour-button:active:not(:disabled){box-shadow:0 2px 8px #007bff4d;transform:translateY(0)}.start-tour-button:disabled{background:linear-gradient(135deg,#6c757d,#5a6268);box-shadow:none;cursor:not-allowed;opacity:.5}.tour-description{color:#555;font-size:14px;line-height:1.5;margin:12px 0 0}.tour-description .login-required{color:#dc3545;font-weight:600}@media (max-width:768px){.scroll-indicator{bottom:calc(20px + env(safe-area-inset-bottom, 0px))}}.subscription-page{height:100%;margin:0 auto;max-width:1200px;overflow-y:auto;padding:20px 20px 40px}.subscription-header{margin-bottom:40px;text-align:center}.subscription-header h1{color:#333;font-size:2.5rem;margin-bottom:10px}.subscription-header p{color:#666;font-size:1.1rem}.pricing-cards{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:40px}.pricing-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:30px;position:relative;text-align:center;transition:transform .2s,border-color .2s}.pricing-card:hover{border-color:#4285f4;transform:translateY(-5px)}.pricing-card.featured{border-color:#4285f4;border-width:3px}.featured-badge{background:#4285f4;border-radius:20px;color:#fff;font-size:.9rem;font-weight:700;left:50%;padding:5px 20px;position:absolute;top:-15px;transform:translateX(-50%)}.pricing-card h2{color:#333;font-size:1.8rem;margin-bottom:10px}.pricing-card .price{color:#4285f4;font-size:3rem;font-weight:700;margin:20px 0}.pricing-card .price-currency{font-size:1.5rem}.pricing-card .price-interval{color:#666;font-size:1rem}.pricing-card .description{color:#666;margin-bottom:30px;min-height:60px}.features-list{list-style:none;margin:30px 0;padding:0;text-align:left}.features-list li{color:#444;padding:10px 0 10px 30px;position:relative}.features-list li:before{color:#4285f4;content:"✓";font-size:1.2rem;font-weight:700;left:0;position:absolute}.subscribe-button{background:#4285f4;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1.1rem;margin-top:20px;padding:12px 40px;transition:background .2s;width:100%}.subscribe-button:hover:not(:disabled){background:#357ae8}.subscribe-button:disabled{background:#ccc;cursor:not-allowed}.error-message{background:#ffebee;color:#c62828}.error-message,.success-message{border-radius:6px;margin:20px 0;padding:15px;text-align:center}.success-message{background:#e8f5e9;color:#2e7d32}.loading-message{color:#666;font-size:1.2rem;padding:40px;text-align:center}.subscribe-button.cancellation-scheduled{background:#f39c12;color:#fff}.subscribe-button.cancellation-scheduled:hover{background:#e67e22}.keep-plan-link{background:#0000;border:1px solid #4285f4;border-radius:6px;color:#4285f4;cursor:pointer;font-size:.95rem;margin-top:10px;padding:10px 20px;transition:all .2s;width:100%}.keep-plan-link:hover:not(:disabled){background:#4285f4;color:#fff}.keep-plan-link:disabled{cursor:not-allowed;opacity:.6}.cancellation-notice{color:#e67e22;font-size:.85rem;font-style:italic;margin-top:10px}.modal-overlay{align-items:center;animation:fadeIn .2s ease-in;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-width:500px;padding:30px;width:90%}.modal-content h3{color:#2e7d32;font-size:1.5rem;margin:0 0 15px}.modal-content p{color:#333;font-size:1rem;line-height:1.6;margin:0 0 20px}.modal-close-button{background:#4285f4;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:10px 30px;transition:background .2s;width:100%}.modal-close-button:hover{background:#357ae8}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.payment-success{flex-direction:column;height:auto;justify-content:flex-start;min-height:100%;overflow-y:auto;padding:40px 20px 60px;text-align:center}.payment-success,.success-icon{align-items:center;display:flex}.success-icon{animation:scaleIn .5s ease-out;background:#34a853;border-radius:50%;height:80px;justify-content:center;margin-bottom:30px;width:80px}.success-icon:before{color:#fff;content:"✓";font-size:50px;font-weight:700}@keyframes scaleIn{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.payment-success h1{color:#333;font-size:2.5rem;margin-bottom:15px}.payment-success p{color:#666;font-size:1.2rem;margin-bottom:40px;max-width:600px}.action-buttons{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.primary-button,.secondary-button{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-size:1.1rem;padding:12px 30px;text-decoration:none;transition:all .2s}.primary-button{background:#4285f4;color:#fff}.primary-button:hover{background:#357ae8}.secondary-button{background:#fff;border:2px solid #4285f4;color:#4285f4}.secondary-button:hover{background:#f8f9fa}.subscription-details{background:#f8f9fa;border-radius:12px;margin-top:40px;max-width:600px;padding:30px}.subscription-details h2{color:#333;font-size:1.5rem;margin-bottom:20px}.detail-row{border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:10px 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#666;font-weight:500}.detail-value{color:#333;font-weight:600}.not-found-container{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:2rem}.not-found-content{max-width:500px;text-align:center}.not-found-title{color:#61dafb;font-size:8rem;font-weight:700;margin:0;text-shadow:2px 2px 4px #0000004d}.not-found-subtitle{color:#fff;font-size:2rem;margin:1rem 0}.not-found-message{color:#ccc;font-size:1.1rem;line-height:1.6;margin:1.5rem 0 2rem}.not-found-button{background-color:#61dafb;border:none;border-radius:4px;color:#282c34;cursor:pointer;display:inline-block;font-size:1rem;font-weight:500;padding:.75rem 2rem;text-decoration:none;transition:all .3s ease}.not-found-button:hover{background-color:#4fa8c5;box-shadow:0 4px 8px #61dafb4d;transform:translateY(-2px)}.not-found-button:active{transform:translateY(0)}.landing-page{-ms-overflow-style:none;background-color:#f8f9fa;height:100%;max-width:100%;overflow-y:auto;scrollbar-width:none}.landing-page::-webkit-scrollbar{display:none}.landing-container{margin:0;max-width:100%;padding:0}.hero-section{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;padding:60px 20px;text-align:center;width:100%}.hero-content{margin:0 auto;max-width:1200px}.hero-logo{border-radius:20px;box-shadow:0 4px 20px #0003;height:120px;margin-bottom:20px;width:120px}.hero-section h1{font-size:48px;font-weight:700;margin-bottom:15px}.hero-subtitle{font-size:20px;line-height:1.6;margin-bottom:30px;opacity:.9}.cta-button{background-color:#fff;border-radius:30px;color:#007bff;display:inline-block;font-size:18px;font-weight:600;padding:15px 40px;text-decoration:none;transition:transform .2s,box-shadow .2s}.cta-button:hover{box-shadow:0 6px 20px #0003;color:#0056b3;text-decoration:none;transform:translateY(-3px)}.features-section{background-color:#fff;padding:60px 20px;width:100%}.features-section h2{color:#333;font-size:36px;margin-bottom:40px;text-align:center}.features-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px}.feature-card{background-color:#f8f9fa;border-radius:12px;padding:30px;text-align:center;transition:transform .2s,box-shadow .2s}.feature-card:hover{box-shadow:0 10px 30px #0000001a;transform:translateY(-5px)}.feature-icon{display:block;font-size:48px;margin-bottom:20px}.feature-card h3{color:#333;font-size:22px;margin-bottom:15px}.feature-card p{color:#666;font-size:16px;line-height:1.6}.how-it-works-section{background-color:#f8f9fa;padding:60px 20px;width:100%}.how-it-works-section h2{color:#333;font-size:36px;margin-bottom:40px;text-align:center}.steps-container{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin:0 auto;max-width:1200px}.step{flex:1 1;max-width:220px;min-width:200px;padding:20px;text-align:center}.step-number{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border-radius:50%;color:#fff;display:flex;font-size:24px;font-weight:700;height:50px;justify-content:center;margin:0 auto 15px;width:50px}.step h3{color:#333;font-size:20px;margin-bottom:10px}.step p{color:#666;font-size:15px;line-height:1.5}.video-tutorial-section{background-color:#fff;padding:60px 20px;text-align:center;width:100%}.video-tutorial-section h2{color:#333;font-size:36px;margin-bottom:15px}.video-description{color:#666;font-size:18px;margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:600px}.video-container{margin:0 auto;max-width:800px;padding-bottom:56.25%;position:relative;width:100%}.video-container iframe{border:none;border-radius:12px;box-shadow:0 10px 30px #00000026;height:100%;left:0;position:absolute;top:0;width:100%}.landing-footer{background-color:#333;color:#fff;padding:40px 20px;text-align:center}.footer-links{margin-bottom:20px}.footer-links a{color:#fff;font-size:14px;text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-divider{color:#666;margin:0 15px}.copyright{color:#999;font-size:13px;margin:0}@media (max-width:768px){.hero-section{padding:40px 15px}.hero-logo{height:80px;width:80px}.hero-section h1{font-size:32px}.cta-button,.hero-subtitle{font-size:16px}.cta-button{padding:12px 30px}.features-section,.how-it-works-section,.video-tutorial-section{padding:40px 15px}.features-section h2,.how-it-works-section h2,.video-tutorial-section h2{font-size:28px}.video-description{font-size:16px}.feature-card{padding:25px}.feature-icon{font-size:36px}.feature-card h3{font-size:18px}.feature-card p{font-size:14px}.steps-container{align-items:center;flex-direction:column}.step{max-width:100%}.landing-footer{padding:30px 15px calc(30px + env(safe-area-inset-bottom, 0px))}}.privacy-policy-page{-ms-overflow-style:none;background-color:#f8f9fa;height:100%;max-width:100%;overflow-y:auto;scrollbar-width:none}.privacy-policy-page::-webkit-scrollbar{display:none}.privacy-policy-container{background-color:#fff;margin:0 auto;max-width:800px;min-height:100%;padding:40px 20px}.privacy-policy-page h1{color:#333;font-size:32px;margin-bottom:10px;text-align:center}.privacy-policy-page .last-updated{color:#666;font-size:14px;margin-bottom:40px;text-align:center}.privacy-section{border-bottom:1px solid #eee;margin-bottom:30px;padding-bottom:20px}.privacy-section:last-of-type{border-bottom:none}.privacy-section h2{border-bottom:2px solid #007bff;color:#333;display:inline-block;font-size:22px;margin-bottom:15px;padding-bottom:10px}.privacy-section h3{color:#444;font-size:18px;margin-bottom:10px;margin-top:20px}.privacy-section p{color:#555;font-size:16px;line-height:1.8;margin-bottom:15px}.privacy-section ul{margin:15px 0;padding-left:25px}.privacy-section ul li{color:#555;font-size:16px;line-height:1.8;margin-bottom:10px}.privacy-section ul li strong{color:#333}.privacy-section a{color:#007bff;text-decoration:none}.privacy-section a:hover{text-decoration:underline}.back-link{border-top:1px solid #eee;margin-top:40px;padding-top:20px;text-align:center}.back-link a{color:#007bff;font-size:16px;font-weight:500;text-decoration:none}.back-link a:hover{text-decoration:underline}@media (max-width:768px){.privacy-policy-container{padding:20px 15px 40px}.privacy-policy-page h1{font-size:26px}.privacy-section h2{font-size:20px}.privacy-section h3{font-size:16px}.privacy-section p,.privacy-section ul li{font-size:15px}}.update-prompt-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.update-prompt{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-width:400px;padding:24px;text-align:center;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.update-prompt-icon{font-size:48px;margin-bottom:16px}.update-prompt-title{color:#333;font-size:20px;font-weight:600;margin:0 0 12px}.update-prompt-message{color:#666;font-size:14px;line-height:1.5;margin:0 0 24px}.update-prompt-buttons{display:flex;gap:12px;justify-content:center}.update-prompt-button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s ease}.update-prompt-button-later{background:#f0f0f0;color:#666}.update-prompt-button-later:hover{background:#e0e0e0}.update-prompt-button-update{background:#4caf50;color:#fff}.update-prompt-button-update:hover{background:#43a047}@media (prefers-color-scheme:dark){.update-prompt{background:#2a2a2a}.update-prompt-title{color:#fff}.update-prompt-message{color:#aaa}.update-prompt-button-later{background:#444;color:#ccc}.update-prompt-button-later:hover{background:#555}}
/*# sourceMappingURL=main.ebb9e2f6.css.map*/