.App{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;font-family:Segoe UI,system-ui,Roboto,Helvetica Neue,Arial,sans-serif;min-height:100vh;text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background:#fffffff2;box-shadow:0 2px 10px #0000001a;display:flex;justify-content:center;margin-bottom:20px;padding:20px 0;position:relative}.site-logo{display:block;height:56px;left:12px;object-fit:contain;position:absolute;top:50%;transform:translateY(-50%);width:56px}.app-title{color:#333;font-size:2.5em;font-weight:300;line-height:1;margin:0;text-align:center}.session-info,.user-bar{align-items:center;color:#4b5563;display:flex;gap:16px;position:absolute;right:12px;top:50%;transform:translateY(-50%)}@media (max-width:640px){.App-header{padding:12px 8px}.site-logo{height:48px;left:8px;width:48px}.app-title{font-size:1.75em;padding-left:44px}.session-info{justify-content:center;margin-top:8px;position:static;right:auto;transform:none}}.session-info strong,.user-email{color:#1f2937;font-size:.9rem;font-weight:600}.logout-btn{background:#ef4444;border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;padding:.55rem 1rem;transition:background .2s ease,transform .12s ease}.logout-btn:hover{background:#dc2626;transform:translateY(-1px)}.app-loader{background:#11182759;border-radius:12px;box-shadow:0 12px 30px #0f1c3f40;color:#f9fafb;font-size:1.1rem;letter-spacing:.02em;padding:1.5rem 2rem}.tab-navigation{display:flex;gap:10px;justify-content:center}.tab-button{background:#f8f9fa;border:2px solid #0000;border-radius:25px;color:#495057;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease}.tab-button:hover{background:#e9ecef}.tab-button.active{background:#007bff;border-color:#0056b3;color:#fff}.App-main{margin:0 auto;max-width:1200px;padding:20px}main{align-items:flex-start;display:flex;flex:1 1;justify-content:center;padding:24px}.xbrl-container{max-width:980px;width:100%}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.App-header h1{font-size:2em}.tab-navigation{align-items:center;flex-direction:column}.tab-button{width:200px}.App-main{padding:10px}}.xbrl-container{background-color:#f9f9f9;border:1px solid #ccc;border-radius:8px;margin:2rem auto;max-width:800px;padding:2rem}.dropzone{border:2px dashed #007bff;border-radius:8px;cursor:pointer;padding:2rem;text-align:center;transition:background-color .2s ease-in-out}.dropzone.active{background-color:#e9f5ff}.dropzone p{color:#555;font-size:1rem;margin:0}.welcome-message{color:#374151;font-size:1.05rem;line-height:1.4;margin:0 0 1.25rem}.xbrl-upload-actions{align-items:center;display:flex;gap:12px;justify-content:center;margin-top:1.75rem;width:100%}.file-list,.processed-files{margin-top:1.5rem}.file-list h3,.processed-files h3{color:#333;margin-bottom:1rem}.file-list ul,.processed-files ul{list-style-type:none;padding:0}.file-list li,.processed-files li{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:.5rem}.action-btn{align-items:center;border:none;border-radius:6px;box-shadow:0 1px 0 #0000000d;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:6px;padding:.65rem 1.1rem;transition:background-color .15s ease,transform .06s ease}.action-btn.primary{background-color:#0b66ff;color:#fff}.action-btn.primary:hover{background-color:#095be6;transform:translateY(-1px)}.action-btn.danger{background-color:#e53935;border:1px solid #e539351f;color:#fff}.action-btn.danger:hover{background-color:#d32f2f;transform:translateY(-1px)}.action-btn.secondary{background-color:#5c6bc0;border:1px solid #5c6bc01f;color:#fff}.action-btn.secondary:hover{background-color:#4a5ab8;transform:translateY(-1px)}.action-btn.warning{background-color:#ff9800;border:1px solid #ff98001f;color:#fff}.action-btn.warning:hover{background-color:#f57c00;transform:translateY(-1px)}.clear-now-btn{background-color:#e53935;border:1px solid #e539351f;color:#fff}.clear-now-btn:hover{background-color:#d32f2f;transform:translateY(-1px)}.upload-btn{align-items:center;display:inline-flex;font-size:1.05rem;justify-content:center;margin-top:2rem;padding:.9rem 1.1rem;text-align:center;width:100%}.error-message{color:#ff4d4d;margin-top:1rem}.file-status-list{list-style:none;margin-top:1rem;padding:0}.file-status-list li{border-bottom:1px solid #eee;justify-content:space-between;padding:.5rem 0}.file-info,.file-status-list li{align-items:center;display:flex;gap:12px}.file-info{flex:1 1;min-width:0}.file-name{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{border:1px solid #0000;border-radius:999px;display:inline-block;font-size:.875rem;font-weight:700;min-width:76px;padding:.28rem .6rem;text-align:center;text-transform:none}.status-badge.queued{background:#f3f4f6;border-color:#e5e7eb;color:#374151}.status-badge.uploading{background:#e9f5ff;border-color:#cfe6ff;color:#0b66ff}.status-badge.processing{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.status-badge.completed,.status-badge.done{background:#e6ffed;border-color:#c6f0d0;color:#0a7a3a}.status-badge.error,.status-badge.failed{background:#fff1f0;border-color:#ffd6d6;color:#b91c1c}.status-badge.cleared{background:#f3f4f6;border-color:#e5e7eb;color:#4b5563}.upload-progress{color:#6b7280;font-size:.9rem;margin-left:8px}.item-error{color:#b91c1c;font-weight:600;margin-left:8px}.file-actions{align-items:center;display:flex;gap:8px;margin-left:12px}.remove-file-btn{background-color:#e53935;border:none;border-radius:6px;box-shadow:0 1px 0 #0000000a;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:.45rem .8rem;transition:background-color .12s ease,transform .06s ease}.remove-file-btn:hover{background-color:#d32f2f;transform:translateY(-1px)}.clear-now-btn,.download-all-btn.primary,.upload-btn{font-size:1rem;padding:.65rem 1.1rem;transition:background-color .15s ease,transform .06s ease}.clear-now-btn,.download-all-btn.primary,.download-btn,.upload-btn{border:none;border-radius:6px;box-shadow:0 1px 0 #0000000d;cursor:pointer;font-weight:600}.download-btn{background:#10b981;color:#fff;font-size:.95rem;padding:.5rem .9rem;transition:background .15s ease,transform .06s ease}.download-btn.secondary{background:#6366f1}.download-btn:hover{filter:brightness(.95);transform:translateY(-1px)}.refresh-btn{background:#eff6ff;border:1px solid #2563eb26;border-radius:6px;color:#2563eb;cursor:pointer;font-weight:600;padding:.45rem .85rem;transition:all .12s ease}.refresh-btn:hover{background:#dbeafe;border-color:#2563eb4d}.dropzone .select-folder-btn{background:#2563eb;background:var(--accent-color,#2563eb);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;margin-top:12px;padding:10px 18px;transition:background .2s ease,transform .1s ease}.dropzone .select-folder-btn:hover{background:#1d4ed8;background:var(--accent-color-strong,#1d4ed8)}.dropzone .select-folder-btn:active{transform:translateY(1px)}.dropzone .select-folder-btn:focus-visible{outline:2px solid #2563eb80;outline-offset:2px}.dropzone .select-files-btn{background:#2563eb;background:var(--accent-color,#2563eb);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;margin-top:12px;padding:10px 18px;transition:background .2s ease,transform .1s ease}.dropzone .select-files-btn:hover{background:#1d4ed8;background:var(--accent-color-strong,#1d4ed8)}.dropzone .select-files-btn:active{transform:translateY(1px)}.dropzone .select-files-btn:focus-visible{outline:2px solid #2563eb80;outline-offset:2px}.manual-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.manual-controls .select-files-btn{background:#2563eb;background:var(--accent-color,#2563eb);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 18px;transition:background .2s ease,transform .1s ease}.manual-controls .select-files-btn:hover{background:#1d4ed8;background:var(--accent-color-strong,#1d4ed8)}.manual-controls .select-files-btn:active{transform:translateY(1px)}.manual-controls .select-files-btn:focus-visible{outline:2px solid #2563eb80;outline-offset:2px}.manual-controls .manual-helper{color:#6b7280;font-size:.95rem}.download-notice{background:#fff8e1;border:1px solid #ffe08a;border-radius:6px;color:#6a4f00;font-size:.95rem;margin:12px 0;padding:8px 12px}.spinner{height:16px;margin-right:8px;vertical-align:text-bottom;width:16px}.spinner,.spinner-small{animation:obr-spin .9s linear infinite;border:2px solid #00000026;border-radius:50%;border-top-color:#000000b3;display:inline-block}.spinner-small{height:14px;width:14px}@keyframes obr-spin{to{transform:rotate(1turn)}}button[disabled]{cursor:progress;opacity:.7}.upload-stats{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;margin:14px 0 10px;padding:10px 14px 14px}.upload-stats .stats-line{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}.upload-stats .stat-label{color:#374151;font-weight:600}.upload-stats .stat-values{color:#1e3a8a;font-weight:600}.upload-stats .stat-hint{color:#92400e;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.upload-stats .stat-hint.done{color:#047857}.progress-track{background:#e5e7eb;border-radius:6px;height:10px;overflow:hidden;position:relative}.progress-bar{background:linear-gradient(90deg,#2563eb,#1d4ed8);height:100%;left:0;position:absolute;top:0;transition:width .35s ease}.download-all-btn:disabled{cursor:not-allowed;opacity:.55}.upload-single-row{margin:12px 0}.controls-row,.upload-single-row{display:flex;justify-content:center}.controls-row{gap:12px;margin:8px 0 16px}.upload-individual-btn{align-items:center;display:inline-flex;justify-content:center;min-width:240px;text-align:center}.options-panel{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:1.5rem;padding:1.25rem}.options-panel h3{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 .25rem}.options-hint{color:#718096;font-size:.85rem;margin:0 0 1rem}.options-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}@media (max-width:600px){.options-grid{grid-template-columns:1fr}}.option-field{display:flex;flex-direction:column;gap:4px}.option-field label{color:#4a5568;font-size:.85rem;font-weight:600}.option-field input{border:1px solid #cbd5e0;border-radius:6px;font-size:.95rem;padding:.55rem .75rem;transition:border-color .2s ease,box-shadow .2s ease}.option-field input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce26;outline:none}.dropzone-content{align-items:center;display:flex;flex-direction:column;gap:8px}.dropzone-icon{height:48px;margin-bottom:4px;width:48px}.dropzone-selected{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.remove-file-inline{background:#e53e3e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.3rem .7rem;transition:background .15s ease}.remove-file-inline:hover{background:#c53030}.processing-panel{border:1px solid #bee3f8;border-radius:10px;margin-top:1.5rem;padding:1.25rem}.processing-panel h3{color:#2b6cb0;font-size:1.1rem;margin:0 0 .75rem}.detected-info{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:1rem}.info-chip{background:#fff;border:1px solid #bee3f8;border-radius:999px;color:#2d3748;font-size:.85rem;padding:.3rem .85rem}.info-chip strong{color:#1a365d}.progress-stages{display:flex;flex-direction:column;gap:8px}.progress-stage{align-items:center;border-radius:6px;display:flex;font-size:.9rem;gap:10px;padding:.5rem .75rem;transition:background-color .2s ease}.progress-stage.stage-pending{color:#a0aec0}.progress-stage.stage-active{background:#3182ce1a;color:#2b6cb0;font-weight:600}.progress-stage.stage-done{color:#38a169}.stage-indicator{align-items:center;display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.stage-dot{background:#cbd5e0;border-radius:50%;display:inline-block;height:8px;width:8px}.result-panel{background:#f0fff4;border:1px solid #c6f6d5;border-radius:10px;margin-top:1.5rem;padding:1.5rem}.result-panel h3{color:#276749;font-size:1.1rem;margin:0 0 1rem}.stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:1.25rem}.stat-card{background:#fff;border:1px solid #c6f6d5;border-radius:8px;display:flex;flex-direction:column;gap:2px;padding:.75rem;text-align:center}.stat-card.warn{background:ivory;border-color:#fefcbf}.stat-card .stat-value{color:#1a365d;font-size:1.5rem;font-weight:700}.stat-card.warn .stat-value{color:#b7791f}.stat-card .stat-label{color:#718096;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.download-zip-btn{font-size:1.05rem;justify-content:center;padding:.85rem;width:100%}.failed-panel{background:#fff5f5;border:1px solid #fed7d7;border-radius:10px;margin-top:1.5rem;padding:1.25rem}.failed-panel h3{color:#c53030;font-size:1.1rem;margin:0 0 .5rem}.fail-message{color:#742a2a;font-size:.95rem;line-height:1.5;margin:0}.job-history{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1.5rem}.job-history h3{color:#2d3748;font-size:1.05rem;font-weight:600;margin:0 0 1rem}.job-list{list-style:none;margin:0;padding:0}.job-item{align-items:center;border-bottom:1px solid #edf2f7;border-radius:6px;display:flex;gap:12px;justify-content:space-between;padding:.65rem .75rem;transition:background .15s ease}.job-item:hover{background:#f7fafc}.job-item.active-job{background:#ebf8ff;border-color:#bee3f8}.job-info{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:12px;min-width:0}.job-filename{color:#2d3748;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-date{color:#a0aec0;font-size:.8rem;white-space:nowrap}.job-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.conversions-table{border-collapse:collapse;font-size:.95rem;margin-top:.75rem;width:100%}.conversions-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.conversions-table th{color:#4a5568;font-size:.85rem;font-weight:600;letter-spacing:.04em;padding:.6rem .75rem;text-align:left;text-transform:uppercase}.conversions-table td{border-bottom:1px solid #e2e8f0;padding:.6rem .75rem;vertical-align:middle}.conversions-table tbody tr:hover{background:#f7fafc}.conversions-table .active-row{background:#ebf8ff}.cell-filename{font-weight:500;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-date{color:#718096;font-size:.9rem;white-space:nowrap}.processing-panel{align-items:center;background:#ebf8ff;border-radius:8px;color:#2b6cb0;display:flex;font-size:.95rem;gap:12px;margin-top:1rem;padding:1rem 1.25rem}.email-option-panel{background:#f0f4ff;border:1px solid #d4ddf7;border-radius:8px;margin-top:1.25rem;padding:1rem 1.25rem}.email-toggle{align-items:center;color:#2d3748;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px}.email-toggle input[type=checkbox]{accent-color:#6366f1;cursor:pointer;height:18px;width:18px}.email-to-display{color:#4a5568;font-size:.9rem;margin:.5rem 0 0 26px}.cell-actions{align-items:center;display:flex;gap:6px}.email-btn{background:#6366f1;border:none;border-radius:6px;box-shadow:0 1px 0 #0000000d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:.5rem .9rem;transition:background .15s ease,transform .06s ease}.email-btn:hover{background:#4f46e5;transform:translateY(-1px)}.modal-overlay{align-items:center;background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #00000026;max-width:420px;padding:1.75rem;width:90%}.modal-content h3{color:#1a202c;font-size:1.1rem;margin:0 0 1rem}.email-field{display:flex;flex-direction:column;gap:6px;margin-bottom:1rem}.email-field label{color:#4a5568;font-size:.85rem;font-weight:600}.email-field input{border:1px solid #cbd5e0;border-radius:6px;font-size:.95rem;padding:.6rem .8rem}.email-field input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;outline:none}.email-error{color:#e53e3e;font-size:.9rem;margin:0 0 .75rem}.email-success{align-items:center;color:#22c55e;display:flex;font-size:1rem;font-weight:600;gap:10px;padding:1rem 0}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.cancel-btn{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#4a5568;cursor:pointer;font-weight:600;padding:.55rem 1rem;transition:background .15s ease}.cancel-btn:hover{background:#f7fafc}.send-btn{background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.55rem 1.2rem;transition:background .15s ease}.send-btn:hover{background:#4f46e5}.send-btn:disabled{cursor:not-allowed;opacity:.6}.login-card{background:#fffffff7;border-radius:12px;box-shadow:0 20px 40px #0f1c3f2e;max-width:420px;padding:2rem 2.5rem;text-align:left;width:100%}.login-card h2{color:#1f2937;font-weight:600;margin:0 0 1.5rem}.login-form{display:flex;flex-direction:column;gap:.85rem}.login-form label{color:#4b5563;font-size:.95rem;font-weight:600}.login-form input{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.7rem .85rem;transition:border-color .2s ease,box-shadow .2s ease}.login-form input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #3b82f626;outline:none}.login-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.8rem;transition:transform .12s ease,box-shadow .2s ease}.login-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.login-btn:not(:disabled):hover{box-shadow:0 10px 18px #2563eb40;transform:translateY(-1px)}.login-error{background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:.95rem;padding:.6rem .75rem}.social-section{margin-top:1.75rem}.social-divider{align-items:center;color:#6b7280;display:flex;font-size:.75rem;gap:.75rem;letter-spacing:.08em;margin-bottom:.85rem;text-transform:uppercase}.social-divider:after,.social-divider:before{background:#e5e7eb;content:"";flex:1 1;height:1px}.social-buttons{flex-wrap:wrap;gap:12px}.social-btn,.social-buttons{align-items:center;display:flex;justify-content:center}.social-btn{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;gap:.5rem;padding:.75rem .85rem;transition:transform .12s ease,box-shadow .2s ease}.social-btn:hover{box-shadow:0 12px 22px #11182726;transform:translateY(-1px)}.social-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.social-btn.google-btn{align-items:center;background:#fff;border:1px solid #e6e6e6;border-radius:8px;box-shadow:0 1px 0 #00000008;color:inherit;cursor:pointer;display:inline-flex;flex-direction:column;justify-content:center;min-width:160px;padding:8px 12px}.google-logo svg{display:block;height:40px;width:40px}.google-caption{color:#202124;font-size:.95rem;font-weight:600;margin-top:8px;text-transform:none}.gsi-material-button{align-items:center;-webkit-appearance:none;background-color:#fff;background-image:none;border:1px solid #747775;border-radius:4px;box-sizing:border-box;color:#1f1f1f;cursor:pointer;display:inline-flex;font-family:Roboto,arial,sans-serif;font-size:14px;height:40px;justify-content:center;letter-spacing:.25px;max-width:400px;min-width:min-content;outline:none;overflow:hidden;padding:0;position:relative;text-align:center;transition:background-color .218s,border-color .218s,box-shadow .218s;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;vertical-align:middle;white-space:nowrap;width:40px}.gsi-material-button .gsi-material-button-icon{height:20px;margin:0;min-width:20px;padding:9px;width:20px}.gsi-material-button .gsi-material-button-content-wrapper{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;height:100%;justify-content:space-between;position:relative;width:100%}.gsi-material-button .gsi-material-button-contents{flex-grow:1;font-family:Roboto,arial,sans-serif;font-weight:500;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.gsi-material-button .gsi-material-button-state{bottom:0;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .218s}.gsi-material-button:disabled{background-color:#ffffff61;border-color:#1f1f1f1f;cursor:default}.gsi-material-button:disabled .gsi-material-button-contents,.gsi-material-button:disabled .gsi-material-button-icon{opacity:38%}.gsi-material-button:not(:disabled):active .gsi-material-button-state,.gsi-material-button:not(:disabled):focus .gsi-material-button-state{background-color:#303030;opacity:12%}.gsi-material-button:not(:disabled):hover{box-shadow:0 1px 2px 0 #3c40434d,0 1px 3px 1px #3c404326}.gsi-material-button:not(:disabled):hover .gsi-material-button-state{background-color:#303030;opacity:8%}
/*# sourceMappingURL=main.0f6dd60b.css.map*/