code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#eef3f8;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;margin:0}.App{display:flex;flex-direction:column;min-height:100vh}.App-header{background-color:#fff;border-bottom:1px solid #dbe3ee;box-shadow:0 1px 3px #0f172a14;padding:24px 20px;text-align:center}.App-header h1{color:#16324f;font-size:clamp(1.6rem,3vw,2rem);font-weight:700;margin:0}.App-main{box-sizing:border-box;flex:1 1;padding:32px 20px 48px}.content-shell{grid-gap:24px;display:grid;gap:24px;margin:0 auto;max-width:960px;width:100%}.auth-section,.upload-section{background-color:#fff;border:1px solid #d9e4f0;border-radius:8px;box-shadow:0 16px 32px #0f172a0f;padding:32px}.auth-section h2,.upload-section h2{color:#16324f;font-size:1.5rem;margin:0}.section-intro{margin-bottom:20px}.auth-helper-text,.config-text,.section-description,.token-note,.upload-description{color:#526273;margin:8px 0 0}.auth-form{grid-gap:16px;display:grid;gap:16px}.primary-button,.process-button,.secondary-button{border:none;border-radius:8px;cursor:pointer;font:inherit;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.form-field{grid-gap:8px;display:grid;gap:8px}.form-field span{color:#1f2937;font-weight:600}.form-field input{background-color:#fbfdff;border:1px solid #c6d3e1;border-radius:8px;box-sizing:border-box;color:#111827;font:inherit;padding:12px 14px;width:100%}.form-field input:focus{border-color:#2a74b9;outline:2px solid #2a74b92e}.primary-button,.process-button{background-color:#2a74b9;box-shadow:0 10px 20px #2a74b92e;color:#fff;font-weight:700}.primary-button,.process-button,.secondary-button{min-height:48px;padding:12px 20px}.primary-button:hover:not(:disabled),.process-button:hover:not(:disabled),.secondary-button:hover:not(:disabled){transform:translateY(-1px)}.primary-button:disabled,.process-button:disabled,.secondary-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.secondary-button{background-color:#e6edf6;color:#16324f;font-weight:600}.compact-button{min-height:40px;padding:8px 16px}.text-button{background:#0000;border:none;color:#1f5f99;cursor:pointer;font:inherit;font-weight:700;justify-self:center;padding:4px 0;text-decoration:underline;text-underline-offset:3px}.text-button:hover{color:#16324f}.file-input{display:none}.config-panel,.status-panel{background-color:#f8fbff;border:1px solid #d7e2ee;border-radius:8px;margin-top:20px;padding:18px}.session-bar{align-items:center;border-bottom:1px solid #e3ebf5;display:flex;gap:20px;justify-content:space-between;margin-bottom:28px;padding-bottom:24px}.upload-content{grid-gap:22px;display:grid;gap:22px}.signed-in-label{color:#526273;font-size:.95rem;margin:0}.signed-in-user{color:#16324f;font-weight:700;margin:4px 0 0;word-break:break-word}.file-dropzone{grid-gap:8px;background-color:#f8fbff;border:2px dashed #b8cbe1;border-radius:8px;box-sizing:border-box;color:#16324f;cursor:pointer;display:grid;gap:8px;min-height:168px;padding:28px;place-items:center;text-align:center;transition:border-color .2s ease,background-color .2s ease,transform .2s ease,box-shadow .2s ease}.file-dropzone:hover:not(.disabled){background-color:#f3f8fd;border-color:#2a74b9;box-shadow:0 12px 24px #2a74b914;transform:translateY(-1px)}.file-dropzone.disabled{box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.file-dropzone-badge{align-items:center;background-color:#e7f0fa;border-radius:8px;color:#1f5f99;display:inline-flex;font-size:.85rem;font-weight:700;justify-content:center;min-height:32px;min-width:64px;padding:0 12px}.file-dropzone-title{color:#16324f;font-size:1.1rem;font-weight:700;max-width:100%;overflow-wrap:anywhere}.file-dropzone-description,.selected-file-label{color:#64748b;font-size:.95rem}.selected-file-row{align-items:center;background-color:#fff;border:1px solid #d7e2ee;border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:16px}.selected-file-label,.selected-file-name{margin:0}.selected-file-name{color:#16324f;font-weight:700;margin-top:2px;overflow-wrap:anywhere}.status-panel{align-items:center;display:flex;gap:12px}.config-panel p,.status-panel p{margin:0}.config-list{color:#16324f;margin:12px 0 0;padding-left:20px}.token-note{font-size:.95rem}.error-message,.success-message{border-radius:8px;font-size:.95rem;margin:16px 0 0;padding:12px 14px}.error-message{background-color:#fff5f3;border:1px solid #f2c3be;color:#a73b32}.success-message{background-color:#f0fbf4;border:1px solid #b8e4c8;color:#1f7a45}.process-button{align-items:center;display:inline-flex;justify-content:center;margin-top:22px;min-height:56px;width:100%}.spinner{animation:rotate 1s linear infinite;border-radius:50%;height:24px;position:relative;width:24px}.spinner:after,.spinner:before{animation:spinner-clip 2s linear infinite;border:3px solid #fff;border-radius:50%;box-sizing:border-box;content:"";inset:0;position:absolute}.spinner:after{animation:spinner-clip 2s linear infinite,rotate .6s linear infinite reverse;border-color:#2a74b9;inset:4px}.spinner-dark:before{border-color:#d0deec}.loading-text{color:#fff;margin-left:10px}.App-footer{background-color:#fff;border-top:1px solid #dbe3ee;color:#6b7280;font-size:.9rem;padding:20px;text-align:center}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spinner-clip{0%{-webkit-clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0);clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}25%{-webkit-clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0);clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}50%{-webkit-clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%);clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}75%{-webkit-clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%);clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}to{-webkit-clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0);clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}}@media (max-width:640px){.App-main{padding:24px 16px 40px}.auth-section,.upload-section{padding:20px}.selected-file-row,.session-bar{align-items:stretch;flex-direction:column}.file-dropzone{min-height:148px;padding:24px 16px}.loading-text{font-size:.9rem}}
/*# sourceMappingURL=main.17e90f05.css.map*/