@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Poppins:wght@400;500;600;700&display=swap";.App{min-height:100vh;width:100%}.page-container{min-height:100vh;padding:2rem;display:flex;flex-direction:column;align-items:center}.page-container.full-width{padding:1rem}.page-header{text-align:center;margin-bottom:3rem;animation:fadeIn .6s ease forwards}.page-header h1{margin-bottom:.5rem}.page-header .subtitle{color:hsl(var(--muted-foreground));font-size:1rem}.page-content{width:100%;max-width:900px;display:flex;flex-direction:column;gap:2rem}.page-content.full-width{max-width:100%}.section{background:var(--gradient-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid hsla(var(--border) / .5);border-radius:24px;padding:2rem;animation:fadeIn .6s ease forwards}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid hsla(var(--border) / .3)}.section-header h2{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;color:hsl(var(--foreground))}.section-header .icon{width:24px;height:24px;color:hsl(var(--accent))}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:hsl(var(--muted-foreground))}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.file-upload{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;border:2px dashed hsl(var(--border));border-radius:16px;background:hsla(var(--input) / .3);cursor:pointer;transition:all .3s ease}.file-upload:hover{border-color:hsl(var(--accent));background:hsla(var(--accent) / .1)}.file-upload input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.file-upload-icon{width:48px;height:48px;color:hsl(var(--muted-foreground));margin-bottom:1rem}.file-upload-text{text-align:center}.file-upload-text .primary{font-weight:500;color:hsl(var(--foreground))}.file-upload-text .secondary{font-size:.875rem;color:hsl(var(--muted-foreground));margin-top:.25rem}.question-list{display:flex;flex-direction:column;gap:1rem}.question-item{background:hsla(var(--muted) / .3);border:1px solid hsla(var(--border) / .5);border-radius:16px;padding:1.5rem;transition:all .3s ease;animation:slideIn .4s ease forwards;position:relative}.question-item:hover{background:hsla(var(--muted) / .4);border-color:hsla(var(--accent) / .3)}.question-item.presented{border-color:hsl(var(--info));box-shadow:0 0 20px hsla(var(--info) / .2)}.question-meta{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.question-user{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:hsl(var(--muted-foreground))}.question-user .avatar{width:32px;height:32px;border-radius:50%;background:var(--gradient-button);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.75rem;color:hsl(var(--foreground))}.question-text{font-size:1rem;color:hsl(var(--foreground));line-height:1.6;margin-bottom:1rem}.question-actions{display:flex;gap:.75rem;flex-wrap:wrap}.question-actions button{padding:.5rem 1rem;font-size:.875rem}.controls-bar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:.75rem}.filter-group label{font-size:.875rem;color:hsl(var(--muted-foreground))}.filter-group select{width:auto;min-width:150px}.filters-bar{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;background:hsla(var(--muted) / .2);border-radius:16px}.search-form{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.search-input-wrapper{position:relative;flex:1;min-width:200px}.search-input-wrapper input{width:100%}.empty-state{text-align:center;padding:3rem;color:hsl(var(--muted-foreground))}.empty-state-icon{width:64px;height:64px;margin:0 auto 1rem;opacity:.5}.empty-state-text{font-size:1.125rem}.loading{display:flex;align-items:center;justify-content:center;padding:3rem}.loading-spinner{width:40px;height:40px;border:3px solid hsla(var(--accent) / .2);border-top-color:hsl(var(--accent));border-radius:50%;animation:spin 1s linear infinite}.presentation-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.presentation-card{background:var(--gradient-card);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid hsla(var(--border) / .3);border-radius:32px;padding:4rem;max-width:1000px;width:100%;box-shadow:var(--shadow-lg),var(--shadow-glow);animation:fadeIn .8s ease forwards}.presentation-question{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:600;color:hsl(var(--foreground));line-height:1.4;margin-bottom:2rem}.presentation-author{font-size:1.25rem;color:hsl(var(--accent))}.presentation-empty{font-size:1.5rem;color:hsl(var(--muted-foreground))}.reference-badge{display:inline-flex;align-items:center;gap:.5rem;background:hsla(var(--accent) / .15);border:1px solid hsla(var(--accent) / .3);border-radius:50px;padding:.5rem 1rem;font-family:Inter,monospace;font-size:.875rem;color:hsl(var(--accent))}.user-list{display:flex;flex-direction:column;gap:1rem}.user-item{background:hsla(var(--muted) / .3);border:1px solid hsla(var(--border) / .5);border-radius:16px;padding:1.5rem;transition:all .3s ease;animation:slideIn .4s ease forwards;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.user-item:hover{background:hsla(var(--muted) / .4);border-color:hsla(var(--accent) / .3)}.user-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:300px}.user-avatar{width:50px;height:50px;border-radius:50%;background:var(--gradient-button);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.25rem;color:hsl(var(--foreground));flex-shrink:0}.user-details{display:flex;flex-direction:column;gap:.25rem}.user-details h3{margin:0;font-size:1.125rem;color:hsl(var(--foreground))}.user-reference,.user-designation,.user-company{font-size:.875rem;color:hsl(var(--muted-foreground));margin:0}.user-date{font-size:.75rem;color:hsl(var(--muted-foreground));margin:0}.user-actions{display:flex;gap:.75rem;flex-wrap:wrap}.pagination{display:flex;align-items:center;justify-content:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid hsla(var(--border) / .3)}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:12px;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s ease;border:none;background:var(--gradient-button);color:#fff;box-shadow:var(--shadow-sm)}button.secondary{background:hsla(var(--muted) / .5);color:hsl(var(--foreground));border:1px solid hsla(var(--border) / .5)}button.danger{background:hsl(var(--error));color:#fff}button:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}button.secondary:hover{background:hsla(var(--muted) / .7)}button.danger:hover{background:hsl(var(--error-dark))}input,select,textarea{padding:.75rem 1rem;border-radius:12px;border:1px solid hsla(var(--border) / .5);background:hsla(var(--input) / .5);color:hsl(var(--foreground));font-family:inherit;font-size:.875rem;transition:all .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:hsl(var(--accent));box-shadow:0 0 0 3px hsla(var(--accent) / .3)}@media (max-width: 768px){.page-container{padding:1rem;padding-top:60px}}@media (max-width: 480px){.page-container{padding-top:70px}}@media (max-width: 768px){.section{padding:1.5rem;border-radius:20px}.presentation-card{padding:2rem;border-radius:24px}.presentation-question{font-size:1.5rem}h1{font-size:1.75rem}.controls-bar{flex-direction:column;align-items:stretch}.user-info{min-width:auto}.user-item{flex-direction:column;align-items:flex-start}.user-actions{width:100%;justify-content:flex-end}.search-form,.filter-group{flex-direction:column;align-items:stretch}.filter-group select,.filter-group input[type=date]{min-width:auto}}.table-container{overflow-x:auto;border-radius:16px;margin-top:1rem}.users-table{width:100%;border-collapse:collapse;background:hsla(var(--muted) / .1)}.users-table th{background:hsla(var(--accent) / .1);padding:1rem;text-align:left;font-weight:600;color:hsl(var(--foreground));border-bottom:1px solid hsla(var(--border) / .5)}.users-table td{padding:1rem;border-bottom:1px solid hsla(var(--border) / .3);color:hsl(var(--foreground))}.users-table tr:last-child td{border-bottom:none}.users-table tr:hover td{background:hsla(var(--muted) / .2)}.user-cell{display:flex;align-items:center;gap:.75rem}.user-avatar-table{width:36px;height:36px;border-radius:50%;background:var(--gradient-button);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:hsl(var(--foreground));flex-shrink:0}.users-table th:first-child,.users-table td:first-child{border-top-left-radius:16px;border-bottom-left-radius:16px}.users-table th:last-child,.users-table td:last-child{border-top-right-radius:16px;border-bottom-right-radius:16px}button.small,a.secondary.small{padding:.5rem 1rem;font-size:.875rem;border-radius:8px}@media (max-width: 768px){.table-container{font-size:.875rem}.users-table th,.users-table td{padding:.75rem .5rem}.user-cell{gap:.5rem}.user-avatar-table{width:28px;height:28px;font-size:.75rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:hsl(var(--card));border-radius:24px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem 1rem;border-bottom:1px solid hsla(var(--border) / .3)}.modal-header h2{margin:0;font-size:1.5rem;color:hsl(var(--foreground))}.modal-close{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:8px;transition:background .2s}.modal-close:hover{background:hsla(var(--muted) / .5)}.modal-close svg{width:24px;height:24px;color:hsl(var(--muted-foreground))}.modal-form{padding:1.5rem 2rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.form-group{margin-bottom:0}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid hsla(var(--border) / .3)}@media (max-width: 768px){.modal-content{margin:1rem}.form-grid{grid-template-columns:1fr;gap:1rem}.modal-header,.modal-form{padding:1rem}}.toast{position:fixed;top:20px;right:20px;z-index:9999;min-width:300px;max-width:400px;padding:12px 16px;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:space-between;transform:translate(120%);transition:transform .3s ease-in-out;font-family:inherit;font-size:.875rem;line-height:1.4;opacity:0}.toast.show{transform:translate(0);opacity:1}.toast.success{background-color:hsl(var(--success));color:#fff;border:1px solid hsl(var(--success))}.toast.error{background-color:hsl(var(--error));color:#fff;border:1px solid hsl(var(--error))}.toast-content{display:flex;align-items:flex-start;gap:10px;flex:1}.toast-icon{flex-shrink:0;margin-top:2px}.toast-message{flex:1;font-weight:500}.toast-close{background:none;border:none;color:inherit;cursor:pointer;padding:4px;margin-left:8px;border-radius:4px;opacity:.8;transition:opacity .2s}.toast-close:hover{opacity:1;background:#fff3}@media (max-width: 768px){.toast{min-width:250px;max-width:calc(100vw - 40px);right:20px;left:20px;margin:0 auto}}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:1rem}.login-container{background:#fff;border-radius:10px;box-shadow:0 15px 35px #0000001a;padding:2.5rem;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{color:#333;font-size:2rem;margin-bottom:.5rem}.login-header p{color:#666;font-size:1rem}.alert{padding:.75rem 1rem;border-radius:5px;margin-bottom:1rem}.alert-error{background-color:#fee;border:1px solid #fcc;color:#c33}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:5px;font-size:1rem;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.login-button{width:100%;padding:.75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:500;cursor:pointer;transition:transform .2s}.login-button:hover:not(:disabled){transform:translateY(-2px)}.login-button:disabled{opacity:.7;cursor:not-allowed}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid #eee}.login-footer p{color:#666;font-size:.9rem;margin-bottom:.5rem}.login-footer ul{list-style-type:none;padding:0;margin:0}.login-footer li{color:#444;font-size:.8rem;margin-bottom:.25rem}.action-dropdown{position:absolute;top:100%;right:0;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;min-width:120px;z-index:100;display:none;flex-direction:column;margin-top:.25rem}.action-dropdown.show{display:flex}.action-dropdown button{padding:.75rem 1rem;background:none;border:none;text-align:left;cursor:pointer;color:hsl(var(--foreground));display:flex;align-items:center;font-size:.875rem;width:100%}.action-dropdown button:hover{background:hsla(var(--muted) / .5)}.action-dropdown button.danger:hover{background:hsla(var(--destructive) / .1)}.action-dropdown svg{width:16px;height:16px;margin-right:8px}.action-button{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;width:32px;height:32px}.action-button:hover{background:hsla(var(--muted) / .5)}.print-button{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:6px;width:32px;height:32px;color:#10b981}.print-button:hover{background-color:#10b9811a}:root{--accent: 175 70% 50%;--accent-light: 175 70% 70%;--accent-dark: 175 70% 30%;--accent-foreground: 0 0% 100%;--gradient-main: linear-gradient(135deg, hsl(215 100% 12%) 0%, hsl(195 80% 25%) 50%, hsl(175 50% 30%) 100%);--gradient-card: linear-gradient(145deg, hsla(210 100% 20% / .8) 0%, hsla(195 80% 25% / .6) 100%);--gradient-button: linear-gradient(135deg, hsl(175 70% 45%) 0%, hsl(195 80% 45%) 100%);--gradient-button-hover: linear-gradient(135deg, hsl(175 70% 50%) 0%, hsl(195 80% 50%) 100%);--primary: 175 70% 50%;--primary-foreground: 0 0% 100%;--background: 215 100% 8%;--foreground: 0 0% 98%;--card: 210 80% 15%;--card-foreground: 0 0% 98%;--muted: 210 50% 25%;--muted-foreground: 210 20% 70%;--border: 210 50% 30%;--input: 210 50% 20%;--success: 160 70% 45%;--warning: 45 90% 55%;--error: 0 70% 55%;--info: 200 80% 55%;--shadow-sm: 0 2px 8px hsla(215 100% 5% / .3);--shadow-md: 0 4px 20px hsla(215 100% 5% / .4);--shadow-lg: 0 8px 40px hsla(215 100% 5% / .5);--shadow-glow: 0 0 30px hsla(175 70% 45% / .3);font-family:Inter,system-ui,sans-serif;line-height:1.6;font-weight:400;color-scheme:dark;color:hsl(var(--foreground));background:var(--gradient-main);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background:var(--gradient-main);background-attachment:fixed}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:Poppins,sans-serif;font-weight:600;color:hsl(var(--foreground));letter-spacing:-.02em}h1{font-size:2.5rem;background:linear-gradient(135deg,#fff,hsl(var(--accent-light)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}h2{font-size:1.5rem;color:hsl(var(--muted-foreground))}a{color:hsl(var(--accent));text-decoration:none;transition:color .3s ease}a:hover{color:hsl(var(--accent-light))}button{border-radius:12px;border:none;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;font-family:Inter,sans-serif;background:var(--gradient-button);color:hsl(var(--foreground));cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-sm),var(--shadow-glow)}button:hover{background:var(--gradient-button-hover);transform:translateY(-2px);box-shadow:var(--shadow-md),var(--shadow-glow)}button:active{transform:translateY(0)}button:disabled{opacity:.6;cursor:not-allowed;transform:none}button.secondary{background:hsla(var(--muted) / .5);border:1px solid hsl(var(--border));box-shadow:none}button.secondary:hover{background:hsla(var(--muted) / .7);box-shadow:var(--shadow-sm)}button.danger{background:linear-gradient(135deg,hsl(var(--error)),#b82e2e)}button.success{background:linear-gradient(135deg,hsl(var(--success)),#29a366)}input,textarea,select{background:hsla(var(--input) / .6);border:1px solid hsl(var(--border));border-radius:12px;padding:.875rem 1rem;font-size:.95rem;font-family:Inter,sans-serif;color:hsl(var(--foreground));transition:all .3s ease;width:100%}input:focus,textarea:focus,select:focus{outline:none;border-color:hsl(var(--accent));box-shadow:0 0 0 3px hsla(var(--accent) / .2)}input::placeholder,textarea::placeholder{color:hsl(var(--muted-foreground))}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:1rem;padding-right:2.5rem}.card{background:var(--gradient-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid hsla(var(--border) / .5);border-radius:20px;padding:2rem;box-shadow:var(--shadow-md);transition:all .3s ease}.card:hover{box-shadow:var(--shadow-lg);border-color:hsla(var(--accent) / .3)}.badge{display:inline-flex;align-items:center;padding:.35rem .85rem;border-radius:50px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge.pending{background:hsla(var(--warning) / .2);color:hsl(var(--warning));border:1px solid hsla(var(--warning) / .3)}.badge.approved{background:hsla(var(--success) / .2);color:hsl(var(--success));border:1px solid hsla(var(--success) / .3)}.badge.rejected{background:hsla(var(--error) / .2);color:hsl(var(--error));border:1px solid hsla(var(--error) / .3)}.badge.presented{background:hsla(var(--info) / .2);color:hsl(var(--info));border:1px solid hsla(var(--info) / .3)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.animate-fade-in{animation:fadeIn .5s ease forwards}.animate-slide-in{animation:slideIn .5s ease forwards}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:hsla(var(--muted) / .3);border-radius:10px}::-webkit-scrollbar-thumb{background:hsl(var(--muted));border-radius:10px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--accent))}.container{max-width:1200px;margin:0 auto;padding:2rem}.glass{background:hsla(var(--card) / .4);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid hsla(var(--border) / .3)}
