a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{border:0;font-size:100%;font:inherit;margin:0;padding:0;vertical-align:initial}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body,html{height:100%;width:100%}#root{display:flex;flex-direction:column;min-height:100%}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fafafa;color:#333;font-family:Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1}a{color:inherit;text-decoration:none}button{cursor:pointer}.container{padding:0 2rem}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:1rem}p{line-height:1.6;margin-bottom:1rem}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.text-center{text-align:center}.text-primary{color:#2e7d32}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mt-5{margin-top:3rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mb-5{margin-bottom:3rem}.py-1{padding-bottom:.5rem;padding-top:.5rem}.py-2{padding-bottom:1rem;padding-top:1rem}.py-3{padding-bottom:1.5rem;padding-top:1.5rem}.py-4{padding-bottom:2rem;padding-top:2rem}.py-5{padding-bottom:3rem;padding-top:3rem}.px-1{padding-left:.5rem;padding-right:.5rem}.px-2{padding-left:1rem;padding-right:1rem}.px-3{padding-left:1.5rem;padding-right:1.5rem}.px-4{padding-left:2rem;padding-right:2rem}.px-5{padding-left:3rem;padding-right:3rem}.fade-in{animation:fadeIn .5s ease-in}@media (max-width:768px){.container{padding:0 1rem}}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.navbar{background-color:#fff;box-shadow:0 4px 20px #00000014;padding:1rem 0;position:sticky;top:0;transition:all .3s ease;z-index:1000}.navbar-container{justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{color:#2e7d32;font-size:1.5rem;font-weight:700;text-decoration:none;transition:transform .3s ease}.navbar-logo:hover{transform:scale(1.05)}.logo-text{margin-right:.5rem}.logo-icon{font-size:1.5rem}.nav-menu{display:flex;gap:2rem}.nav-link{color:#333;font-weight:500;padding:.5rem 0;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:hover{color:#2e7d32}.nav-link:after{background-color:#2e7d32;bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-link:hover:after{width:100%}.auth-buttons{align-items:center;display:flex;gap:1rem}.login-btn,.signup-btn{border:none;border-radius:8px;box-shadow:0 2px 10px #0000001a;cursor:pointer;font-size:.95rem;font-weight:600;letter-spacing:.3px;outline:none;padding:.6rem 1.4rem;text-decoration:none;transition:all .3s ease}.login-btn:hover{box-shadow:0 4px 12px #2e7d3233}.signup-btn{background-color:#2e7d32;color:#fff}.signup-btn:hover{background-color:#1b5e20;box-shadow:0 4px 12px #1b5e204d;transform:translateY(-2px)}.user-profile-menu{align-items:center;display:flex;gap:1rem}.profile-link{align-items:center;border-radius:30px;color:#333;display:flex;gap:.5rem;padding:.4rem .8rem;position:relative;text-decoration:none;transition:all .3s ease}.profile-link:hover{background-color:#2e7d320d;color:#2e7d32}.profile-image{border:2px solid #2e7d32;border-radius:50%;box-shadow:0 2px 8px #0000001a;height:38px;object-fit:cover;transition:all .3s ease;width:38px}.profile-link:hover .profile-image{box-shadow:0 4px 12px #2e7d3233;transform:scale(1.05)}.profile-info{display:flex;flex-direction:column}.profile-name{font-weight:600}.user-type-badge{background-color:#a5d6a7;border-radius:10px;color:#1b5e20;font-size:.7rem;font-weight:600;letter-spacing:.5px;margin-top:.2rem;padding:.1rem .5rem;white-space:nowrap;width:fit-content}@media (max-width:900px){.navbar-container{flex-direction:column;padding:1rem}.nav-menu,.navbar-logo{margin-bottom:1rem}.nav-menu{flex-wrap:wrap;gap:1rem;justify-content:center}.auth-buttons{justify-content:center;width:100%}}@media (max-width:600px){.auth-buttons,.nav-menu{align-items:center;flex-direction:column;gap:.5rem}.login-btn,.signup-btn{text-align:center;width:100%}.user-profile-menu{flex-direction:column}}.login-btn{align-items:center;background-color:initial;border:2px solid #2e7d32;border-radius:8px;box-shadow:0 2px 10px #0000000d;color:#2e7d32;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;justify-content:center;letter-spacing:.3px;outline:none;padding:.6rem 1.4rem;transition:all .3s ease}.login-btn:hover{background-color:#2e7d3214;box-shadow:0 4px 12px #2e7d3226;transform:translateY(-2px)}.login-btn:active{box-shadow:0 2px 8px #2e7d321a;transform:translateY(0)}.username-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}.username-modal{animation:modal-appear .3s ease-out;background-color:#fff;border-radius:12px;box-shadow:0 8px 30px #0003;max-width:500px;overflow:hidden;width:100%}.username-modal-content{padding:2rem}.username-modal-content h2{color:#2e7d32;font-size:1.8rem;margin:0 0 .5rem}.username-modal-content p{color:#555;margin-bottom:2rem}.username-input-group{margin-bottom:1.5rem}.username-input-group label{color:#333;display:block;font-weight:500;margin-bottom:.5rem}.username-input-group input{border:1px solid #ddd;border-radius:6px;font-size:1rem;outline:none;padding:.8rem;transition:all .3s ease;width:100%}.username-input-group input:focus{border-color:#2e7d32;box-shadow:0 0 0 2px #2e7d321a}.username-error{color:#e53935;font-size:.85rem;margin-bottom:0;margin-top:.5rem}.username-submit-btn{background-color:#2e7d32;border:none;border-radius:6px;box-shadow:0 2px 10px #2e7d3226;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.username-submit-btn:hover{background-color:#1b5e20;box-shadow:0 4px 15px #2e7d3240;transform:translateY(-2px)}.username-submit-btn:active{transform:translateY(0)}.username-submit-btn:disabled{background-color:#a5d6a7;box-shadow:none;cursor:not-allowed;transform:none}.usertype-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}.usertype-modal{animation:modal-appear .3s ease-out;background-color:#fff;border-radius:12px;box-shadow:0 8px 30px #0003;max-width:600px;overflow:hidden;width:100%}@keyframes modal-appear{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.usertype-modal-content{padding:2rem}.usertype-modal-content h2{color:#2e7d32;font-size:1.8rem;margin:0 0 .5rem}.usertype-modal-content>p{color:#555;margin-bottom:2rem}.usertype-options{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.usertype-option{align-items:center;background-color:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;padding:1.2rem;position:relative;transition:all .3s ease}.usertype-option:hover{border-color:#a5d6a7;box-shadow:0 4px 12px #0000000d;transform:translateY(-2px)}.usertype-option.selected{background-color:#2e7d320d;border-color:#2e7d32}.usertype-icon{align-items:center;display:flex;font-size:2rem;height:50px;justify-content:center;margin-right:1rem;width:50px}.usertype-details{flex:1 1}.usertype-details h3{color:#333;margin:0 0 .3rem}.usertype-details p{color:#666;font-size:.9rem;margin:0}.usertype-radio{margin-left:1rem}.radio-outer{align-items:center;border:2px solid #999;border-radius:50%;display:flex;height:20px;justify-content:center;transition:all .2s ease;width:20px}.usertype-option.selected .radio-outer{border-color:#2e7d32}.radio-inner{background-color:#2e7d32;border-radius:50%;height:10px;width:10px}.usertype-error{color:#e53935;font-size:.85rem;margin-bottom:1rem;margin-top:.5rem}.usertype-submit-btn{background-color:#2e7d32;border:none;border-radius:6px;box-shadow:0 2px 10px #2e7d3226;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.usertype-submit-btn:hover{background-color:#1b5e20;box-shadow:0 4px 15px #2e7d3240;transform:translateY(-2px)}.usertype-submit-btn:active{transform:translateY(0)}.usertype-submit-btn:disabled{background-color:#a5d6a7;box-shadow:none;cursor:not-allowed;transform:none}@media (max-width:600px){.usertype-modal{margin:0 1rem;max-width:90%}.usertype-option{flex-direction:column;text-align:center}.usertype-icon{margin-bottom:.5rem;margin-right:0}.usertype-radio{margin-left:0;position:absolute;right:1rem;top:1rem}}.chatbot-container{bottom:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;left:20px;position:fixed;z-index:1000}.chatbot-toggle{align-items:center;background:linear-gradient(135deg,#4285f4,#0f9d58);border:none;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;transition:all .2s ease;width:60px}.chatbot-toggle:hover{box-shadow:0 6px 16px #0003;transform:scale(1.05)}.chatbot-toggle-icon{align-items:center;display:flex;justify-content:center}.chatbot-window{animation:slide-up .3s ease;background-color:#fff;border-radius:16px;box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;height:500px;overflow:hidden;width:350px}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chatbot-header{align-items:center;background:linear-gradient(135deg,#4285f4,#0f9d58);color:#fff;display:flex;justify-content:space-between;padding:16px}.chatbot-header h3{font-size:18px;font-weight:500;margin:0}.close-button{align-items:center;background:#0000;border:none;color:#fff;cursor:pointer;display:flex;justify-content:center;transition:transform .2s ease}.close-button:hover{transform:scale(1.1)}.chatbot-messages{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px}.message{word-wrap:break-word;animation:fade-in .3s ease;border-radius:18px;line-height:1.4;max-width:80%;padding:12px 16px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.user-message{align-self:flex-end;background-color:#e3f2fd;border:1px solid #bbdefb;border-bottom-right-radius:4px;color:#0d47a1}.system-message{align-self:flex-start;background-color:#f1f3f4;border-bottom-left-radius:4px;color:#202124}.loading{padding:12px}.typing-indicator{align-items:center;display:flex;gap:5px}.typing-indicator span{animation:bounce 1.3s ease infinite;background-color:#9aa0a6;border-radius:50%;display:inline-block;height:8px;width:8px}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}.chatbot-input{background-color:#fff;border-top:1px solid #e0e0e0;display:flex;padding:12px}.chatbot-input input{border:1px solid #e0e0e0;border-radius:24px;flex:1 1;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s ease}.chatbot-input input:focus{border-color:#4285f4}.chatbot-input button{align-items:center;background-color:#4285f4;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;margin-left:8px;transition:background-color .2s ease;width:40px}.chatbot-input button:hover:not(:disabled){background-color:#3367d6}.chatbot-input button:disabled{background-color:#9aa0a6;cursor:not-allowed}@media (max-width:480px){.chatbot-window{height:60vh;max-height:500px;width:calc(100vw - 40px)}}.home-page{overflow-x:hidden;width:100%}.hero-section{background-position:50%;background-repeat:no-repeat;background-size:cover;min-height:80vh}.hero-container{flex-direction:row;gap:60px;max-width:1400px}.hero-content{max-width:600px}.hero-buttons{display:flex;flex-wrap:wrap;gap:1.2rem;justify-content:flex-start;margin-top:2rem}.primary-btn,.secondary-btn{align-items:center;border-radius:9999px;box-shadow:0 5px 15px #0000004d;display:inline-flex;font-size:1.1rem;justify-content:center;letter-spacing:.5px;line-height:1;min-height:52px;overflow:hidden;padding:0 2.5rem;position:relative;text-align:center;width:auto;z-index:1}.primary-btn{background-color:#fff;color:#1b5e20}.primary-btn:hover{background-color:#f5f5f5;box-shadow:0 8px 20px #0006;transform:translateY(-3px)}.secondary-btn{background-color:#ffffff26;border:2px solid #fff;color:#fff}.secondary-btn:hover{background-color:#ffffff40;box-shadow:0 8px 20px #0000004d;transform:translateY(-3px)}.primary-btn:after,.secondary-btn:after{background-color:#ffffff1a;content:"";height:100%;left:0;position:absolute;top:0;transform:scaleX(0);transform-origin:right;transition:transform .5s ease;width:100%;z-index:-1}.primary-btn:hover:after,.secondary-btn:hover:after{transform:scaleX(1);transform-origin:left}.hero-image{height:400px;width:600px}.brief-description{margin:0 auto;max-width:1200px;padding:5rem 2rem;text-align:center}.description-content h2{color:#1b5e20;font-size:2.5rem;margin-bottom:3rem;position:relative}.description-content h2:after{background-color:#2e7d32;bottom:-15px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.description-items{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between}.description-item{background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a;flex:1 1;min-width:200px;padding:2rem;transition:transform .3s ease}.description-item:hover{transform:translateY(-10px)}.description-item h3{color:#2e7d32;font-size:1.3rem;margin-bottom:1rem}.description-item p{color:#555;line-height:1.5}.statistics-section{background-color:#f5f7f5;padding:5rem 2rem;text-align:center}.statistics-content{margin:0 auto;max-width:1200px}.statistics-content h2{color:#1b5e20;font-size:2.5rem;margin-bottom:3rem;position:relative}.statistics-content h2:after{background-color:#2e7d32;bottom:-15px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.statistics-items{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between}.statistics-item{background-color:#fff;border-radius:12px;box-shadow:0 8px 20px #00000014;flex:1 1;min-width:250px;overflow:hidden;padding:2.5rem 2rem;position:relative;transition:all .3s ease}.statistics-item:hover{box-shadow:0 12px 30px #0000001f;transform:translateY(-10px)}.statistics-item h3{color:#2e7d32;font-size:3rem;font-weight:700;margin-bottom:1rem}.statistics-item p{color:#555;font-size:1.1rem;line-height:1.6}.statistics-item.highlight{background:linear-gradient(135deg,#2e7d32,#1b5e20)}.statistics-item.highlight h3{color:#fff}.statistics-item.highlight p{color:#ffffffe6}.cta-section{background-color:#f9f9f9}.cta-content h2{color:#1b5e20;font-size:2.5rem;margin-bottom:2rem}.cta-button{align-items:center;background-color:#2e7d32;border:none;border-radius:9999px;box-shadow:0 5px 15px #0003;color:#fff;cursor:pointer;display:inline-flex;justify-content:center;letter-spacing:.5px;line-height:1;min-height:52px;overflow:hidden;padding:0 2.5rem;position:relative;text-align:center;width:auto;z-index:1}.cta-button:hover{background-color:#1b5e20;box-shadow:0 8px 20px #0000004d}@media (max-width:1200px){.hero-image{height:350px;max-width:500px;width:90%}}@media (max-width:968px){.hero-container{flex-direction:column;gap:40px;text-align:center}.hero-content{max-width:100%;text-align:center}.hero-buttons{justify-content:center}.hero-image{margin-top:2rem;max-width:500px;width:90%}.description-items{align-items:center;flex-direction:column}.description-item{max-width:350px;width:100%}.statistics-items{align-items:center;flex-direction:column}.statistics-item{max-width:500px;width:100%}}@media (max-width:480px){.hero-section{padding:60px 20px}.hero-content h1{font-size:2.2rem}.hero-image{height:250px}.hero-buttons{flex-direction:column;gap:1rem;margin-bottom:2rem}.cta-button,.primary-btn,.secondary-btn{height:52px;padding:0;width:100%}.brief-description{padding:3rem 1rem}.description-content h2{font-size:2rem}.cta-section{padding:3rem 1rem}.cta-content h2{font-size:2rem}.statistics-section{padding:3rem 1rem}.statistics-content h2{font-size:1.8rem}.statistics-item h3{font-size:2.5rem}}.about-page{max-width:100%;overflow-x:hidden}.about-hero{background-image:linear-gradient(#00000080,#00000080),url(/static/media/backdrop_fruit.0fe178dda4000cfc512c.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;margin-bottom:40px;padding:120px 0;position:relative;text-align:center}.about-hero h1{font-size:3rem;margin-bottom:15px}.about-hero h1,.about-subtitle{color:#fff;position:relative;z-index:1}.about-subtitle{font-size:1.2rem;margin:0 auto;max-width:600px}.container{margin:0 auto;max-width:1200px;padding:0 20px}.about-how-it-works,.about-impact,.about-join,.about-mission,.about-sdg,.about-security,.about-team{padding:60px 0}.about-mission{background-color:#fff}.about-how-it-works{background-color:#f8f9fa}.about-impact{background-color:#fff}.about-team{background-color:#f8f9fa}.about-join{background-color:#e3f2fd;text-align:center}.about-sdg{background-color:#e8f5e9}.about-security{background-color:#fff}section h2{color:#2c3e50;font-size:2.2rem;margin-bottom:25px;text-align:center}section p{color:#34495e;font-size:1.1rem;line-height:1.6;margin-bottom:20px}.sdg-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin:30px 0}.sdg-item{background-color:#fff;border-radius:10px;box-shadow:0 4px 12px #0000001a;flex:1 1;margin-bottom:20px;max-width:280px;min-width:250px;overflow:hidden;padding:25px;position:relative;text-align:center}.sdg-number{align-items:center;background-color:#e5243b;border-radius:50%;color:#fff;display:flex;font-size:2.5rem;font-weight:700;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.sdg-item:nth-child(2) .sdg-number{background-color:#dda63a}.sdg-item:nth-child(3) .sdg-number{background-color:#4c9f38}.sdg-item:nth-child(4) .sdg-number{background-color:#f99d26}.sdg-item:nth-child(5) .sdg-number{background-color:#cf8d2a}.sdg-item:nth-child(6) .sdg-number{background-color:#48773e}.sdg-item:nth-child(7) .sdg-number{background-color:#183668}.sdg-item h3{color:#2c3e50;font-size:1.3rem;margin-bottom:15px}.sdg-commitment{font-style:italic;margin:10px auto;max-width:800px;text-align:center}.security-content{align-items:flex-start;background-color:#f8f9fa;border-radius:10px;box-shadow:0 2px 10px #0000000d;display:flex;gap:30px;padding:20px}.security-icon{align-items:center;background-color:#3498db1a;border-radius:50%;color:#2c3e50;display:flex;flex-shrink:0;font-size:4rem;height:100px;justify-content:center;padding:20px;width:100px}.security-info{flex:1 1}.security-features{margin:15px 0;padding-left:20px}.security-features li{color:#2c3e50;font-size:1.05rem;margin-bottom:10px;padding-left:10px;position:relative}.security-features li:before{color:#3498db;content:"•";display:inline-block;font-weight:700;margin-left:-1em;width:1em}.about-steps{display:flex;flex-wrap:wrap;justify-content:space-between;margin-top:40px}.step{background-color:#fff;border-radius:8px;box-shadow:0 3px 10px #0000001a;flex:1 1;margin:15px;min-width:250px;padding:20px;text-align:center}.step-icon{font-size:3rem;margin-bottom:15px}.step h3{color:#2c3e50;font-size:1.4rem;margin-bottom:15px}.impact-stats{display:flex;flex-wrap:wrap;justify-content:space-between;margin-top:30px}.impact-stat{background-color:#f8f9fa;border-radius:8px;box-shadow:0 3px 10px #0000000d;flex:1 1;margin:15px;min-width:300px;padding:25px}.impact-stat h3{border-bottom:2px solid #3498db;color:#2c3e50;font-size:1.4rem;margin-bottom:15px;padding-bottom:10px}.join-buttons{margin-top:30px}.primary-btn,.secondary-btn{border-radius:30px;display:inline-block;font-size:1rem;margin:0 10px;padding:12px 30px;text-decoration:none}.primary-btn{background-color:#3498db;border:2px solid #3498db}.secondary-btn{border:2px solid #3498db;color:#3498db}.primary-btn:hover{background-color:#2980b9;border-color:#2980b9}.secondary-btn:hover{background-color:#3498db1a}@media (max-width:768px){.about-steps,.impact-stats{flex-direction:column}.about-hero{padding:60px 0}.about-hero h1{font-size:2.5rem}section h2{font-size:2rem}.security-content{align-items:center;flex-direction:column;text-align:center}.security-icon{margin-bottom:20px}.sdg-grid{justify-content:center}.sdg-item{max-width:100%;min-width:100%}}.how-it-works-page{overflow-x:hidden;width:100%}.hero-section{background:linear-gradient(135deg,#2e7d32,#1b5e20);justify-content:center;padding:80px 40px;text-align:center}.hero-container,.hero-section{align-items:center;display:flex;width:100%}.hero-container{gap:40px;justify-content:space-between;margin:0 auto;max-width:1000px}.hero-content{color:#fff;flex:1 1;padding:2rem;text-align:left}.hero-content h1{color:#fff;font-size:3.5rem;line-height:1.2;margin-bottom:1.5rem;text-shadow:0 1px 3px #0003}.hero-content p{color:#fff;font-size:1.2rem;line-height:1.6;margin-bottom:2rem;margin-left:0;margin-right:auto;max-width:800px;opacity:.9}.hero-image{border-radius:20px;box-shadow:0 4px 8px #0000001a;flex-shrink:0;height:350px;overflow:hidden;position:relative;width:450px}.rotating-images{height:100%;position:relative;width:100%}.hero-img{height:100%;left:0;object-fit:cover;opacity:0;position:absolute;top:0;transition:opacity .5s ease-in-out;width:100%}.hero-img.active{opacity:1}.platform-flow{background-color:#f9fff9;padding:5rem 2rem;text-align:center}.platform-flow h2{color:#1b5e20;font-size:2.5rem;margin-bottom:3rem;position:relative}.platform-flow h2:after{background-color:#2e7d32;bottom:-15px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.flow-container{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin:0 auto;max-width:1200px}.flow-step{background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a;flex:1 1;min-width:240px;padding:2rem;position:relative;transition:transform .3s ease}.flow-step:hover{transform:translateY(-10px)}.flow-number{align-items:center;background-color:#2e7d32;border-radius:50%;color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:50px;justify-content:center;margin:0 auto 1.5rem;width:50px}.flow-step h3{color:#2e7d32;font-size:1.3rem;margin-bottom:1rem}.flow-step p{color:#555;line-height:1.5}.user-roles{background-color:#f9f9f9;padding:5rem 2rem;text-align:center}.user-roles h2{color:#1b5e20;font-size:2.5rem;margin-bottom:3rem;position:relative}.user-roles h2:after{background-color:#2e7d32;bottom:-15px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.role-card{background-color:#fff;border-radius:10px;box-shadow:0 4px 15px #0000001a;display:flex;margin:2rem auto;max-width:900px;overflow:hidden;text-align:left;transition:transform .3s ease}.role-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.role-icon{align-items:center;background-color:#e8f5e9;display:flex;font-size:3rem;justify-content:center;min-width:100px;padding:2rem}.role-content{flex:1 1;padding:2rem}.role-content h3{color:#2e7d32;font-size:1.5rem;margin-bottom:.5rem}.role-content p{color:#555;margin-bottom:1rem}.role-content h4{color:#1b5e20;font-size:1.1rem;margin-bottom:.5rem}.role-content ul{list-style-type:disc;margin-bottom:0;padding-left:1.5rem}.role-content li{color:#555;margin-bottom:.5rem}.verification-section{background-color:#f5f5f5;margin:0 auto;max-width:1200px;padding:5rem 2rem;text-align:center}.verification-section h2{color:#1b5e20;font-size:2.5rem;margin-bottom:3rem;position:relative}.verification-section h2:after{background-color:#2e7d32;bottom:-15px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.verification-content{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.verification-item{background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a;flex:1 1;max-width:500px;min-width:300px;padding:2rem}.verification-item h3{color:#2e7d32;font-size:1.3rem;margin-bottom:1rem}.verification-item p{color:#555;line-height:1.5}.prototype-notice{background-color:#fffde7;border:2px dashed #ffd54f;border-radius:8px;margin:3rem auto;max-width:900px;padding:3rem 2rem;text-align:center}.prototype-content h3{color:#f57f17;font-size:1.5rem;margin-bottom:1rem}.prototype-content p{color:#555;line-height:1.6;margin:0 auto 1rem;max-width:800px}.cta-section{background-color:#2e7d32;background:linear-gradient(135deg,#2e7d32,#1b5e20);padding:5rem 2rem;text-align:center}.cta-section h2{color:#fff;font-size:2.5rem;margin-bottom:1rem;text-shadow:0 1px 3px #0003}.cta-section p{color:#fff;font-size:1.2rem;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:600px;opacity:.9}.cta-buttons{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.cta-button{background-color:#fff;border-radius:30px;box-shadow:0 4px 10px #0003;color:#2e7d32;display:inline-block;font-size:1.1rem;font-weight:600;padding:1rem 3rem;text-decoration:none;transition:all .3s ease}.cta-button:hover{background-color:#f5f5f5;box-shadow:0 6px 15px #0000004d;transform:translateY(-3px)}.secondary-cta{background-color:initial;border:2px solid #fff;border-radius:30px;color:#fff;display:inline-block;font-size:1.1rem;font-weight:600;padding:1rem 3rem;text-decoration:none;transition:all .3s ease}.secondary-cta:hover{background-color:#ffffff1a;box-shadow:0 6px 15px #0003;transform:translateY(-3px)}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.hero-container{flex-direction:column}.hero-content{text-align:center}.hero-content p{margin-left:auto;margin-right:auto}.hero-image{max-width:450px;width:100%}.role-card{flex-direction:column}.role-icon{min-width:auto;padding:1.5rem}.verification-item{min-width:100%}}@media (max-width:480px){.hero-section{padding:60px 20px}.hero-content h1{font-size:2rem}.hero-image{height:250px}.flow-step,.role-card,.verification-item{min-width:100%}.cta-section h2,.platform-flow h2,.user-roles h2,.verification-section h2{font-size:2rem}}.contact-page{margin:0 auto;max-width:1200px;padding:2rem}.contact-header{margin-bottom:3rem;padding:2rem 0;text-align:center}.contact-header h1{color:#1b5e20;font-size:2.5rem;margin-bottom:1rem}.contact-header p{color:#555;font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:600px}.contact-container{background:#fff;border-radius:10px;box-shadow:0 0 20px #0000001a;display:flex;gap:3rem;overflow:hidden}.contact-info{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff;display:flex;flex:1 1;flex-direction:column;gap:2rem;padding:2rem}.info-item{margin-bottom:1.5rem}.info-icon{font-size:2rem;margin-bottom:1rem}.info-item h3{font-size:1.2rem;margin-bottom:.5rem}.info-item p{font-size:1rem;line-height:1.6;opacity:.9}.social-links{margin-top:auto}.social-links h3{margin-bottom:1rem}.social-icons{display:flex;gap:1rem}.social-icon{color:#fff;font-size:1.5rem;text-decoration:none;transition:transform .3s ease}.social-icon:hover{transform:translateY(-3px)}.contact-form{flex:2 1;padding:2rem}.contact-form h2{color:#1b5e20;font-size:1.8rem;margin-bottom:2rem}.submit-btn{background-color:#2e7d32;font-size:1rem;padding:1rem 2rem;transition:all .3s ease;width:100%}.submit-btn:hover{background-color:#1b5e20;box-shadow:0 2px 8px #2e7d3233;transform:translateY(-2px)}@media (max-width:900px){.contact-container{flex-direction:column}.contact-info{border-radius:10px 10px 0 0}.contact-form{padding:2rem}}@media (max-width:600px){.contact-page{padding:1rem}.contact-header h1{font-size:2rem}.contact-header p{font-size:1rem}.contact-form{padding:1.5rem}.social-icons{justify-content:center}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.contact-page{animation:fadeIn .6s ease-out}.form-group input:invalid,.form-group textarea:invalid{border-color:#ff6b6b}.form-group input:valid,.form-group textarea:valid{border-color:#2e7d32}.auth-container{align-items:center;background:linear-gradient(135deg,#f9fff9,#e8f5e9);display:flex;justify-content:center;min-height:100vh;padding:2rem}.auth-card{background-color:#fff;border-radius:10px;box-shadow:0 10px 30px #0000001a;max-width:500px;padding:3rem;width:100%}.signup-card{max-width:600px}.auth-card h2{color:#1b5e20;font-size:1.8rem;margin-bottom:2rem;text-align:center}.user-type-toggle{display:flex;gap:.5rem;justify-content:center;margin-bottom:2rem}.user-type-toggle button{background-color:initial;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;flex:1 1;font-size:.9rem;padding:.8rem 1rem;transition:all .3s ease}.user-type-toggle button.active{background-color:#2e7d32;border-color:#2e7d32;color:#fff}.user-type-toggle button:hover:not(.active){background-color:#f5f5f5}.form-group input,.form-group textarea{border:1px solid #e0e0e0;padding:.8rem;transition:border-color .3s ease}.form-group textarea{min-height:100px}.forgot-password{margin-bottom:1.5rem;text-align:right}.forgot-password a{color:#2e7d32;font-size:.9rem;text-decoration:none;transition:color .3s ease}.forgot-password a:hover{color:#1b5e20;text-decoration:underline}.auth-button{background-color:#2e7d32;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.auth-button:hover{background-color:#1b5e20;box-shadow:0 4px 10px #0003;transform:translateY(-2px)}.auth-footer{color:#555;margin-top:2rem;text-align:center}.auth-footer a{color:#2e7d32;font-weight:600;text-decoration:none;transition:color .3s ease}.auth-footer a:hover{color:#1b5e20;text-decoration:underline}@media (max-width:600px){.auth-card{padding:2rem 1.5rem}.user-type-toggle{flex-direction:column}.user-type-toggle button{width:100%}}.dashboard-container{margin:0 auto;max-width:1200px;padding:2rem}.dashboard-container h2{color:#1b5e20;font-size:2rem;margin-bottom:2rem}.demo-controls{background-color:#f5f5f5;border-radius:8px;margin-bottom:2rem;padding:1rem;text-align:center}.demo-controls p{color:#555;font-size:.9rem;margin-bottom:.5rem}.demo-buttons{display:flex;gap:1rem;justify-content:center}.demo-buttons button{background-color:initial;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease}.demo-buttons button.active{background-color:#2e7d32;border-color:#2e7d32;color:#fff}.demo-buttons button:hover:not(.active){background-color:#f0f0f0}.dashboard-tabs{border-bottom:1px solid #e0e0e0;display:flex;gap:1rem;margin-bottom:2rem;overflow-x:auto}.dashboard-tabs button{background-color:initial;border:none;border-bottom:3px solid #0000;color:#555;cursor:pointer;font-weight:600;padding:.8rem 1.5rem;transition:all .3s ease;white-space:nowrap}.dashboard-tabs button.active{border-bottom-color:#2e7d32;color:#2e7d32}.dashboard-tabs button:hover:not(.active){background-color:#2e7d320d;color:#2e7d32}.dashboard-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 10px #0000000d;min-height:calc(100vh - 200px);padding:20px}.stats-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{background-color:#fff;border-radius:10px;box-shadow:0 3px 10px #00000014;overflow:hidden;padding:1.5rem;position:relative;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-5px)}.stat-card h3{color:#333;font-size:1.8rem;font-weight:700;margin-bottom:.5rem}.stat-card p{color:#666;font-size:.9rem;margin:0}.stat-source{background:linear-gradient(90deg,#4a86e8,#6ca2fc);bottom:0;color:#fff;font-size:.7rem;font-weight:500;left:0;padding:3px 0;position:absolute;right:0}.recent-activity{margin-top:2rem}.available-section h3,.current-inventory h3,.distribution-section h3,.donate-section h3,.history-section h3,.impact-section h3,.recent-activity h3,.resources-section h3{color:#2e7d32;font-size:1.5rem;margin-bottom:1.5rem}.data-table{margin-top:20px}.data-table td,.data-table th{padding:12px}.data-table tr:hover{background-color:#f5f5f5}.status{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:600;padding:.3rem .8rem}.status.picked-up{background-color:#e8f5e9;color:#2e7d32}.status.scheduled{background-color:#fff8e1;color:#f57c00}.status.completed{background-color:#e3f2fd;color:#1976d2}.status.confirmed{background-color:#e8f5e9;color:#2e7d32}.distribution-tools,.donate-form{background-color:#f9f9f9;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #e0e0e0;padding:.8rem;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2e7d32;outline:none}.primary-btn,.secondary-btn{border:none;border-radius:4px;cursor:pointer;font-weight:600;padding:.8rem 1.5rem;transition:all .3s ease}.secondary-btn{background-color:initial;border:1px solid #2e7d32}.secondary-btn:hover{background-color:#2e7d321a}.small-btn{background-color:#e0e0e0;border:none;border-radius:4px;color:#333;cursor:pointer;font-size:.8rem;padding:.4rem .8rem;transition:all .3s ease}.small-btn:hover{background-color:#d0d0d0}.small-btn.danger{background-color:#ffebee;color:#d32f2f}.small-btn.danger:hover{background-color:#ffcdd2}.donation-filters{display:flex;gap:1rem;margin-bottom:2rem}.donation-filters input,.donation-filters select{border:1px solid #e0e0e0;border-radius:4px;padding:.8rem}.donation-filters input{flex:2 1}.donation-filters select{flex:1 1}.available-donations{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.assistance-card,.donation-card,.resource-card{background-color:#fff;border-radius:8px;box-shadow:0 4px 10px #0000000d;padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease}.assistance-card:hover,.donation-card:hover,.resource-card:hover{box-shadow:0 8px 20px #0000001a;transform:translateY(-5px)}.assistance-details,.donation-info{margin-bottom:1.5rem}.assistance-details h4,.donation-info h4,.resource-card h4{color:#2e7d32;font-size:1.2rem;margin-bottom:1rem}.assistance-details p,.donation-info p,.resource-card p{color:#555;margin-bottom:.5rem}.donation-actions{text-align:center}.assistance-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:2rem}.impact-charts{display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:3rem}.impact-chart{background-color:#f9f9f9;border-radius:8px;flex:1 1;min-width:300px;padding:1.5rem}.impact-chart h4{color:#2e7d32;margin-bottom:1.5rem;text-align:center}.chart-placeholder{background-color:#2e7d320d;font-size:2rem}.impact-testimonials{background-color:#f9f9f9;border-radius:8px;padding:1.5rem}.impact-testimonials h4{color:#2e7d32;margin-bottom:1.5rem;text-align:center}.testimonial{background-color:#fff;border-radius:8px;box-shadow:0 4px 10px #0000000d;padding:1.5rem}.testimonial p{font-style:italic;line-height:1.6;margin-bottom:1rem}.testimonial-source{color:#555;font-weight:600;text-align:right}.resource-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}@media (max-width:768px){.dashboard-container{padding:1rem}.dashboard-tabs{flex-wrap:wrap}.donation-filters,.impact-charts,.stats-cards{flex-direction:column}.data-table{display:block;overflow-x:auto}.demo-buttons{flex-direction:column}}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.filter-controls{display:flex;gap:10px}.search-input{width:200px}.filter-select,.search-input{border:1px solid #ddd;border-radius:4px;padding:8px}.action-btn{border:none;border-radius:4px;cursor:pointer;margin-right:5px;padding:6px 12px}.action-btn.accept{background-color:#4caf50;color:#fff}.action-btn.details{background-color:#2196f3;color:#fff}.action-btn.edit{background-color:#ffc107;color:#000}.action-btn.manage{background-color:#9c27b0;color:#fff}.form-grid{grid-gap:20px;background-color:#f5f5f5;border-radius:8px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);padding:20px}.form-group{gap:8px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;padding:8px}.form-group textarea{height:100px;resize:vertical}.submit-btn{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;grid-column:span 2;padding:12px}.submit-btn:hover{background-color:#45a049}.available-section,.distribution-section{margin-top:20px}.current-inventory,.distribution-schedule{margin-top:30px}.dashboard-nav{border-bottom:1px solid #eee;gap:10px;margin-bottom:20px;padding:10px 0}.dashboard-nav button{background:none;border:none;color:#666;font-size:16px;padding:10px 20px}.dashboard-nav button.active{background-color:#4caf50}.available-section,.distribution-section,.overview-section{margin-top:20px}.form-row{gap:20px;margin-bottom:1.5rem}.form-row .form-group{flex:1 1;margin-bottom:0}.file-upload{display:inline-block;overflow:hidden;position:relative}.file-upload input[type=file]{height:.1px;left:0;opacity:0;position:absolute;top:0;width:.1px}.file-upload label{background-color:#f1f1f1;border-radius:4px;color:#333;cursor:pointer;display:inline-block;padding:10px 15px;transition:all .3s ease}.file-upload label:hover{background-color:#e0e0e0}.form-buttons{gap:15px;margin-top:30px}.impact-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.impact-card{background-color:#fff;border-radius:10px;box-shadow:0 4px 10px #0000001a;padding:25px 20px;text-align:center;transition:transform .3s ease}.impact-card:hover{transform:translateY(-5px)}.impact-icon{font-size:2.5rem;margin-bottom:15px}.impact-value{color:#2e7d32;font-size:2.2rem;font-weight:700;margin:10px 0}.impact-card p{color:#666;margin:0}.impact-charts{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:40px}.chart-container{background-color:#fff;border-radius:10px;box-shadow:0 4px 10px #0000001a;padding:20px}.chart-placeholder{align-items:center;background-color:#f9f9f9;border-radius:8px;display:flex;height:200px;justify-content:center}.chart-message{padding:20px;text-align:center}.chart-icon{font-size:2rem;margin-bottom:10px}.impact-badges{margin-top:30px}.badges-container{display:flex;flex-wrap:wrap;gap:15px;margin-top:15px}.badge{background-color:#f0f7e6;border-radius:8px;padding:15px;text-align:center;transition:transform .3s ease;width:100px}.badge:hover{transform:scale(1.05)}.badge.inactive{background-color:#f1f1f1;opacity:.5}.badge-icon{font-size:2rem;margin-bottom:8px}.badge-name{font-size:.8rem;font-weight:700}.impact-share{background-color:#f9f9f9;border-radius:10px;margin-top:40px;padding:25px;text-align:center}.share-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:20px}.share-btn{border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.share-btn.facebook{background-color:#1877f2}.share-btn.twitter{background-color:#1da1f2}.share-btn.linkedin{background-color:#0a66c2}.share-btn:hover{opacity:.9;transform:translateY(-2px)}.success-message{background-color:#d4edda;color:#155724}.error-message,.success-message{border-radius:.25rem;margin-bottom:1rem;padding:1rem}.error-message{color:#721c24}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#dc3545}.form-buttons button:disabled{cursor:not-allowed;opacity:.7}.form-buttons-container{align-items:center;display:flex;gap:1rem;margin-top:1.5rem}.success-message-inline{align-items:center;animation:fadeInSlide .3s ease-out;background-color:#28a745;border-radius:.25rem;color:#fff;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.25rem}.success-icon{font-size:1.25rem;font-weight:700}@keyframes fadeInSlide{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.primary-btn{border-radius:.25rem;padding:.75rem 1.25rem;transition:background-color .2s ease}.primary-btn:disabled{background-color:#4caf50}.available-tasks-section{padding:1rem}.task-filters{gap:1rem;margin-bottom:2rem}.task-filter,.task-search{font-size:1rem;padding:.5rem}.available-tasks-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:1rem}.task-card{transition:transform .2s ease,box-shadow .2s ease}.task-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-4px)}.task-card-header{border-bottom:1px solid #eee;padding:1rem}.task-card-header h4{color:#2e7d32}.spots-available{background:#e8f5e9;border-radius:12px;color:#2e7d32;font-size:.875rem;padding:.25rem .5rem}.task-card-body{padding:1rem}.organization-name{color:#333;font-weight:500;margin-bottom:.5rem}.task-datetime,.task-location{align-items:center;color:#666;display:flex;font-size:.875rem;gap:.5rem;margin:.25rem 0}.task-description{color:#444;margin:1rem 0}.task-requirements{margin-top:1rem}.task-requirements h5{color:#333;margin:0 0 .5rem}.task-requirements ul{list-style-type:none;margin:0;padding:0}.task-requirements li{align-items:center;color:#666;display:flex;font-size:.875rem;gap:.5rem;padding:.25rem 0}.task-requirements li:before{color:#2e7d32;content:"•"}@media (max-width:768px){.task-filters{flex-direction:column}.available-tasks-grid{grid-template-columns:1fr}}.task-category{background:#e3f2fd;border-radius:12px;color:#1976d2;font-size:.875rem;padding:.25rem .75rem;text-transform:capitalize}.item-details{align-items:center;display:flex;gap:.5rem;margin:.5rem 0}.item-name{color:#333;font-weight:500}.item-quantity{color:#666}.pickup-info{background:#f5f5f5;border-radius:4px;color:#555;margin:.5rem 0;padding:.75rem}.task-metadata{border-top:1px solid #eee;margin-top:1rem;padding-top:1rem}.task-metadata p{align-items:center;color:#666;display:flex;font-size:.875rem;gap:.5rem;margin:.25rem 0}.loading-spinner{color:#666;padding:2rem;text-align:center}.no-tasks-message{background:#f5f5f5;color:#666;margin-top:1rem;padding:2rem}.no-tasks-message p:first-child{margin-bottom:.5rem}.material-icons{color:#2e7d32;font-size:1.2rem}.status-badge{font-size:.875rem;padding:.25rem .75rem;text-transform:capitalize}.status-badge.assigned{background:#fff3e0;color:#e65100}.status-badge.in_progress{background:#e3f2fd;color:#1976d2}.status-badge.completed{background:#e8f5e9;color:#2e7d32}.status-badge.cancelled{background:#ffebee;color:#c62828}.assigned-tasks-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:1rem}.primary-btn:disabled{background-color:#9e9e9e}.completed-message{align-items:center;color:#2e7d32;display:flex;font-weight:500;gap:.5rem}.task-card-footer{align-items:center;border-top:1px solid #eee;display:flex;justify-content:center;padding:1rem}.task-card-footer button:disabled{background-color:#9e9e9e;cursor:not-allowed}.priority-status-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;margin-bottom:1.5rem;padding:1.5rem}.priority-indicator{align-items:center;display:flex;gap:1rem;margin:1rem 0}.priority-badge{align-items:center;align-self:center;border-radius:20px;color:#fff;display:inline-flex;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:.5rem 1rem;text-transform:uppercase;white-space:nowrap}.status-message-display{align-items:center;background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 4px #0000000d;box-sizing:border-box;display:flex;flex:1 1;height:50px;max-height:50px;min-height:50px;overflow:hidden;padding:0;position:relative}.editable-content{box-sizing:border-box;color:#444;line-height:1.5;margin:0;min-height:100%;outline:none;overflow:hidden;padding:.8rem 3rem .8rem 1rem;text-overflow:ellipsis;white-space:nowrap;width:100%}.editable-content[contenteditable=true]{background-color:#ffffff80;cursor:text;white-space:pre-wrap}.status-message-display p{color:#444;text-overflow:ellipsis;white-space:nowrap}.status-message-display p,.status-message-display textarea{box-sizing:border-box;line-height:1.5;margin:0;overflow:hidden;padding:.8rem 3rem .8rem 1rem;width:100%}.status-message-display textarea{appearance:none;-webkit-appearance:none;background:#0000;border:none;color:inherit;font-family:inherit;font-size:inherit;outline:none;resize:none}.edit-status-btn{background:#0000;border:none;border-radius:50%;cursor:pointer;opacity:.6;padding:4px;position:absolute;right:8px;top:8px;transition:opacity .2s;z-index:1}.edit-status-btn:hover{background-color:#0000000d;opacity:1}.edit-icon{font-size:1rem}.status-edit-buttons{display:flex;gap:.5rem;position:absolute;right:8px;top:8px;z-index:2}.cancel-btn,.save-btn{align-items:center;border:none;border-radius:50%;box-shadow:0 1px 3px #0000001a;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;height:26px;justify-content:center;padding:0;transition:all .2s ease;width:26px}.save-btn{background-color:#4caf50;color:#fff}.save-btn:hover:not(:disabled){background-color:#45a049;box-shadow:0 2px 5px #00000026;transform:scale(1.1)}.cancel-btn:disabled,.save-btn:disabled{cursor:not-allowed;opacity:.6}.cancel-btn:hover:not(:disabled){background-color:#e0e0e0;box-shadow:0 2px 5px #00000026;transform:scale(1.1)}.priority-selector-inline{border-top:1px solid #eee;margin-top:1.5rem;padding-top:1.5rem}.priority-selector-label{color:#333;font-size:1rem;font-weight:600;margin-bottom:1rem}.priority-buttons{display:flex;flex-wrap:wrap;gap:.8rem}.priority-button{align-items:center;border:2px solid;border-radius:12px;cursor:pointer;display:flex;height:60px;overflow:hidden;padding:0;position:relative;text-align:left;transition:all .3s ease;width:170px}.priority-button:hover{box-shadow:0 6px 15px #0000001a;transform:translateY(-3px)}.priority-button.selected{box-shadow:0 8px 20px #00000026;transform:scale(1.05)}.priority-number{align-items:center;background-color:#fff3;display:flex;font-size:1.6rem;font-weight:700;height:100%;justify-content:center;width:50px}.priority-button .priority-text{flex:1 1;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:0 15px;text-transform:uppercase}.update-priority-btn{background-color:#2e7d32;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:.6rem 1.2rem;transition:all .3s ease}.update-priority-btn:hover{background-color:#1b5e20}.food-bank-contact-card{background-color:#fff;border-left:4px solid #4caf50;border-radius:12px;box-shadow:0 4px 12px #00000014;color:#333;margin-bottom:1.5rem;padding:1.8rem;position:relative}.food-bank-contact-card h3{color:#1b5e20;font-size:1.3rem;font-weight:600;margin-bottom:1.2rem;margin-top:0}.food-bank-info-container{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:.5rem}.info-item{border-bottom:1px solid #f0f0f0;display:flex;padding:.5rem 0}.info-item strong{color:#555;font-weight:600;min-width:100px}.editable-field{background-color:initial;border-radius:4px;color:#333;flex:1 1;overflow:hidden;padding:.3rem .5rem;text-overflow:ellipsis;transition:background-color .2s ease}.editable-field[contenteditable=true]{background-color:#f9f9f9;border-left:2px solid #4caf50;cursor:text;outline:none}.edit-info-btn{align-items:center;background:#0000;border:1px solid #4caf50;border-radius:50%;color:#4caf50;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:1.8rem;top:1.8rem;transition:all .2s ease;width:36px}.edit-info-btn:hover{background:#4caf501a;box-shadow:0 2px 5px #0000001a;transform:translateY(-2px)}.edit-controls{display:flex;gap:.5rem;position:absolute;right:1.8rem;top:1.8rem}.food-bank-contact-card .save-btn.modern-btn{background-color:#4caf50;color:#fff}.food-bank-contact-card .cancel-btn.modern-btn{background-color:#f5f5f5;border:1px solid #ddd;color:#333}.contact-form.inline{margin-top:1rem}.contact-form.inline .form-group{margin-bottom:1rem}.contact-form.inline label{display:block;font-weight:500;margin-bottom:.25rem}.contact-form.inline input{border:1px solid #ddd;border-radius:4px;padding:.5rem;width:100%}.contact-form.inline .form-buttons{display:flex;gap:.5rem;margin-top:1rem}.settings-section{padding:1rem}.settings-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.settings-card h4{color:#2e7d32;margin-bottom:.75rem;margin-top:0}.priority-selector{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.priority-option{border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:1rem;transition:all .3s ease}.priority-option.selected{background-color:#00000005;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.priority-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.priority-level{border-radius:4px;color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.priority-label{font-size:1.1rem;font-weight:600}.priority-description{color:#666;margin:0}.contact-form{display:flex;flex-direction:column;gap:1rem}.form-group{gap:.5rem}.form-group label{color:#555}.form-group input,.form-group textarea{font-size:1rem;padding:.75rem}.form-group input:focus,.form-group textarea:focus{box-shadow:0 0 0 2px #2e7d321a}.form-buttons{display:flex;gap:1rem;margin-top:1rem}.primary-btn,.secondary-btn{font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease}.secondary-btn{background-color:#f5f5f5;border:none;color:#555}.secondary-btn:hover{background-color:#e0e0e0}.empty-state{align-items:center;background-color:#f9f9f9;border:1px dashed #ddd;border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.empty-icon{font-size:3rem;margin-bottom:1rem}.empty-state p{color:#555;font-size:1.1rem;margin:.5rem 0}.empty-subtext{color:#777;font-size:.9rem}@media (max-width:768px){.priority-selector{gap:.75rem}.settings-card{padding:1.25rem}.form-buttons{flex-direction:column}.primary-btn,.secondary-btn{width:100%}}.dashboard-nav{display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem}.dashboard-nav button{background-color:initial;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;font-size:.9rem;padding:.75rem 1.25rem;transition:all .3s ease;white-space:nowrap}.dashboard-nav button.active{background-color:#2e7d32;border-color:#2e7d32;color:#fff}.dashboard-nav button:hover:not(.active){background-color:#f0f0f0}.modern-btn{align-items:center;border:none;border-radius:50%;box-shadow:0 2px 5px #00000026;cursor:pointer;display:flex;height:36px;justify-content:center;margin-left:8px;transition:all .2s ease;width:36px}.save-btn.modern-btn{background-color:#4caf50;color:#fff}.save-btn.modern-btn:hover{background-color:#3e9142;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.cancel-btn.modern-btn{background-color:#f44336;color:#fff}.cancel-btn.modern-btn:hover{background-color:#d32f2f;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.cancel-icon,.save-icon{font-size:18px;line-height:1}.loading-dots{animation:pulse 1s infinite;font-size:16px;letter-spacing:1px}@keyframes pulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.modern-btn:disabled{background-color:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.placeholder-text{color:#999;font-style:italic;opacity:.7}.editable-field[contenteditable=true] .placeholder-text{display:none}.contact-info-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:20px}.contact-info-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:20px}.contact-info-item{background-color:#f9f9f9;border-left:4px solid #2e7d32;border-radius:6px;padding:15px}.contact-info-item h4{color:#2e7d32;font-size:16px;margin:0 0 8px}.contact-info-item p{color:#333;font-size:15px;margin:0;word-break:break-word}.edit-btn{background-color:#2e7d32;border:none;color:#fff;display:inline-block;font-size:14px;padding:10px 15px;transition:background-color .2s}.edit-btn:hover{background-color:#1b5e20}.contact-form{max-width:600px}.form-group{margin-bottom:20px}.form-group label{color:#333;margin-bottom:8px}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:12px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#2e7d32;outline:none}.form-group input.error{border-color:#f44336}.error-text{color:#f44336;font-size:13px;margin-top:5px}.helper-text{font-size:12px;margin-top:5px}.loading-text{font-size:13px;margin-top:5px}.status-message{border-radius:4px;font-size:14px;margin-top:15px;padding:10px}.status-message.success{background-color:#e8f5e9;border:1px solid #c8e6c9;color:#2e7d32}.status-message.error{background-color:#ffebee;border:1px solid #ffcdd2;color:#f44336}.address-buttons{gap:10px;margin-top:20px}.primary-btn{flex:1 1;font-size:14px;padding:10px 15px;transition:background-color .2s}.primary-btn:disabled{background-color:#a5d6a7}.cancel-btn{border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;flex:1 1;font-size:14px;padding:10px 15px;transition:background-color .2s}.cancel-btn:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed}.contact-info-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;margin-bottom:1.5rem;padding:1.5rem}.contact-fields-container{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.contact-field{position:relative}.contact-field h4{color:#2e7d32;font-size:16px;font-weight:500;margin:0 0 .5rem}.contact-field .status-message-display{box-shadow:0 1px 3px #0000001a;height:auto;max-height:none;min-height:50px;overflow:hidden;position:relative}.contact-field .editable-content{box-sizing:border-box;display:block;min-height:20px;width:100%}.contact-field textarea.editable-content{min-height:60px;resize:vertical}.contact-field .status-message-display input.editable-content,.contact-field .status-message-display textarea.editable-content{background:#0000;border:none;outline:none}.contact-field .status-message-display .edit-status-btn{position:absolute;right:8px;top:8px;z-index:1}.card-style{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000014;margin-bottom:2rem;padding:2rem}.qr-code-section h3,.tasks-section h3{align-items:center;color:#1b5e20;display:flex;gap:.5rem;margin-bottom:1rem;margin-top:0}.qr-code-section .qr-code-container{align-items:center;display:flex;flex-direction:column;margin-top:1.5rem}.qr-code-display{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;display:inline-block;margin-bottom:1rem;padding:1rem}.qr-code-display svg{display:block}.qr-loading{align-items:center;background-color:#f8f9fa;color:#666;display:flex;font-style:italic;height:200px;justify-content:center;width:200px}.qr-code-section .token-info{color:#666;font-size:.9rem;font-style:italic;margin-top:.5rem}.alert{border-radius:4px;margin-top:1rem;padding:1rem}.alert-warning{align-items:center;background-color:#fff3cd;border:1px solid #ffeeba;color:#856404;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.error-message{margin-bottom:.5rem}.primary-btn{background-color:#2e7d32;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;padding:.7rem 1.2rem;transition:background-color .3s}.primary-btn:hover{background-color:#1b5e20}.primary-btn:disabled{background-color:#aaa;cursor:not-allowed}.secondary-btn{background-color:#e9f5e9;border:1px solid #c8e6c9;border-radius:4px;cursor:pointer;font-size:.85rem;padding:.5rem 1rem}.secondary-btn:hover{background-color:#c8e6c9}.fas{color:#2e7d32}.dynamic-code-section,.static-id-section{margin-top:1.5rem;text-align:center}.full-width{width:100%}.divider{border:none;border-top:1px solid #eee;margin:2rem 0}.totp-display-combined{gap:1.5rem}.totp-display-combined,.totp-timer{align-items:center;display:flex;flex-direction:column}.totp-timer{gap:.5rem;margin-top:.5rem;max-width:250px;width:100%}.totp-timer span{color:#555;font-size:1rem;margin-bottom:.3rem}.totp-timer strong{color:#1b5e20;font-size:1.2rem;letter-spacing:1px}.timer-bar-container{background-color:#ccc;border-radius:3px;height:6px;margin-top:8px;overflow:hidden;width:100%}.timer-bar{background-color:#4caf50;border-radius:3px;height:100%;transition:width 1s linear}.volunteer-id-card p{color:#555;font-size:.95rem;margin-bottom:1.5rem;text-align:center}.verification-details-container{align-items:flex-start;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin-top:1rem}.single-qr-display{width:100%}.data-table{border-collapse:collapse;margin-top:1.5rem;width:100%}.data-table td,.data-table th{border-bottom:1px solid #eee}.data-table th{background-color:#f5f5f5;color:#333;font-weight:600}.data-table tr:hover{background-color:#f9f9f9}.stats-overview{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:2rem}.stat-card{background-color:#f9f9f9;border-radius:6px;flex:1 1;min-width:150px;padding:1.2rem;text-align:center}.stat-card h4{color:#555;font-size:.9rem;font-weight:500;margin:0 0 .5rem}.stat-card .stat-value{color:#2e7d32;font-size:2rem;font-weight:600;margin:0}.task-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));padding:20px 0}.task-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;height:100%;overflow:hidden}.task-card-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:15px 20px}.task-card-header h4{color:#28a745;font-size:1.1rem;font-weight:600;margin:0}.task-card-body{display:flex;flex:1 1;flex-direction:column;padding:15px 20px}.task-card-body p{color:#555;margin:5px 0}.status-badge{background-color:#aaa;border-radius:12px;color:#fff;margin-left:10px;padding:3px 8px}.status-badge.available{background-color:#2196f3}.status-badge.scheduled{background-color:#ff9800}.status-badge.picked_up{background-color:#9c27b0}.status-badge.awaiting_actions{background-color:#ff9800;color:#fff}.status-badge.delivered{background-color:#4caf50}.status-badge.cancelled{background-color:#f44336}.scan-qr-btn{background-color:#9c27b0;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;margin:0 5px;padding:8px 15px;transition:background-color .2s ease}.scan-qr-btn:hover{background-color:#7b1fa2}.scan-qr-btn:disabled{background-color:#d1c4e9;cursor:not-allowed}.delivery-btn{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;margin:0 5px;padding:8px 15px;transition:background-color .2s ease}.delivery-btn:hover{background-color:#388e3c}.food-bank-btn{background-color:#ff9800;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;margin:0 5px;padding:8px 15px;transition:background-color .2s ease}.food-bank-btn:hover{background-color:#f57c00}.food-bank-btn:disabled{background-color:#ffd180;cursor:not-allowed}.volunteer-id-card{padding:30px;text-align:center}.qr-code-container{background-color:#fff;border:1px solid #ddd;border-radius:5px;margin:20px auto;padding:15px;width:fit-content}.single-qr-display{align-items:center;display:flex;flex-direction:column;justify-content:center}.task-content{display:flex;flex:1 1;flex-direction:column;padding:20px}.task-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:auto;padding-top:15px}.dashboard-content{margin:0 auto;max-width:1200px;padding:0 20px;width:100%}.task-filters{display:flex;gap:15px;margin-bottom:20px;width:100%}.task-search{flex:1 1}.task-filter,.task-search{border:1px solid #ddd;border-radius:4px;padding:10px}.task-filter{background-color:#fff;min-width:150px;width:auto}.task-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:15px 20px}.task-title{color:#28a745;font-size:1.1rem;font-weight:600}.task-category{background:#e7f5ff;border-radius:4px;color:#007bff;font-size:.9rem;padding:4px 12px}.task-section{margin-bottom:20px}.task-section h4{color:#343a40;font-size:1rem;font-weight:600;margin-bottom:8px}.task-section p{color:#495057;margin:0}.task-dates{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.date-info{align-items:center;display:flex}.date-label{color:#28a745;font-weight:500;margin-right:8px}.date-value{color:#6c757d}.accept-pickup-btn,.view-details-btn{transition:background-color .2s}.view-details-btn{background:#e9ecef;border:none;border-radius:4px;color:#495057;cursor:pointer;font-weight:500;padding:8px 24px}.view-details-btn:hover{background:#dee2e6}.no-tasks-message{background-color:#f8f9fa;border-radius:8px;margin-top:20px;padding:30px;text-align:center}.no-tasks-message p:first-child{color:#495057;font-size:1.1rem;font-weight:500;margin-bottom:10px}.no-tasks-message p:last-child{color:#6c757d}.cancel-pickup-btn{padding:8px 16px;transition:background-color .2s}.task-in-progress{background-color:#f9f4fb;border-left:5px solid #9c27b0;box-shadow:0 4px 10px #9c27b026}.task-in-progress .task-card-header{background-color:#f3e5f5}.completed-task{background-color:#f5f9f5;border-left:5px solid #4caf50;box-shadow:0 4px 10px #4caf5026}.completed-task .task-card-header{background-color:#e8f5e9}.modal-overlay{padding:20px}.modal-content{box-shadow:0 4px 12px #00000026;max-width:800px;overflow-y:auto;width:90%}.modal-header{border-bottom:1px solid #e0e0e0;padding:15px 20px}.close-btn,.modal-header h2{font-size:1.5rem}.modal-body{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;padding:20px}@media (max-width:768px){.modal-body{grid-template-columns:1fr}}.map-section h3,.pickup-info-section h3{color:#2e7d32;font-size:1.2rem;margin:0 0 10px}.pickup-item-name{font-size:1.2rem;font-weight:500;margin-bottom:15px}.pickup-category,.pickup-dates p,.pickup-location-info p,.pickup-source p{color:#555;margin:5px 0}.pickup-category span,.pickup-dates span{color:#333;font-weight:500;margin-right:5px}.pickup-dates{background-color:#f8f9fa;border-radius:4px;margin:15px 0;padding:10px}.pickup-location-info,.pickup-source{margin-top:20px}.formatted-address{color:#2e7d32!important;font-style:italic}.pickup-map{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;height:300px;width:100%}.map-error{background-color:#f8d7da;border-radius:4px;color:#dc3545;font-size:.9rem;margin-bottom:10px;padding:10px}.modal-footer{border-top:1px solid #e0e0e0;padding:15px 20px}.accept-pickup-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 24px}.accept-pickup-btn:hover{background:#218838}.accept-pickup-btn:disabled{background:#6c757d;cursor:not-allowed}.cancel-pickup-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 24px}.cancel-pickup-btn:hover{background:#c82333}.cancel-pickup-btn:disabled{background:#e4606d;cursor:not-allowed}.close-btn-modal{background:#e9ecef;padding:8px 24px}.close-btn-modal:hover{background:#dee2e6}.delivery-status-badge{background:#28a745;border-radius:4px;color:#fff;display:inline-block;font-weight:500;padding:8px 16px;text-align:center}.food-bank-selection{display:flex;flex-direction:column;gap:10px;margin-top:15px;width:100%}.food-bank-dropdown{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px}.choose-food-bank-button{background-color:#ff9800;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:700;padding:10px 15px;transition:background-color .2s}.choose-food-bank-button:hover{background-color:#f57c00}.choose-food-bank-button:disabled{background-color:#ccc;cursor:not-allowed}.cancel-button{background-color:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:700;margin-top:15px;padding:10px 15px;transition:background-color .2s}.cancel-button:hover{background-color:#d32f2f}.cancel-button:disabled{background-color:#ffcdd2;cursor:not-allowed}.status-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:700;margin-right:10px;padding:5px 10px;text-transform:uppercase}.status-badge.awaiting-action{background-color:#ff9800;color:#fff}.status-badge.awaiting-transport{background-color:#2196f3;color:#fff}.status-badge.completed{background-color:#4caf50;color:#fff}.error-message{color:#f44336;font-size:14px;margin-top:10px}.modal-footer{align-items:center;flex-direction:column;padding:15px}.foodbank-suggestions{background-color:#fff;display:flex;flex-direction:column;max-height:95vh;max-width:96%;width:96%}.foodbank-search-section{align-items:center;border-bottom:1px solid #eee;display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:10px;padding-bottom:10px}.foodbank-search-section h3{font-size:18px;margin:0}.foodbank-search-section p{font-size:14px;margin:0 0 10px}.foodbank-query-form{display:flex;flex-grow:1;gap:10px;margin-top:10px;max-width:450px}.foodbank-query-input{border:1px solid #ddd;border-radius:4px;flex-grow:1;font-size:14px;padding:8px 12px}.search-btn{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:700;min-width:80px;padding:8px 15px}.search-btn:hover{background-color:#45a049}.foodbank-results-container.redesigned{display:flex;gap:15px;height:75vh;margin-bottom:0;overflow:hidden}.foodbank-results-container.redesigned .foodbank-list{background-color:#fafafa;border:1px solid #eee;border-radius:8px;box-shadow:0 2px 5px #0000000d;flex:0.4 1;max-width:320px;min-width:280px;overflow-y:auto;padding:0 15px 15px}.foodbank-results-container.redesigned .foodbank-map-container.expanded{border-radius:8px;box-shadow:0 3px 10px #00000026;flex:0.6 1;height:100%;min-width:65%;overflow:hidden;position:relative}.foodbank-map{border-radius:8px;height:100%;width:100%}.foodbank-recommendations{list-style:none;margin:0;padding:0}.foodbank-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 3px #0000000d;cursor:pointer;margin-bottom:15px;padding:16px;transition:all .2s ease}.foodbank-item:hover{border-color:#4caf50;box-shadow:0 3px 10px #0000001a;transform:translateY(-2px)}.foodbank-item.selected{background-color:#f0f8f0;border:2px solid #4caf50;box-shadow:0 4px 12px #4caf5040;transform:translateY(-2px)}.foodbank-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.foodbank-card-header h4{color:#2e7d32;flex:1 1;font-size:18px;font-weight:600;margin:0}.foodbank-card-body{display:flex;flex-direction:column;gap:8px}.foodbank-address{color:#555;font-size:14px;line-height:1.4;margin:0}.foodbank-card-details{display:flex;flex-wrap:wrap;font-size:14px;gap:12px;margin-top:6px}.foodbank-hours,.travel-time{color:#666;margin:0}.foodbank-hours span,.travel-time span{color:#333;font-weight:500}.need-level{border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px;white-space:nowrap}.need-level-1{background-color:#4caf50}.need-level-2{background-color:#8bc34a}.need-level-3{background-color:#ffc107}.need-level-4{background-color:#ff9800}.need-level-5{background-color:#f44336}.delivery-info{background-color:#f0f8f0;border-left:3px solid #4caf50;border-radius:4px;margin-bottom:15px;padding:10px}.delivery-info p{font-size:14px;margin:0}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:20px}.loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #4caf5033;border-radius:50%;border-top-color:#4caf50;height:40px;margin-top:10px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.map-info-window{font-family:Arial,sans-serif;max-width:300px;padding:12px}.map-info-window h4{color:#2e7d32;font-size:16px;font-weight:600;margin:0 0 10px}.map-info-window p{color:#333;font-size:14px;line-height:1.4;margin:5px 0}.modal-overlay{background-color:#000000b3;bottom:0;right:0}.modal-content{background-color:#fff;box-shadow:0 5px 20px #0003;max-height:90vh;min-width:90vw;overflow:auto;padding:20px}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.modal-header h2{color:#2e7d32;font-size:24px;margin:0}.close-btn{background:none;border:none;color:#777;cursor:pointer;font-size:24px}.close-btn:hover{color:#333}.modal-body{flex:1 1;overflow:auto}.modal-footer{border-top:1px solid #eee;display:flex;gap:10px;justify-content:flex-end;margin-top:16px;padding-top:16px}.close-btn-modal{background-color:#e9ecef;border:none;border-radius:4px;color:#495057;cursor:pointer;font-size:16px;font-weight:500;padding:10px 20px}.close-btn-modal:hover{background-color:#dee2e6}.confirm-delivery-btn{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:10px 20px;transition:background-color .2s}.confirm-delivery-btn:hover{background-color:#45a049}.confirm-delivery-btn:disabled{background-color:#ccc;cursor:not-allowed}.custom-map-control{background-color:#fff;border:2px solid #fff;border-radius:3px;box-shadow:0 2px 6px #0000004d;cursor:pointer;margin:10px;text-align:center}.custom-map-control-inner{color:#191919;font-family:Roboto,Arial,sans-serif;font-size:16px;line-height:38px;padding-left:5px;padding-right:5px}.map-fullscreen-overlay{background-color:#fffffff7;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:2000}.map-fullscreen-overlay.active{display:block}.fullscreen-map-container{border:1px solid #ddd;border-radius:8px;bottom:10px;box-shadow:0 5px 20px #0000004d;left:10px;overflow:hidden;position:absolute;right:10px;top:10px}.fullscreen-map{height:100%;width:100%}.close-fullscreen-btn{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:2px;box-shadow:0 1px 4px #0000004d;cursor:pointer;display:flex;height:40px;justify-content:center;padding:0;position:absolute;right:15px;top:15px;transition:background-color .3s;width:40px;z-index:1001}.close-fullscreen-btn:hover{background-color:#f1f1f1}.close-fullscreen-btn svg{fill:#555;height:20px;width:20px}@media (max-width:1200px){.foodbank-results-container.redesigned{height:65vh}}@media (max-width:992px){.foodbank-results-container.redesigned{flex-direction:column-reverse;height:auto}.foodbank-results-container.redesigned .foodbank-list{flex:none;max-height:350px;max-width:100%;min-width:100%}.foodbank-results-container.redesigned .foodbank-map-container.expanded{flex:none;height:450px;margin-bottom:15px;min-width:100%}}@media (max-width:768px){.modal-content{min-width:95vw;padding:15px}.foodbank-results-container.redesigned .foodbank-map-container.expanded{height:350px}}@media (max-width:576px){.modal-header h2{font-size:20px}.foodbank-card-header{flex-direction:column}.foodbank-card-header .need-level{align-self:flex-start;margin-top:8px}}.profile-container{align-items:center;display:flex;justify-content:center;margin:2rem auto;max-width:800px;min-height:80vh;padding:0 1rem}.profile-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;max-width:500px;padding:2rem;width:100%}.profile-header{align-items:center;display:flex;flex-direction:column;margin-bottom:2rem;text-align:center}.profile-picture{border:3px solid #2e7d32;border-radius:50%;box-shadow:0 4px 12px #2e7d3226;height:120px;margin-bottom:1rem;object-fit:cover;width:120px}.profile-email{color:#666;margin-top:.5rem}.profile-username-section{background-color:#f8f9fa;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.profile-username-section h3{color:#2e7d32;margin-bottom:1rem;margin-top:0}.username-display{align-items:center;display:flex;justify-content:space-between}.username-display p{font-size:1.1rem;font-weight:500;margin:0}.edit-username-btn{background-color:initial;border:1px solid #2e7d32;border-radius:4px;color:#2e7d32;cursor:pointer;font-weight:500;padding:.4rem 1rem;transition:all .3s ease}.edit-username-btn:hover{background-color:#2e7d3214}.username-edit{display:flex;flex-direction:column;gap:1rem}.username-input{border:1px solid #ddd;border-radius:4px;font-size:1rem;outline:none;padding:.8rem;transition:border-color .3s ease;width:100%}.username-input:focus{border-color:#2e7d32;box-shadow:0 0 0 2px #2e7d321a}.username-actions{display:flex;gap:1rem;margin-top:1.5rem}.username-actions button{align-items:center;display:flex;flex:1 1;font-size:1rem;height:40px;justify-content:center;min-width:120px;padding:.75rem 1.5rem}.cancel-btn,.save-username-btn{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:.6rem 1.2rem;transition:all .3s ease}.save-username-btn{background-color:#2e7d32;color:#fff}.save-username-btn:hover{background-color:#1b5e20}.save-username-btn:disabled{background-color:#a5d6a7;cursor:not-allowed}.cancel-btn{background-color:#f5f5f5;color:#555}.cancel-btn:hover{background-color:#e0e0e0}.error-message{color:#d32f2f}.error-message,.success-message{font-size:.9rem;margin-top:.5rem}.success-message{color:#2e7d32}.profile-account-type{background-color:#f8f9fa;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.profile-account-type h3{color:#2e7d32;margin-bottom:1rem;margin-top:0}.volunteer-option{border-top:1px dashed #ddd;margin-top:1.5rem;padding-top:1.5rem}.volunteer-info{color:#555;font-size:.95rem;margin-bottom:1rem}.become-volunteer-btn{background-color:#2e7d32;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:.7rem 1.2rem;transition:all .3s ease;width:100%}.become-volunteer-btn:hover{background-color:#1b5e20}.become-volunteer-btn:disabled{background-color:#a5d6a7;cursor:not-allowed}.profile-details{border-top:1px solid #eee;padding-top:1.5rem}.profile-details p{margin-bottom:.75rem}.profile-loading{align-items:center;color:#2e7d32;display:flex;font-size:1.2rem;justify-content:center;min-height:80vh}.profile-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.profile-section h3{color:#2e7d32;margin-bottom:1.5rem;margin-top:0}.address-form{max-width:500px}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem}.form-group input{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.75rem;width:100%}.form-group input.error{border-color:#dc3545}.error-text{color:#dc3545;display:block;font-size:.875rem;margin-top:.25rem}.validated-address{background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin:15px 0;padding:10px}.validated-address h4{color:#2e7d32;margin:0 0 .5rem}.validated-address p{color:#1b5e20;margin:0}.validation-status{border-radius:4px;display:inline-block;font-size:14px;margin-top:5px;padding:4px 8px}.validation-status.success{background-color:#e6f4ea;color:#1e7e34}.success-message{background-color:#e6f4ea;color:#1e7e34}.error-message,.success-message{border-radius:4px;margin:10px 0;padding:10px}.error-message{background-color:#f8d7da;color:#dc3545}.address-buttons{display:flex;gap:1rem;margin-top:1.5rem}.address-buttons button{align-items:center;display:flex;flex:1 1;font-size:1rem;height:40px;justify-content:center;min-width:120px;padding:.75rem 1.5rem}.cancel-btn,.primary-btn,.secondary-btn{border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .2s ease}.primary-btn{background:#2e7d32;color:#fff}.primary-btn:hover{background:#1b5e20}.secondary-btn{background:#e8f5e9;color:#2e7d32}.secondary-btn:hover{background:#c8e6c9}.cancel-btn{background:#f5f5f5;color:#666}.cancel-btn:hover{background:#e0e0e0}button:disabled{cursor:not-allowed;opacity:.7}.address-display{align-items:center;display:flex;gap:1rem}.edit-btn{background:none;border:1px solid #2e7d32;border-radius:4px;color:#2e7d32;cursor:pointer;padding:.5rem 1rem;transition:all .2s ease}.edit-btn:hover{background:#e8f5e9}.address-input-wrapper{align-items:flex-start;display:flex;gap:.5rem}.address-input-wrapper input{flex:1 1}.example-btn{background:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.875rem;padding:.75rem 1rem;transition:all .2s ease;white-space:nowrap}.example-btn:hover{background:#e0e0e0}.helper-text,.loading-text{color:#666;display:block;font-size:.875rem;margin-top:.5rem}.loading-text{font-style:italic}.pac-container{border-radius:4px;box-shadow:0 2px 6px #0000001a;margin-top:2px}.pac-item{cursor:pointer;padding:8px 12px}.pac-item:hover{background-color:#f5f5f5}.pac-item-selected{background-color:#e8f5e9}.form-group input:disabled{background-color:#f5f5f5;cursor:wait}.organizer-dashboard{padding:20px}.organizer-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:20px}.organizer-section h2{border-bottom:1px solid #eee;color:#333;margin-bottom:15px;margin-top:0;padding-bottom:10px}.data-table.organizer-donation-table,.data-table.organizer-foodbank-table{border-collapse:collapse;width:100%}.data-table td,.data-table th{border-bottom:1px solid #ddd;padding:12px 15px;text-align:left}.data-table th{background-color:#f8f8f8;color:#555;font-weight:700}.priority-badge-inline{border-radius:12px;color:#fff;display:inline-block;font-size:.9em;padding:4px 8px}.donation-tabs{border-bottom:1px solid #ccc;margin-bottom:20px}.donation-tabs button{background:none;border:none;border-bottom:3px solid #0000;cursor:pointer;font-size:1em;margin-right:5px;padding:10px 20px;transition:border-color .2s ease,color .2s ease}.donation-tabs button:hover{color:#007bff}.donation-tabs button.active{border-bottom-color:#007bff;color:#007bff;font-weight:700}.donation-tab-content{margin-top:20px}.action-button{border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:.9em;margin-left:5px;padding:6px 12px;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.action-button:hover{border-color:#aaa}.edit-button{background-color:#f0ad4e;border-color:#eea236;color:#fff}.edit-button:hover{background-color:#ec971f;border-color:#d58512}.delete-button{background-color:#d9534f;border-color:#d43f3a;color:#fff}.delete-button:hover{background-color:#c9302c;border-color:#ac2925}.cancel-button,.reset-button{background-color:#f0f0f0;border-color:#ccc;color:#333}.cancel-button:hover,.reset-button:hover{background-color:#e0e0e0;border-color:#bbb}.save-button{background-color:#5cb85c;border-color:#4cae4c;color:#fff}.save-button:hover{background-color:#449d44;border-color:#398439}.add-button{background-color:#337ab7;border-color:#2e6da4;color:#fff;font-size:1em;margin-bottom:15px;padding:8px 15px}.add-button:hover{background-color:#286090;border-color:#204d74}.inline-edit-input{border:1px solid #ccc;border-radius:4px;margin-right:5px;padding:4px 6px}.inline-add-form{background-color:#f9f9f9;border:1px solid #eee;border-radius:5px;margin-bottom:20px;margin-top:15px;padding:20px}.inline-add-form h3{margin-bottom:15px;margin-top:0}.form-row{display:flex;gap:15px;margin-bottom:10px}.form-group{display:flex;flex:1 1;flex-direction:column}.form-group label{font-size:.9em;font-weight:700;margin-bottom:4px}.form-group input[type=date],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;padding:8px;width:100%}.form-group textarea{min-height:60px}.form-actions{margin-top:15px}.error-message{color:#d9534f;font-size:.9em;margin-bottom:10px}.modal-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;overflow:auto;position:fixed;top:0;width:100%;z-index:1000}.modal-content{background-color:#fefefe;border:1px solid #888;border-radius:8px;box-shadow:0 4px 8px 0 #0003,0 6px 20px 0 #00000030;margin:auto;max-width:600px;padding:30px;position:relative;width:80%}.modal-form h3{margin-top:0;text-align:center}.modal-close-button{background:none;border:none;color:#aaa;cursor:pointer;font-size:28px;font-weight:700;position:absolute;right:15px;top:10px}.modal-close-button:focus,.modal-close-button:hover{color:#000;cursor:pointer;text-decoration:none}.forum-container{background-color:#f5f5f5;border-radius:8px;box-shadow:0 2px 10px #0000001a;display:flex;height:calc(100vh - 80px);margin:20px;overflow:hidden}.forum-container.simple{display:block;margin:20px auto;max-width:1000px}.forum-content{background-color:#fff;border-radius:8px;display:flex;flex:1 1;flex-direction:column;height:100%;overflow:hidden}.channel-header{background-color:#5c8d89;border-bottom:1px solid #e6e6e6;color:#fff;padding:15px 20px}.channel-header h2{font-size:18px;margin:0}.messages-container{background-color:#f9f9f9;display:flex;flex:1 1;flex-direction:column;gap:15px;overflow-y:auto;padding:20px}.empty-chat{color:#999;font-style:italic}.empty-chat,.error-messages,.loading-messages{align-items:center;display:flex;height:100%;justify-content:center}.error-messages,.loading-messages{color:#666}.loading-messages p{background-color:#fff}.error-messages p,.loading-messages p{border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:15px 25px}.error-messages p{background-color:#fff1f0;color:#cf1322}.message{align-items:flex-start;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;gap:15px;padding:15px}.message-avatar{border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;width:40px}.message-avatar img{height:100%;object-fit:cover;width:100%}.message-content{flex:1 1}.message-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:5px;position:relative}.message-username{color:#333;font-weight:600}.user-type-badge{background-color:#5c8d89;border-radius:4px;color:#fff;display:inline-block;font-size:11px;font-weight:500;padding:2px 6px;text-transform:uppercase}.message-timestamp{color:#999;font-size:12px}.message-text{color:#333;line-height:1.4;word-break:break-word}.message-input-container{background-color:#fff;border-top:1px solid #e6e6e6;padding:15px}.message-input-container form{display:flex;gap:10px}.message-input-container input{background-color:#f5f5f5;border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;padding:12px 15px}.message-input-container input:focus{background-color:#fff;border-color:#5c8d89;outline:none}.message-input-container button{background-color:#5c8d89;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:0 20px;transition:background-color .2s}.message-input-container button:hover{background-color:#4a7a76}.message-input-container button:disabled{background-color:#d0d0d0;cursor:not-allowed}.delete-message-btn{align-items:center;background-color:initial;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;line-height:1;margin-left:auto;transition:all .2s;width:24px}.delete-message-btn:hover{background-color:#f0f0f0;color:#d63031}.message.own-message{background-color:#f0f8ff}@media (max-width:768px){.forum-container,.forum-container.simple{height:calc(100vh - 60px);margin:10px}.message,.messages-container{padding:10px}}
/*# sourceMappingURL=main.f01edfb0.css.map*/