@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;700&display=swap";: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}}html,body{margin:0;padding:0;height:100%;background-color:#fff;font-family:Nunito,sans-serif;overflow-x:hidden}#root{height:calc(100vh - 40px);width:calc(100vw - 40px);background-color:#001f3f;border:4px solid white;border-radius:16px;box-shadow:0 0 30px #00000040;margin:20px;box-sizing:border-box;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden}.app-container{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:60px 20px 20px;box-sizing:border-box;overflow-y:auto;overflow-x:hidden}.title{text-align:center;margin-bottom:30px;font-size:24px}.logout-button{position:fixed;top:30px;right:30px;padding:.4rem .8rem;background-color:#3f556c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;z-index:1000;font-size:14px}.logout-button:hover{background-color:#59636e}.homepage-btn{position:fixed;top:30px;left:30px;padding:.4rem .8rem;background-color:#3f556c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;z-index:1000;font-size:14px}.homepage-btn:hover{background-color:#59636e}.programme-list{display:flex;flex-direction:column;gap:20px;align-items:center}.programme-box{border:1px solid #ccc;background-color:#fff;color:#000;padding:20px;border-radius:10px;width:300px;text-align:center;box-shadow:0 2px 10px #0000001a}.login-container{max-width:400px;margin:100px auto;text-align:center;padding:30px;border-radius:10px;color:#fff}.auth-toggle{display:flex;margin-bottom:20px;border-radius:6px;overflow:hidden;border:1px solid #3f556c}.toggle-btn{flex:1;padding:10px 20px;background-color:transparent;color:#b8c5d1;border:none;cursor:pointer;font-size:14px;transition:all .3s ease}.toggle-btn.active{background-color:#3f556c;color:#fff}.toggle-btn:hover:not(.active){background-color:#2a3a4a;color:#fff}.role-select{display:block;width:100%;padding:8px;margin:10px 0;font-size:14px;background-color:#fff;color:#001020;border:1px solid #ccc;border-radius:4px}.login-container input{display:block;width:100%;padding:8px;margin:10px 0;font-size:14px}.login-container button{padding:10px 20px;font-size:14px;background-color:#001020;color:#fff;border:none;border-radius:6px;cursor:pointer}.login-container button:hover{background-color:#0059b3}.error{color:#ff4d4d;margin-top:10px}.signup-info{margin-top:15px;padding:10px;background-color:#ffffff1a;border-radius:6px;border:1px solid rgba(255,255,255,.2)}.signup-info p{color:#b8c5d1;font-size:14px;margin:0;line-height:1.4}.approval-info{margin-top:20px;padding:15px;background-color:#ffc1071a;border-radius:8px;border:1px solid rgba(255,193,7,.3)}.approval-info p{color:#ffc107;font-size:14px;margin:0;line-height:1.4}.admin-container{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;max-width:1000px;color:#fff;padding:0 20px;box-sizing:border-box}.admin-content{text-align:center;width:100%;max-width:800px;padding:20px 0}.admin-content h1{font-size:clamp(2rem,5vw,3rem);font-weight:700;margin-bottom:1rem;color:#fff}.admin-content p{font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:2rem;color:#b8c5d1}.pending-users{text-align:left;margin-top:2rem}.pending-users h2{font-size:1.5rem;margin-bottom:1.5rem;color:#fff}.user-card{background-color:#ffffff1a;border-radius:12px;padding:1.5rem;margin-bottom:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);display:flex;justify-content:space-between;align-items:center;gap:1rem}.user-info h3{margin:0 0 .5rem;color:#fff;font-size:1.1rem}.user-info p{margin:.25rem 0;color:#b8c5d1;font-size:.9rem}.user-actions{display:flex;gap:.5rem;flex-shrink:0}.approve-btn{background-color:#4caf50;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s ease}.approve-btn:hover{background-color:#45a049}.reject-btn{background-color:#f44336;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s ease}.reject-btn:hover{background-color:#da190b}.no-pending{background-color:#ffffff1a;border-radius:12px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);margin-top:2rem}.no-pending p{color:#b8c5d1;font-size:1.1rem;margin:0}.admin-btn:hover{background-color:#e55a2b!important;transform:translateY(-2px);box-shadow:0 4px 12px #ff6b354d}.debrief-title{font-family:Nunito,sans-serif;font-size:clamp(3rem,8vw,6rem);text-transform:lowercase;color:#fff;text-align:center;margin-bottom:20px;line-height:1.1}.homepage-container{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;max-width:800px;color:#fff;padding:0 20px;box-sizing:border-box}.homepage-content{text-align:center;width:100%;max-width:600px;padding:20px 0}.homepage-title{font-size:clamp(2rem,5vw,3rem);font-weight:700;margin-bottom:1rem;color:#fff}.homepage-subtitle{font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:2rem;color:#b8c5d1}.homepage-actions{margin-bottom:3rem}.summer-programme-btn{background-color:#557291;color:#fff;border:none;border-radius:8px;padding:15px 30px;font-size:clamp(1rem,2.5vw,1.1rem);font-weight:600;cursor:pointer;transition:background-color .3s ease;box-shadow:0 4px 12px #0059b34d}.summer-programme-btn:hover{background-color:#4075a7;transform:translateY(-2px);box-shadow:0 6px 16px #0059b366}.homepage-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem;width:100%}.feature-card{background-color:#ffffff1a;border-radius:12px;padding:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0003}.feature-card h3{font-size:clamp(1.1rem,2.5vw,1.3rem);font-weight:600;margin-bottom:1rem;color:#fff}.feature-card p{color:#b8c5d1;line-height:1.6;font-size:clamp(.9rem,2vw,1rem)}h1,.current_date{color:#fff}@media (max-width: 768px){#root{height:calc(100vh - 20px);width:calc(100vw - 20px);margin:10px}.app-container{padding:50px 10px 10px}.logout-button{top:20px;right:20px;padding:.3rem .6rem;font-size:12px}.homepage-btn{top:20px;left:20px;padding:.3rem .6rem;font-size:12px}.homepage-features{grid-template-columns:1fr;gap:1rem}.feature-card{padding:1rem}.homepage-btn{padding:6px 12px;font-size:12px}}@media (max-width: 480px){#root{height:100vh;width:100vw;margin:0;border-radius:0}.app-container{padding:50px 5px 5px}.logout-button{top:15px;right:15px;padding:.25rem .5rem;font-size:11px}.homepage-btn{top:15px;left:15px;padding:.25rem .5rem;font-size:11px}}
