:root{--bg-color:#fff;--text-color:#000;--border-color:#e0e0e0;--muted-color:#5f6368;--font-family:"Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;min-height:100vh}#root{justify-content:center;width:100%;min-height:100vh;display:flex}h1{letter-spacing:-.05em;text-transform:uppercase;font-size:1.5rem;font-weight:600}.loading{letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;height:100vh;font-size:.875rem;display:flex}.login-container{flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:1rem 1rem 4rem;display:flex;position:relative}.login-container footer{text-align:center;opacity:.6;font-size:.85rem;position:absolute;bottom:1rem}.login-box{text-align:center;flex-direction:column;gap:2rem;width:100%;max-width:400px;padding:2rem;display:flex}.login-logo{align-self:center;width:160px;height:auto;margin-bottom:-2rem}.login-subtitle{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-color);margin-top:-1.5rem;font-size:.875rem}.login-note{color:#3c4043;font-size:.95rem;line-height:1.5}.social-buttons{flex-direction:column;gap:1rem;display:flex}.social-button{color:var(--text-color);border:1px solid var(--text-color);letter-spacing:.05em;cursor:pointer;text-transform:uppercase;background:#fff;width:100%;padding:1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .2s}.social-button.primary{background:var(--text-color);color:var(--bg-color)}.social-button.primary:hover:not(:disabled){background:#333;border-color:#333}.social-button:disabled{opacity:.6;cursor:progress}.beta-subtitle{color:silver;letter-spacing:.1em;align-self:center;padding:2px 8px;font-size:12px;font-weight:700;animation:2s ease-in-out infinite flash}@keyframes flash{0%,to{opacity:1}50%{opacity:.3}}.error-message{color:red;font-size:.875rem}.text-link{letter-spacing:.1em;text-transform:uppercase;color:var(--text-color);font-size:.75rem}.connector-url{border:1px solid var(--border-color);word-break:break-all;-webkit-user-select:all;user-select:all;padding:.9rem 1rem;font-size:.85rem;display:block}.connect-steps{text-align:left;color:#3c4043;flex-direction:column;gap:.75rem;font-size:.875rem;line-height:1.5;list-style:none;display:flex}.login-box .sign-out-button{align-self:center}.sign-out-button{text-transform:uppercase;letter-spacing:.1em;cursor:pointer;opacity:.6;background:0 0;border:none;font-family:inherit;font-size:.75rem;transition:opacity .2s}.sign-out-button:hover{opacity:1}.upload-folder{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-color);flex-direction:column;gap:.4rem;font-size:.75rem;display:flex}.upload-folder input{border:1px solid var(--border-color);font:inherit;letter-spacing:normal;text-transform:none;color:var(--text-color);padding:.7rem .8rem;font-size:.95rem}.dropzone{border:1px dashed var(--text-color);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;padding:2.5rem 1rem;font-size:.875rem;transition:background .2s}.dropzone:hover,.dropzone.dragging{background:#f5f5f5}.upload-list{text-align:left;border-top:1px solid var(--border-color);font-size:.85rem;list-style:none}.upload-list li{border-bottom:1px solid var(--border-color);word-break:break-all;justify-content:space-between;gap:1rem;padding:.5rem 0;display:flex}.upload-list li span:last-child{color:var(--muted-color);flex-shrink:0}.upload-list .upload-failed span:last-child{color:red;flex-shrink:1}.upload-summary{font-size:.85rem}@media (width<=640px){.login-box{padding:1rem}}
