:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #000;--secondary: #fff;--gray-50: #fafafa;--gray-100: #f5f5f5;--gray-200: #e5e5e5;--gray-300: #d4d4d4;--gray-400: #a3a3a3;--gray-500: #737373;--gray-600: #525252;--gray-700: #404040;--gray-800: #262626;--gray-900: #171717;--border: #e5e5e5;--radius: 8px;--shadow: 0 1px 3px rgba(0,0,0,.1);--shadow-lg: 0 10px 40px rgba(0,0,0,.1)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;background:var(--secondary);color:var(--primary);line-height:1.6}.app-layout{min-height:100vh;display:flex;flex-direction:column}.app-content{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:2rem}.navbar{background:var(--primary);color:var(--secondary);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.nav-brand a{font-size:1.5rem;font-weight:700;color:var(--secondary);text-decoration:none}.nav-links{display:flex;gap:2rem}.nav-links a{color:var(--gray-300);text-decoration:none;font-weight:500;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--secondary)}.nav-user{display:flex;align-items:center;gap:1rem}.user-name{color:var(--gray-300)}.btn-logout{background:var(--secondary);color:var(--primary);border:none;padding:.5rem 1rem;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:transform .2s}.btn-logout:hover{transform:scale(1.05)}.btn-primary{background:var(--primary);color:var(--secondary);border:2px solid var(--primary);padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:var(--secondary);color:var(--primary)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--secondary);color:var(--primary);border:2px solid var(--primary);padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;transition:all .2s}.btn-secondary:hover{background:var(--primary);color:var(--secondary)}.btn-danger{background:var(--secondary);color:#dc2626;border:2px solid #dc2626;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:all .2s}.btn-danger:hover:not(:disabled){background:#dc2626;color:var(--secondary)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--gray-50)}.login-container{background:var(--secondary);padding:3rem;border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:2rem;margin-bottom:.5rem}.login-header p{color:var(--gray-600)}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-footer{text-align:center;margin-top:2rem;color:var(--gray-500);font-size:.875rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:2px solid var(--border);border-radius:var(--radius);font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.help-text{font-size:.875rem;color:var(--gray-500);margin-top:.25rem}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{font-size:2.5rem;margin-bottom:.5rem}.subtitle{color:var(--gray-600);font-size:1.125rem}.storage-card{background:var(--primary);color:var(--secondary);padding:2rem;border-radius:var(--radius);margin-bottom:2rem}.storage-amount{font-size:2.5rem;font-weight:700}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:3rem}.stat-card{background:var(--gray-50);padding:1.5rem;border-radius:var(--radius);text-align:center}.stat-number{font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{color:var(--gray-600);font-size:.875rem}.dashboard-section{margin-bottom:3rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.event-card{background:var(--gray-50);border:2px solid var(--border);border-radius:var(--radius);padding:1.5rem;text-decoration:none;color:var(--primary);transition:all .2s;cursor:pointer}.event-card:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-2px)}.event-icon{font-size:2.5rem;margin-bottom:1rem}.event-card h3{font-size:1.25rem;margin-bottom:.5rem}.event-type{display:inline-block;background:var(--primary);color:var(--secondary);padding:.25rem .75rem;border-radius:999px;font-size:.75rem;text-transform:uppercase;margin-bottom:1rem}.event-stats{display:flex;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--border);font-size:.875rem;color:var(--gray-600)}.stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-weight:600;color:var(--primary)}.stat-label{font-size:.75rem;color:var(--gray-500)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{font-size:2.5rem}.create-event-form{background:var(--gray-50);padding:2rem;border-radius:var(--radius);margin-bottom:2rem}.create-event-form h2{margin-bottom:1.5rem}.create-event-form form{display:flex;flex-direction:column;gap:1.5rem}.event-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.event-title{display:flex;align-items:center;gap:1rem}.event-type-badge{background:var(--primary);color:var(--secondary);padding:.5rem 1rem;border-radius:999px;font-size:.875rem;text-transform:uppercase}.event-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-box{background:var(--gray-50);padding:1.5rem;border-radius:var(--radius);text-align:center}.stat-box .stat-value{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.event-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem}.action-card{background:var(--gray-50);border:2px solid var(--border);padding:2rem;border-radius:var(--radius);text-decoration:none;color:var(--primary);transition:all .2s;text-align:center}.action-card:not(.disabled):hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-2px)}.action-card.disabled{opacity:.5;cursor:not-allowed}.action-icon{font-size:3rem;margin-bottom:1rem}.action-card h3{margin-bottom:.5rem}.action-card p{color:var(--gray-600);font-size:.875rem}.event-info{background:var(--gray-50);padding:2rem;border-radius:var(--radius)}.info-grid{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.info-item{display:flex;justify-content:space-between}.info-label{font-weight:600}.info-value{color:var(--gray-600);font-family:monospace}.upload-methods{display:flex;gap:1rem;margin-bottom:2rem}.method-btn{flex:1;padding:1rem;background:var(--gray-100);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;font-weight:600;transition:all .2s}.method-btn.active{background:var(--primary);color:var(--secondary);border-color:var(--primary)}.upload-area{margin-bottom:2rem}.dropzone{border:3px dashed var(--border);border-radius:var(--radius);padding:3rem;text-align:center;transition:all .2s;background:var(--gray-50)}.dropzone:hover{border-color:var(--primary);background:var(--secondary)}.upload-icon{font-size:4rem;margin-bottom:1rem}.dropzone-content p{margin:.5rem 0;color:var(--gray-600)}.or{color:var(--gray-400);margin:1rem 0!important}.file-select-btn{display:inline-block;background:var(--primary);color:var(--secondary);padding:.75rem 1.5rem;border-radius:var(--radius);cursor:pointer;font-weight:600;transition:transform .2s}.file-select-btn:hover{transform:scale(1.05)}.files-list{background:var(--gray-50);padding:1.5rem;border-radius:var(--radius);margin-top:1rem}.files-list h3{margin-bottom:1rem}.files{display:flex;flex-direction:column;gap:.75rem}.file-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--secondary);border:1px solid var(--border);border-radius:var(--radius)}.file-size{color:var(--gray-500);font-size:.875rem}.file-item button{background:none;border:none;color:var(--gray-500);cursor:pointer;font-size:1.25rem;padding:.25rem .5rem}.file-item button:hover{color:#dc2626}.upload-options{margin-top:1.5rem}.checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox input{width:1.25rem;height:1.25rem;cursor:pointer}.drive-upload{background:var(--gray-50);padding:2rem;border-radius:var(--radius)}.upload-actions{display:flex;justify-content:flex-end;margin-top:2rem}.upload-results{background:#dcfce7;border:2px solid #16a34a;padding:1.5rem;border-radius:var(--radius);margin-top:2rem}.upload-results h3{margin-bottom:.5rem}.result-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border)}.badge{background:var(--primary);color:var(--secondary);padding:.25rem .75rem;border-radius:999px;font-size:.75rem}.loading,.empty-state{text-align:center;padding:3rem;color:var(--gray-500)}.loading-page{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:1.5rem}@media(max-width:768px){.app-content{padding:1rem}.navbar{flex-direction:column;gap:1rem}.nav-links{flex-direction:column;gap:.5rem;text-align:center}.dashboard-header h1,.page-header h1{font-size:1.75rem}.events-grid,.event-actions{grid-template-columns:1fr}.page-header{flex-direction:column;gap:1rem}}
