*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fafafa;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{cursor:pointer}button,input,textarea{font-family:inherit}a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#555}.auth-container{align-items:center;background:#fafafa;display:flex;justify-content:center;min-height:100vh;padding:24px}.auth-card{background:#fff;border:1px solid #f0f0f0;border-radius:24px;box-shadow:0 4px 24px #0000000f;max-width:420px;padding:48px;width:100%}.auth-card h1{color:#1a1a1a;font-size:28px;font-weight:600;letter-spacing:-.02em;margin-bottom:8px;text-align:center}.auth-card h2{color:#737373;font-size:16px;font-weight:400;margin-bottom:40px;text-align:center}.btn-full{font-size:16px;margin-top:8px;padding:12px;width:100%}.auth-switch{color:#6b7280;margin-top:24px;text-align:center}.auth-switch a{color:#2563eb;font-weight:500}@media (max-width:768px){.auth-card{padding:28px}.auth-card h1{font-size:28px}.auth-card h2{font-size:20px}}.calendar-container{background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 1px 3px #0000000f;padding:32px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.calendar-header h2{color:#1a1a1a;font-size:22px;font-weight:600;letter-spacing:-.01em;margin:0}.calendar-header button{padding:8px 16px}.calendar-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr)}.calendar-day-name{color:#6b7280;font-size:14px;font-weight:600;padding:12px;text-align:center}.calendar-day{background:#fafafa;border:1px solid #f0f0f0;border-radius:12px;min-height:100px;padding:10px;transition:all .2s ease}.calendar-day.empty{background:#0000;border-color:#0000}.calendar-day.today{background:#1a1a1a;border-color:#1a1a1a}.day-number{color:#525252;font-size:14px;font-weight:600;margin-bottom:8px}.calendar-day.today .day-number{color:#fff}.day-klausuren{display:flex;flex-direction:column;gap:4px}.calendar-klausur{background:#fff;border:1px solid #e5e5e5;border-radius:8px;color:#1a1a1a;cursor:pointer;font-size:12px;font-weight:500;overflow:hidden;padding:6px 10px;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap}.calendar-klausur:hover{background:#1a1a1a;border-color:#1a1a1a;color:#fff;transform:scale(1.02)}@media (max-width:1024px){.calendar-day{min-height:80px;padding:6px}.calendar-klausur{font-size:11px;padding:3px 6px}}@media (max-width:768px){.calendar-container{padding:16px}.calendar-header h2{font-size:20px}.calendar-grid{gap:4px}.calendar-day{min-height:60px;padding:4px}.day-number{font-size:12px}.calendar-klausur{font-size:10px;padding:2px 4px}.calendar-day-name{font-size:12px;padding:8px 4px}}.dashboard{background:#f5f5f5;min-height:100vh}.dashboard-header{background:#fff;border-bottom:1px solid #f0f0f0;color:#1a1a1a;margin-bottom:16px;padding:24px 0}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.header-content h1{font-size:24px;font-weight:600;letter-spacing:-.02em;margin:0}.header-actions{align-items:center;display:flex;gap:12px}.user-info{background:#fafafa;border-radius:12px;color:#525252;font-size:14px;font-weight:500;padding:8px 16px}.dashboard-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:24px 0}.view-toggle{display:flex;gap:8px}.klausuren-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-top:24px}.klausur-card{background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 1px 3px #0000000f;cursor:pointer;padding:24px;transition:all .2s ease}.klausur-card:hover{border-color:#e5e5e5;box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}.klausur-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:16px}.klausur-header h3{color:#1a1a1a;flex:1 1;font-size:18px;font-weight:600;letter-spacing:-.01em;margin:0;word-break:break-word}.btn-sm{font-size:12px;padding:6px 12px}.klausur-info{color:#6b7280;display:flex;flex-direction:column;font-size:14px;gap:8px}.klausur-date,.klausur-shared{align-items:center;display:flex;gap:4px}.klausur-shared{color:#059669}@media (max-width:768px){.header-content h1{font-size:22px}.header-actions{justify-content:space-between;width:100%}.dashboard-controls{align-items:stretch;flex-direction:column}.view-toggle{width:100%}.view-toggle button{flex:1 1}.klausuren-list{grid-template-columns:1fr}}.markdown-editor{background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 1px 3px #0000000f;padding:32px}.editor-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:20px}.editor-header h3{color:#1a1a1a;font-size:18px;font-weight:600;letter-spacing:-.01em;margin:0}.editor-actions{display:flex;gap:8px}.markdown-textarea{background:#fafafa;border:1px solid #f0f0f0;border-radius:12px;font-family:Monaco,Menlo,Courier New,monospace;font-size:14px;line-height:1.7;min-height:300px;padding:20px;resize:vertical;transition:all .2s ease;width:100%}.markdown-textarea:focus{background:#fff;border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a0d;outline:none}.markdown-preview{background:#fafafa;border:1px solid #f0f0f0;border-radius:12px;min-height:200px;padding:24px}.markdown-preview h1{border-bottom:1px solid #f0f0f0;color:#1a1a1a;font-size:28px;font-weight:600;letter-spacing:-.02em;margin-bottom:20px;padding-bottom:12px}.markdown-preview h2{color:#1a1a1a;font-size:22px;font-weight:600;letter-spacing:-.01em;margin:28px 0 12px}.markdown-preview h3{color:#262626;font-size:18px;font-weight:600;margin:20px 0 10px}.markdown-preview p{color:#374151;line-height:1.7;margin-bottom:12px}.markdown-preview ol,.markdown-preview ul{margin:12px 0;padding-left:28px}.markdown-preview li{line-height:1.6;margin-bottom:8px}.markdown-preview code{background:#e5e7eb;border-radius:4px;font-family:Monaco,Menlo,Courier New,monospace;font-size:13px;padding:2px 6px}.markdown-preview pre{background:#1f2937;border-radius:8px;color:#f3f4f6;margin:16px 0;overflow-x:auto;padding:16px}.markdown-preview pre code{background:none;color:inherit;padding:0}.markdown-preview blockquote{border-left:4px solid #2563eb;color:#6b7280;font-style:italic;margin:16px 0;padding-left:16px}.markdown-preview a{color:#2563eb;text-decoration:none}.markdown-preview a:hover{text-decoration:underline}.markdown-preview strong{color:#111827;font-weight:600}.markdown-preview em{font-style:italic}@media (max-width:768px){.markdown-editor{padding:16px}.editor-header{align-items:flex-start;flex-direction:column;gap:12px}.editor-actions{width:100%}.editor-actions button{flex:1 1}.markdown-textarea{min-height:250px}}.share-modal h2{margin-bottom:20px}.checkbox-group{margin:16px 0}.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:8px;-webkit-user-select:none;user-select:none}.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.checkbox-group span{color:#374151;font-size:14px}.shares-list{border-top:2px solid #e5e7eb;margin-top:32px;padding-top:24px}.shares-list h3{color:#111827;font-size:18px;margin-bottom:16px}.share-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px}.share-info{flex:1 1}.share-username{color:#111827;font-weight:500;margin-bottom:4px}.share-permissions{color:#6b7280;font-size:13px}@media (max-width:768px){.share-item{align-items:flex-start;flex-direction:column;gap:12px}.share-item button{width:100%}}.klausur-detail{background:#f5f5f5;min-height:100vh}.detail-header{background:#fff;border-bottom:1px solid #f0f0f0;color:#1a1a1a;margin-bottom:32px;padding:24px 0}.header-left{flex:1 1;gap:16px}.header-info,.header-left{align-items:center;display:flex}.header-info{flex-wrap:wrap;gap:12px}.header-info h1{font-size:24px;margin:0}.klausur-date-badge{background:#fafafa;border:1px solid #f0f0f0;border-radius:12px;color:#525252;font-size:14px;font-weight:500;padding:8px 16px}.themenuebersicht-section{margin-bottom:24px}.file-manager-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.file-manager-header h2{color:#111827;margin:0}.file-actions{display:flex;flex-wrap:wrap;gap:8px}.files-list{display:flex;flex-direction:column;gap:12px}.file-item{align-items:center;background:#fafafa;border:1px solid #f0f0f0;border-radius:12px;display:flex;gap:16px;padding:20px;transition:all .2s ease}.file-item:hover{background:#fff;border-color:#e5e5e5;box-shadow:0 2px 8px #0000000a}.file-icon{flex-shrink:0;font-size:32px}.file-info{flex:1 1;min-width:0}.file-name{color:#111827;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{color:#6b7280;font-size:12px;margin-top:4px}.file-actions-btns{display:flex;flex-shrink:0;gap:8px}.info-message{background:#eff6ff;border-left:4px solid #2563eb;border-radius:8px;color:#2563eb;margin-bottom:16px;padding:12px}.modal-large{max-height:90vh;max-width:1000px}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-header h2{margin:0}@media (max-width:768px){.header-info,.header-left{align-items:flex-start;flex-direction:column}.header-info h1{font-size:20px}.file-manager-header{align-items:stretch;flex-direction:column}.file-actions{width:100%}.file-actions button,.file-actions label{flex:1 1}.file-item{flex-wrap:wrap}.file-actions-btns{justify-content:flex-end;width:100%}}.App{min-height:100vh}.container{margin:0 auto;max-width:1200px;padding:32px 24px}.card{background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 1px 3px #0000000f;margin-bottom:24px;padding:32px;transition:all .2s ease}.card:hover{box-shadow:0 4px 12px #00000014}.btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;letter-spacing:.01em;padding:12px 24px;transition:all .2s ease}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#1a1a1a;color:#fff}.btn-primary:hover:not(:disabled){background:#333;transform:translateY(-1px)}.btn-secondary{background:#f5f5f5;border:1px solid #e5e5e5;color:#1a1a1a}.btn-secondary:hover:not(:disabled){background:#ebebeb;border-color:#d4d4d4}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.btn-success{background:#10b981;color:#fff}.btn-success:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.input-group{margin-bottom:20px}.input-group label{color:#1a1a1a;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.input-group input,.input-group textarea{background:#fafafa;border:1px solid #e5e5e5;border-radius:12px;font-size:15px;padding:12px 16px;transition:all .2s ease;width:100%}.input-group input:focus,.input-group textarea:focus{background:#fff;border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a0d;outline:none}.error-message{background:#fef2f2;border-left:4px solid #dc2626;color:#dc2626}.error-message,.success-message{border-radius:8px;margin-bottom:16px;padding:12px}.success-message{background:#f0fdf4;border-left:4px solid #059669;color:#059669}.modal-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;bottom:0;display:flex;justify-content:center;left:0;padding:24px;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{animation:slideUp .3s ease;background:#fff;border:1px solid #f0f0f0;border-radius:20px;box-shadow:0 20px 60px #00000026;max-height:90vh;max-width:500px;overflow-y:auto;padding:32px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal h2{color:#1a1a1a;font-size:20px;font-weight:600;letter-spacing:-.01em;margin-bottom:24px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.loading{padding:40px}.empty-state,.loading{color:#6b7280;text-align:center}.empty-state{padding:60px 20px}.empty-state h3{color:#374151;margin-bottom:12px}@media (max-width:768px){.container{padding:12px}.card{padding:16px}.modal{padding:20px}}
/*# sourceMappingURL=main.d3d8a6a3.css.map*/