body{background:linear-gradient(135deg,#667eea,#764ba2);margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background-color:#f8fafc;height:100vh;overflow:hidden}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}#root{height:100vh;width:100vw}.settings-screen{background:#fff;border-radius:16px;box-shadow:0 8px 25px #0000001a;padding:32px}.settings-screen h2{color:#1a202c;font-size:24px;font-weight:700;margin:0 0 16px}.settings-screen p{color:#64748b;font-size:16px;line-height:1.6;margin:0}.layout{background-color:#f8fafc;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh}.sidebar{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:2px 0 10px #0000001a;color:#fff;display:flex;flex-direction:column;width:280px;z-index:1000}.sidebar-header{border-bottom:1px solid #ffffff1a;padding:24px 20px}.sidebar-header h2{color:#fff;font-size:24px;font-weight:700;margin:0}.sidebar-nav{flex:1 1;padding:20px 0}.nav-item{align-items:center;background:none;border:none;color:#fffc;cursor:pointer;display:flex;font-size:16px;font-weight:500;padding:16px 24px;text-align:left;transition:all .3s ease;width:100%}.nav-item:hover{background-color:#ffffff1a;color:#fff;transform:translateX(4px)}.nav-item.active{background-color:#fff3;border-right:4px solid #fff;color:#fff}.nav-icon{font-size:20px;margin-right:12px;text-align:center;width:24px}.nav-label{font-size:16px}.main-content{display:flex;flex:1 1;flex-direction:column;height:100vh;max-height:100vh;overflow:hidden}.content-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;padding:24px 32px}.content-header h1{color:#1a202c;font-size:28px;font-weight:700;margin:0}.content-body{background-color:#f8fafc;flex:1 1;overflow-y:auto;padding:32px}@media (max-width:768px){.layout{flex-direction:column}.sidebar{height:auto;width:100%}.sidebar-nav{display:flex;padding:0}.nav-item{flex:1 1;justify-content:center;padding:16px 8px}.nav-label{display:none}.content-body{padding:16px}}.content-body::-webkit-scrollbar{width:8px}.content-body::-webkit-scrollbar-track{background:#f1f5f9}.content-body::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.content-body::-webkit-scrollbar-thumb:hover{background:#a0aec0}.home-screen{margin:0 auto;max-width:1200px;position:relative}.welcome-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 10px 25px #667eea4d;color:#fff;margin-bottom:32px;padding:40px}.welcome-section h2{font-size:32px;font-weight:700;margin:0 0 8px}.welcome-section p{font-size:18px;margin:0;opacity:.9}.stats-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;display:flex;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.stat-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;font-size:32px;height:48px;justify-content:center;margin-right:16px;width:48px}.stat-content{flex:1 1}.stat-value{color:#1a202c;font-size:24px;font-weight:700;margin-bottom:4px}.stat-label{color:#64748b;font-size:14px;font-weight:500}.content-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:32px}.card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;overflow:hidden;transition:box-shadow .2s ease}.card:hover{box-shadow:0 8px 25px #0000001a}.card-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px}.card-header h3{color:#1a202c;font-size:18px;font-weight:600;margin:0}.card-badge{background:#10b981;border-radius:6px;color:#fff;font-size:12px;font-weight:500;padding:4px 8px}.card-content{padding:24px}.activity-list{space-y:16px}.activity-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;padding:12px 0}.activity-item:last-child{border-bottom:none}.activity-time{color:#64748b;font-size:14px;font-weight:500;margin-right:16px;min-width:60px}.activity-content{flex:1 1}.activity-text{color:#1a202c;font-size:14px;margin-bottom:4px}.activity-type{border-radius:4px;font-size:12px;font-weight:500;padding:2px 8px}.activity-type.meeting{background:#dbeafe;color:#1e40af}.activity-type.work{background:#dcfce7;color:#166534}.activity-type.call{background:#fef3c7;color:#92400e}.quick-actions{display:flex;flex-direction:column;gap:12px}.action-button{padding:12px 16px}.action-button.primary{background:linear-gradient(135deg,#667eea,#764ba2)}.action-button.primary:hover{box-shadow:0 4px 12px #667eea66}.action-button.secondary{background:#f8fafc;border:1px solid #e2e8f0;color:#475569}.action-button.secondary:hover{background:#f1f5f9;border-color:#cbd5e0}.action-icon{margin-right:8px}.schedule-preview{space-y:16px}.schedule-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;padding:16px 0}.schedule-item:last-child{border-bottom:none}.schedule-time{color:#667eea;font-size:14px;font-weight:600;margin-right:16px;min-width:60px}.schedule-content{flex:1 1}.schedule-title{color:#1a202c;font-size:14px;font-weight:500;margin-bottom:4px}.schedule-location{color:#64748b;font-size:12px}.contacts-list{space-y:12px}.contact-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;padding:12px 0}.contact-item:last-child{border-bottom:none}.contact-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;flex-shrink:0;font-size:18px;height:40px;justify-content:center;margin-right:12px;width:40px}.contact-info{flex:1 1;min-width:0}.contact-name{color:#1a202c;font-size:14px;font-weight:600;margin-bottom:4px}.contact-email,.contact-phone{align-items:center;color:#64748b;display:flex;font-size:12px;gap:4px;margin-bottom:2px}.documents-list{space-y:12px}.document-item{align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:flex;padding:12px 0;transition:background-color .2s ease}.document-item:hover{background-color:#f8fafc;border-radius:8px;margin:0 -12px;padding:12px}.document-item:last-child{border-bottom:none}.document-icon{align-items:center;background:#f1f5f9;border-radius:8px;display:flex;flex-shrink:0;font-size:18px;height:40px;justify-content:center;margin-right:12px;width:40px}.document-info{flex:1 1;min-width:0}.document-title{-webkit-line-clamp:1;-webkit-box-orient:vertical;color:#1a202c;display:-webkit-box;font-size:14px;line-height:1.4;margin-bottom:4px;overflow:hidden}.document-meta{color:#64748b;display:flex;font-size:12px;gap:12px}.document-size{font-weight:500}.document-date{color:#94a3b8}.no-data,.no-events{color:#94a3b8;font-size:14px;font-style:italic;padding:20px;text-align:center}.loading-spinner{align-items:center;display:inline-flex;justify-content:center}.loading-spinner.small{height:16px;width:16px}.loading-spinner.medium{height:24px;width:24px}.loading-spinner.large{height:32px;width:32px}.spinner{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:100%;width:100%}.loading-container{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:40px 20px}.loading-text{font-weight:500}.loading-text,.stat-loading{color:#64748b;font-size:14px}.stat-loading{align-items:center;display:flex;gap:8px}.stat-loading .loading-spinner{height:14px;width:14px}.stat-loading .spinner{border-width:1.5px}.action-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.action-button:disabled:hover{box-shadow:none;transform:none}@media (max-width:768px){.content-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.welcome-section{padding:24px}.welcome-section h2{font-size:24px}.welcome-section p{font-size:16px}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}}.refresh-indicator{position:fixed}.calendar-widget{background:#fff;border-radius:16px;box-shadow:0 8px 25px #0000001a;height:100%;margin-bottom:0;overflow:hidden;position:relative;width:100%}.calendar-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:24px 32px}.calendar-header h3{font-size:24px;font-weight:700;margin:0}.calendar-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.back-button,.nav-button,.refresh-button,.today-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .2s ease}.back-button:hover,.nav-button:hover,.refresh-button:hover,.today-button:hover{background:#ffffff4d}.refresh-button{align-items:center;display:flex;justify-content:center;min-width:36px}.refresh-button:disabled{cursor:not-allowed;opacity:.6}.refresh-button:disabled:hover{background:#fff3}.month-year,.selected-date{color:#fff;font-size:16px;font-weight:600;min-width:120px;text-align:center}.date-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s ease}.date-button:hover{background:#ffffff4d}.date-button.active{background:#fff6;border-color:#fff9}.refresh-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:6px 10px;transition:all .2s ease}.refresh-button:hover{background:#ffffff4d;transform:rotate(180deg)}.calendar-content{height:calc(100vh - 200px);overflow-y:auto;padding:32px}.month-view{width:100%}.calendar-grid{display:flex;flex-direction:column;width:100%}.calendar-weekdays{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.weekday{background:#f8f9fa;border-radius:4px;color:#666;font-size:12px;font-weight:600;padding:8px 4px;text-align:center}.calendar-days{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr)}.calendar-day{align-items:flex-start;background:#fff;border:1px solid #e9ecef;cursor:pointer;display:flex;flex-direction:column;min-height:120px;padding:12px 8px;position:relative;transition:all .2s ease}.calendar-day:hover{background:#f8f9fa;border-color:#2196f3}.calendar-day.other-month{background:#f8f9fa;color:#999}.calendar-day.today{background:#e3f2fd;border-color:#2196f3}.calendar-day.today .day-number{align-items:center;background:#2196f3;border-radius:50%;color:#fff;display:flex;font-weight:600;height:24px;justify-content:center;width:24px}.calendar-day.selected{background:#bbdefb;border-color:#1976d2}.day-number{font-size:14px;font-weight:500;margin-bottom:4px}.day-events{display:flex;flex-wrap:wrap;gap:2px;margin-top:auto;width:100%}.day-event-dot{background:#2196f3;border-radius:50%;flex-shrink:0;height:6px;width:6px}.more-events{background:#e9ecef;border-radius:8px;color:#666;font-size:10px;margin-left:2px;padding:1px 4px}.day-view{width:100%}.calendar-auth{padding:40px 20px;text-align:center}.calendar-auth p{color:#666;font-size:14px;margin:0 0 20px}.auth-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.auth-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.auth-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.error,.loading,.no-events{color:#666;font-size:14px;padding:20px;text-align:center}.loading{align-items:center;display:flex;gap:8px;justify-content:center}.loading:before{animation:spin 1s linear infinite;border:2px solid #e3f2fd;border-radius:50%;border-top-color:#2196f3;content:"";height:16px;width:16px}.error{color:#e74c3c}.events-list{display:flex;flex-direction:column;gap:12px}.event-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s ease}.event-item:hover{background:#e3f2fd;border-color:#2196f3;box-shadow:0 2px 8px #2196f333;transform:translateY(-1px)}.event-time{align-items:center;background:#2196f3;border-radius:6px;color:#fff;display:flex;font-size:12px;font-weight:600;justify-content:center;min-width:60px;padding:6px 10px;text-align:center}.event-details{flex:1 1;min-width:0}.event-title{color:#333;font-size:14px;font-weight:600;line-height:1.4;margin-bottom:4px}.event-attendees,.event-location{align-items:center;color:#666;display:flex;font-size:12px;gap:4px;margin-bottom:2px}.event-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:12px;line-height:1.4;margin-top:4px;overflow:hidden}.calendar-content::-webkit-scrollbar{width:6px}.calendar-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.calendar-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.calendar-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width:768px){.calendar-header{align-items:stretch;flex-direction:column;gap:12px}.calendar-controls{flex-wrap:wrap;justify-content:center}.calendar-day{min-height:60px;padding:4px 2px}.day-number{font-size:12px}.day-event-dot{height:4px;width:4px}.more-events{font-size:8px;padding:1px 2px}.event-item{flex-direction:column;gap:8px}.event-time{align-self:flex-start;min-width:auto}.month-year,.selected-date{font-size:14px;min-width:100px}}.refresh-indicator{right:16px;top:16px;z-index:10}.chat-container{background:#fff;border-radius:16px;box-shadow:0 8px 25px #0000001a;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.chat-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #fff3;color:#fff;display:flex;justify-content:space-between;padding:24px 32px}.chat-header-controls{align-items:center;display:flex;gap:16px}.new-chat-button{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.new-chat-button:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.new-chat-button:active{transform:translateY(0)}.chat-header h1{color:#fff;font-size:28px;font-weight:700;margin:0}.status-indicator{background:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#fffc;font-size:14px;padding:8px 16px}.messages-container{background:#f8fafc;display:flex;flex:1 1;flex-direction:column;gap:20px;overflow-y:auto;padding:32px}.message{animation:fadeInUp .3s ease-out;display:flex;gap:12px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.user-message{flex-direction:row-reverse}.message-avatar{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.user-message .message-avatar{background:linear-gradient(135deg,#4facfe,#00f2fe)}.assistant-message .message-avatar{background:linear-gradient(135deg,#fa709a,#fee140)}.message-content{display:flex;flex-direction:column;gap:4px;max-width:70%}.user-message .message-content{align-items:flex-end}.assistant-message .message-content{align-items:flex-start}.message-text{word-wrap:break-word;border-radius:18px;font-size:16px;line-height:1.4;padding:12px 16px}.user-message .message-text{background:linear-gradient(135deg,#4facfe,#00f2fe);border-bottom-right-radius:4px;color:#fff}.assistant-message .message-text{background:#ffffffe6;border-bottom-left-radius:4px;box-shadow:0 2px 8px #0000001a;color:#333}.message-time{color:#fff9;font-size:12px;padding:0 8px}.typing-indicator{background:#ffffffe6;border-radius:18px;border-bottom-left-radius:4px;box-shadow:0 2px 8px #0000001a;display:flex;gap:4px;padding:12px 16px}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:#999;border-radius:50%;height:8px;width:8px}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}.input-container{background:#fff;border-top:1px solid #e2e8f0;padding:24px 32px}.input-wrapper{align-items:flex-end;background:#fff;border-radius:24px;box-shadow:0 4px 12px #0000001a;display:flex;gap:12px;padding:8px}.message-input{background:#0000;border:none;flex:1 1;font-family:inherit;font-size:16px;line-height:1.4;max-height:120px;outline:none;padding:12px 16px;resize:none}.message-input::placeholder{color:#999}.send-button{align-items:center;background:linear-gradient(135deg,#4facfe,#00f2fe);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:44px;justify-content:center;transition:all .2s ease;width:44px}.send-button:hover:not(:disabled){box-shadow:0 4px 12px #4facfe66;transform:scale(1.05)}.send-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.messages-container::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:#ffffff80}@media (max-width:768px){.chat-container{border-radius:0;height:100vh}.message-content{max-width:85%}.chat-header h1{font-size:20px}.message-text{font-size:14px}}.file-tab{background:#f8f9fa;display:flex;flex-direction:column;height:100%;max-height:100vh;overflow:hidden;position:relative}.file-header{align-items:center;background:#fff;border-bottom:1px solid #e9ecef;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;padding:20px 24px}.file-header h2{color:#2c3e50;font-size:24px;font-weight:600;margin:0}.file-actions{display:flex;gap:12px}.action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s ease}.action-button.primary{background:#007bff;color:#fff}.action-button.primary:hover{background:#0056b3;transform:translateY(-1px)}.action-button.secondary{background:#6c757d;color:#fff}.action-button.secondary:hover{background:#545b62;transform:translateY(-1px)}.action-icon{font-size:16px}.file-content{display:flex;flex:1 1;overflow:hidden}.file-sidebar{background:#fff;border-right:1px solid #e9ecef;display:flex;flex-direction:column;width:350px}.file-search{border-bottom:1px solid #e9ecef;padding:16px}.search-input{border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none;padding:10px 12px;transition:border-color .2s ease;width:100%}.search-input:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.file-list{display:flex;flex:1 1;flex-direction:column;max-height:calc(100vh - 160px);min-height:0;overflow:hidden;position:relative;transition:all .3s ease}.file-list.drag-over{background:linear-gradient(135deg,#007bff1a,#007bff0d);border:2px dashed #007bff;border-radius:8px}.file-list.drag-over:before{background:#ffffffe6;border-radius:12px;box-shadow:0 4px 12px #007bff33;color:#007bff;content:"📁 파일을 여기에 드롭하세요";font-size:18px;font-weight:600;left:50%;padding:20px 40px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}.file-list-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:16px}.file-list-header h3{color:#495057;font-size:16px;font-weight:600;margin:0}.file-items{flex:1 1;max-height:calc(100vh - 200px);min-height:0;overflow-y:auto;padding:8px}.file-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;margin-bottom:4px;padding:12px;position:relative;transition:all .2s ease}.file-item:hover{background:#f8f9fa}.file-item.selected{background:#e3f2fd;border:1px solid #2196f3}.file-icon{flex-shrink:0;font-size:20px;margin-right:12px}.file-info{flex:1 1;min-width:0}.file-name{color:#2c3e50;font-weight:500;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{color:#6c757d;display:flex;font-size:12px;gap:8px}.file-date,.file-size{white-space:nowrap}.file-delete-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;opacity:0;padding:4px;transition:all .2s ease}.file-item:hover .file-delete-btn{opacity:1}.file-delete-btn:hover{background:#ffebee;color:#d32f2f}.file-delete-btn:disabled{cursor:not-allowed;opacity:.5}.file-delete-btn:disabled:hover{background:none;color:inherit}.file-preview-container{border:none;flex:1 1;height:100%;max-height:calc(100vh - 280px);min-height:0;overflow:hidden;width:100%}.file-preview-iframe{background:#f8f9fa;border:none;height:100%;width:100%}.file-download-btn{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;min-width:32px;padding:8px;transition:all .2s ease}.file-download-btn:hover{background:#e3f2fd;color:#1976d2}.file-download-btn:disabled{cursor:not-allowed;opacity:.5}.file-download-btn:disabled:hover{background:none;color:inherit}.file-main{background:#fff;flex:1 1;max-height:calc(100vh - 80px)}.file-main,.file-viewer{display:flex;flex-direction:column;min-height:0;overflow:hidden}.file-viewer{height:100%;max-height:calc(100vh - 160px)}.file-viewer-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:16px 24px}.file-viewer-title{align-items:center;display:flex;gap:12px}.file-viewer-title .file-icon{font-size:24px}.file-viewer-title .file-name{color:#2c3e50;font-size:18px;font-weight:600}.file-viewer-actions{display:flex;gap:8px}.file-viewer-content{display:flex;flex:1 1;flex-direction:column;max-height:calc(100vh - 240px);min-height:0;overflow:hidden}.file-content-display{height:100%;overflow:auto;padding:24px}.file-content-text{word-wrap:break-word;color:#2c3e50;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.file-content-document,.file-content-image,.file-content-pdf,.file-content-spreadsheet{align-items:center;display:flex;height:100%;justify-content:center;min-height:400px}.file-content-pdf-text{display:flex;flex-direction:column;height:100%}.pdf-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:8px 8px 0 0;display:flex;gap:12px;padding:16px}.pdf-icon{font-size:24px}.pdf-title{color:#2c3e50;font-size:18px;font-weight:600}.pdf-content{background:#fff;border:1px solid #e9ecef;border-radius:0 0 8px 8px;border-top:none;flex:1 1;overflow:auto;padding:16px}.pdf-text-content{word-wrap:break-word;color:#2c3e50;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.file-content-document-text{display:flex;flex-direction:column;height:100%}.document-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:8px 8px 0 0;display:flex;gap:12px;padding:16px}.document-icon{font-size:24px}.document-title{color:#2c3e50;font-size:18px;font-weight:600}.document-content{background:#fff;border:1px solid #e9ecef;border-radius:0 0 8px 8px;border-top:none;flex:1 1;overflow:auto;padding:16px}.document-text-content{word-wrap:break-word;color:#2c3e50;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.document-placeholder,.image-placeholder,.pdf-placeholder,.spreadsheet-placeholder{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:12px;padding:40px;text-align:center}.document-icon,.image-icon,.pdf-icon,.spreadsheet-icon{font-size:64px;margin-bottom:16px;opacity:.7}.document-text,.image-text,.pdf-text,.spreadsheet-text{color:#495057;font-size:24px;font-weight:600;margin-bottom:8px}.document-subtitle,.image-subtitle,.pdf-subtitle,.spreadsheet-subtitle{color:#6c757d;font-size:16px}.file-content-code{display:flex;flex-direction:column;height:100%}.code-header{background:#2d3748;border-radius:6px 6px 0 0;color:#e2e8f0;font-size:12px;font-weight:500;padding:8px 16px}.code-language{letter-spacing:.5px;text-transform:uppercase}.code-content{background:#1a202c;border-radius:0 0 6px 6px;color:#e2e8f0;flex:1 1;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;margin:0;overflow:auto;padding:16px}.code-content code{background:none;color:inherit;padding:0}.file-content-json{display:flex;flex-direction:column;height:100%}.json-header{background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px 6px 0 0;color:#4a5568;font-size:12px;font-weight:500;padding:8px 16px}.json-label{letter-spacing:.5px;text-transform:uppercase}.json-content{background:#fff;border:1px solid #e2e8f0;border-radius:0 0 6px 6px;border-top:none;flex:1 1;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;margin:0;overflow:auto;padding:16px}.json-content code{background:none;color:#2d3748;padding:0}.text-content{word-wrap:break-word;background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2c3e50;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;margin:0;padding:16px;white-space:pre-wrap}.file-placeholder{align-items:center;color:#6c757d;display:flex;flex:1 1;flex-direction:column;justify-content:center}.placeholder-icon{font-size:64px;margin-bottom:16px;opacity:.5}.placeholder-text{font-size:18px;font-weight:500}.error,.loading,.no-content,.no-files{align-items:center;color:#6c757d;display:flex;justify-content:center;padding:40px;text-align:center}.error{color:#dc3545}.no-files{font-style:italic}.file-content-display::-webkit-scrollbar,.file-items::-webkit-scrollbar{width:6px}.file-content-display::-webkit-scrollbar-track,.file-items::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.file-content-display::-webkit-scrollbar-thumb,.file-items::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.file-content-display::-webkit-scrollbar-thumb:hover,.file-items::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width:768px){.file-content{flex-direction:column}.file-sidebar{height:300px;width:100%}.file-main{height:calc(100vh - 300px)}.file-header{align-items:stretch;flex-direction:column;gap:16px}.file-actions{justify-content:center}}.refresh-indicator{align-items:center;animation:slideIn .3s ease-out;background:#667eeae6;border-radius:20px;box-shadow:0 2px 8px #00000026;color:#fff;display:flex;font-size:12px;font-weight:500;gap:8px;padding:8px 12px;position:absolute;right:20px;top:20px;z-index:1000}.refresh-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:12px;width:12px}.refresh-text{white-space:nowrap}@keyframes slideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.file-upload-label{align-items:center;cursor:pointer;display:inline-flex;gap:8px}.file-upload-label:disabled{cursor:not-allowed;opacity:.6}.upload-progress{background:#000000e6;border-radius:12px;box-shadow:0 8px 32px #0000004d;color:#fff;left:50%;min-width:300px;padding:24px 32px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:2000}.upload-notification{animation:slideDown .3s ease-out;left:50%;position:fixed;top:20px;transform:translateX(-50%);z-index:1500}.upload-notification-content{word-wrap:break-word;align-items:center;background:#28a745;border-radius:8px;box-shadow:0 4px 12px #28a7454d;color:#fff;display:flex;gap:8px;max-width:400px;padding:12px 20px}.upload-notification-text{font-size:14px;font-weight:500}.upload-notification.error .upload-notification-content{background:#dc3545;box-shadow:0 4px 12px #dc35454d}@keyframes slideDown{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.upload-progress-content{align-items:center;display:flex;flex-direction:column;gap:16px}.upload-spinner{animation:spin 1s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:24px;width:24px}.upload-text{font-size:16px;font-weight:500}.upload-bar{background:#fff3;border-radius:4px;height:8px;overflow:hidden;width:100%}.upload-bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;height:100%;transition:width .3s ease}.upload-percentage{color:#667eea;font-size:14px;font-weight:600}.settings-tab{background:#f8f9fa;display:flex;flex-direction:column;height:100%;overflow:hidden}.settings-header{background:#fff;border-bottom:1px solid #e9ecef;padding:20px}.settings-header h2{color:#333;font-size:24px;font-weight:600;margin:0 0 8px}.settings-header p{color:#666;font-size:14px;margin:0}.settings-message{border-radius:8px;font-size:14px;font-weight:500;margin:16px 20px;padding:12px 16px;text-align:center}.settings-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.settings-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.settings-content{flex:1 1;overflow-y:auto;padding:20px}.settings-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.settings-section h3{align-items:center;color:#333;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0 0 16px}.setting-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:12px 0}.setting-item:last-child{border-bottom:none}.setting-item label{color:#333;font-size:14px;font-weight:500;min-width:150px}.setting-item input[type=checkbox]{accent-color:#007bff;cursor:pointer;height:18px;width:18px}.setting-item input[type=number]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:6px 8px;text-align:center;width:80px}.setting-item input[type=number]:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.setting-item select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;min-width:150px;padding:6px 12px}.setting-item select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.settings-actions{background:#fff;border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:center;padding:20px}.settings-button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;min-width:120px;padding:12px 24px;transition:all .2s ease}.settings-button.primary{background:#007bff;color:#fff}.settings-button.primary:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.settings-button.secondary{background:#6c757d;color:#fff}.settings-button.secondary:hover:not(:disabled){background:#545b62;transform:translateY(-1px)}.settings-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:8px 0}.info-item:last-child{border-bottom:none}.info-label{color:#666;font-size:14px;font-weight:500}.info-value{color:#333;font-family:Courier New,monospace;font-size:14px}[data-theme=dark] .settings-tab{background:#1a1a1a}[data-theme=dark] .settings-header{background:#2d2d2d;border-bottom-color:#404040}[data-theme=dark] .settings-header h2{color:#fff}[data-theme=dark] .settings-header p{color:#ccc}[data-theme=dark] .settings-section{background:#2d2d2d;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .settings-section h3{color:#fff}[data-theme=dark] .setting-item{border-bottom-color:#404040}[data-theme=dark] .setting-item label{color:#fff}[data-theme=dark] .setting-item input[type=number]{background:#404040;border-color:#555;color:#fff}[data-theme=dark] .setting-item input[type=number]:disabled{background:#333;color:#666}[data-theme=dark] .setting-item select{background:#404040;border-color:#555;color:#fff}[data-theme=dark] .settings-actions{background:#2d2d2d;border-top-color:#404040}[data-theme=dark] .info-item{border-bottom-color:#404040}[data-theme=dark] .info-label{color:#ccc}[data-theme=dark] .info-value{color:#fff}@media (max-width:768px){.settings-content{padding:16px}.settings-section{margin-bottom:16px;padding:16px}.setting-item{align-items:flex-start;flex-direction:column;gap:8px}.setting-item label{min-width:auto}.settings-actions{flex-direction:column;padding:16px}.settings-button{width:100%}.info-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.43b0f181.css.map*/