:root{--primary: #2d5a27;--primary-light: #4c8a41;--secondary: #d4a017;--accent: #e67e22;--background: #fdfdfd;--surface: #ffffff;--text-main: #1a1a1a;--text-muted: #666666;--error: #e74c3c;--success: #27ae60;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--transition: all .3s ease}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-main);background-color:var(--background);line-height:1.6}h1,h2,h3,h4{color:var(--primary);margin-bottom:1rem}a{text-decoration:none;color:inherit;transition:var(--transition)}button{cursor:pointer;border:none;outline:none;background:none;font-family:inherit;transition:var(--transition)}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.glass{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.grid{display:grid;gap:2rem}@media(min-width:768px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}}@media(min-width:1024px){.grid-4{grid-template-columns:repeat(4,1fr)}}.btn{padding:.8rem 1.5rem;border-radius:var(--radius-md);font-weight:600;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-light);transform:translateY(-2px)}.btn-secondary{border:2px solid var(--primary);color:var(--primary)}.btn-secondary:hover{background-color:var(--primary);color:#fff}@media(max-width:768px){body{font-size:1rem;line-height:1.6}.container{padding:0 1rem}.grid{gap:1rem}.btn{padding:.8rem 1.2rem;font-size:1rem}}.notification-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.notification{pointer-events:auto;min-width:300px;max-width:450px;padding:1rem;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:12px;animation:slideIn .3s ease-out;border-left:4px solid transparent}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.notification.success{border-left-color:var(--success);color:#155724;background:#d4eddaf2}.notification.error{border-left-color:var(--error);color:#721c24;background:#f8d7daf2}.notification.info{border-left-color:var(--primary);color:#0c5460;background:#d1ecf1f2}.notification-icon{display:flex;align-items:center}.notification-content{flex:1;font-weight:500;font-size:.95rem}.notification-close{opacity:.5;transition:var(--transition)}.notification-close:hover{opacity:1}@media(max-width:480px){.notification-container{inset:auto 10px 20px}.notification{min-width:auto}}.navbar{position:sticky;top:0;z-index:1000;padding:1rem 0;box-shadow:var(--shadow-sm)}.nav-content{display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.5rem;font-weight:800;color:var(--primary)}.logo span{color:var(--secondary)}.nav-links{display:flex;align-items:center;gap:2rem}.nav-links a{font-weight:500}.nav-links a:hover{color:var(--primary)}.mobile-menu{display:none;color:var(--primary)}@media(max-width:768px){.navbar{padding:.8rem 0}.logo{font-size:1.25rem}.mobile-menu{display:block}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--surface);padding:1.5rem;box-shadow:var(--shadow-md);gap:1rem}.nav-links.active{display:flex}.nav-links a{font-size:1rem;text-align:center;width:100%}}.main-footer{background-color:#1a1a1a;color:#fff;padding:5rem 0 0;margin-top:5rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:4rem;padding-bottom:4rem}.footer-logo{font-size:1.8rem;font-weight:800;color:#fff;margin-bottom:1.5rem}.footer-logo span{color:var(--secondary)}.footer-desc{color:#aaa;line-height:1.6;margin-bottom:2rem;max-width:300px}.social-links{display:flex;gap:1.5rem}.social-links a{color:#fff;opacity:.7;transition:var(--transition)}.social-links a:hover{opacity:1;color:var(--secondary);transform:translateY(-3px)}.footer-section h3{color:#fff;font-size:1.2rem;margin-bottom:2rem;position:relative}.footer-section h3:after{content:"";position:absolute;left:0;bottom:-8px;width:40px;height:2px;background-color:var(--secondary)}.footer-contact,.footer-links{list-style:none;padding:0}.footer-contact li,.footer-links li{margin-bottom:1.2rem;display:flex;align-items:center;gap:1rem;color:#aaa}.footer-links a{transition:var(--transition)}.footer-links a:hover{color:var(--secondary);padding-left:5px}.footer-bottom{background-color:#111;padding:2rem 0;text-align:center;border-top:1px solid #333333}.footer-bottom p{color:#666;font-size:.9rem}@media(max-width:768px){.main-footer{padding:4rem 1.5rem 0;margin-top:3rem}.footer-content{gap:2.5rem;padding-bottom:3rem}.footer-section h3{margin-bottom:1.5rem}}.hero{padding:8rem 0;text-align:center;background:linear-gradient(135deg,#1e3c1a,#2d5a27);color:#fff;margin-bottom:4rem;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:url(https://www.transparenttextures.com/patterns/dark-matter.png);opacity:.1}.hero-content{position:relative;z-index:2}.hero h1{font-size:3.5rem;font-weight:800;color:#fff;max-width:900px;margin:0 auto 1.5rem;line-height:1.1;letter-spacing:-1px}.hero h1 span{color:var(--secondary);display:inline-block}.hero p{font-size:1.4rem;opacity:.9;margin-bottom:3.5rem;font-weight:400;max-width:600px;margin-left:auto;margin-right:auto}.search-bar-container{max-width:700px;margin:0 auto;background:#fff;padding:.5rem;border-radius:50px;display:flex;box-shadow:var(--shadow-lg)}.search-input{flex:1;display:flex;align-items:center;padding:0 1.5rem;color:var(--text-muted)}.search-input input{border:none;outline:none;width:100%;padding:.8rem;font-size:1rem}.category-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:3rem}.category-tag{padding:.6rem 1.2rem;background:var(--surface);border:1px solid #ddd;border-radius:30px;font-weight:500}.category-tag.active{background:var(--primary);color:#fff;border-color:var(--primary)}.business-card{background:var(--surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);transition:var(--transition)}.business-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.card-image{height:200px;background:#eee;display:flex;align-items:center;justify-content:center;color:#ccc}.card-image img{width:100%;height:100%;object-fit:cover}.card-body{padding:1.5rem}.category-label{font-size:.85rem;color:var(--primary);font-weight:600;text-transform:uppercase}.description{margin:1rem 0;color:var(--text-muted);font-size:.95rem;text-align:justify}.location{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.9rem;color:var(--text-muted)}.full-width{width:100%;justify-content:center}@media(max-width:768px){.hero{padding:3rem 1rem;margin-bottom:2rem}.hero h1{font-size:1.8rem;line-height:1.1;margin-bottom:1rem;letter-spacing:-.5px}.hero p{font-size:1rem;margin-bottom:2rem;line-height:1.5}.search-bar-container{flex-direction:column;border-radius:var(--radius-lg);padding:.8rem;gap:.8rem;margin-bottom:0}.search-input{padding:0 .5rem}.search-input input{padding:.6rem;font-size:1rem}.search-bar-container button{width:100%;border-radius:var(--radius-md);justify-content:center;padding:.8rem;font-size:1rem}.category-grid{justify-content:center;margin-bottom:2rem;gap:.8rem}.card-body{padding:1.2rem}.card-body h2{font-size:1.4rem}.description{font-size:.95rem}}.auth-container{display:flex;justify-content:center;align-items:center;min-height:80vh}.auth-card{width:100%;max-width:450px;padding:3rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);text-align:center}.auth-card h2{font-size:2rem;margin-bottom:.5rem}.auth-card h2 span{color:var(--secondary)}.auth-card p{color:var(--text-muted);margin-bottom:2rem}.form-group{text-align:left;margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.8rem 1rem;border:1px solid #ddd;border-radius:var(--radius-md);font-size:1rem;transition:var(--transition)}.form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2d5a271a;outline:none}.error-box{background:#fff5f5;color:#e53e3e;padding:1rem;border-radius:var(--radius-md);border:1px solid #feb2b2;margin-bottom:1.5rem;font-size:.95rem;font-weight:500;display:flex;align-items:center;justify-content:center}.animate-shake{animation:shake .4s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.auth-footer{margin-top:2rem;font-size:.9rem}.auth-footer a{color:var(--primary);font-weight:600}.dashboard-container{padding:4rem 1.5rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.add-business-form{margin-bottom:4rem;padding:2.5rem;border-radius:var(--radius-lg)}.add-business-form h3{margin-bottom:2rem;font-size:1.5rem}.span-2{grid-column:span 2}.admin-card .admin-actions{display:flex;gap:.5rem;margin-top:1rem}.btn.sm{padding:.5rem}.btn.delete:hover{background-color:var(--error);color:#fff;border-color:var(--error)}.verified-badge{position:absolute;top:1rem;right:1rem;background:var(--success);color:#fff;padding:.3rem .6rem;border-radius:20px;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:.3rem;z-index:10}.placeholder{color:#ccc}@media(max-width:768px){.dashboard-container{padding:2.5rem 1rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:1.5rem;margin-bottom:2.5rem}.dashboard-header h1{font-size:2.2rem}.add-business-form{padding:1.5rem}.add-business-form h3{font-size:1.8rem}.span-2{grid-column:span 1}.grid-2{grid-template-columns:1fr}}.image-upload-area{margin-top:.5rem;display:flex;flex-direction:column;gap:1rem}.images-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.5rem}.image-preview{position:relative;width:200px;height:150px;border-radius:var(--radius-md);overflow:hidden;border:2px solid var(--primary)}.image-preview img{width:100%;height:100%;object-fit:cover}.btn-remove{position:absolute;top:5px;right:5px;background:#0009;color:#fff;width:25px;height:25px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;line-height:1;transition:var(--transition);border:none;cursor:pointer}.btn-remove:hover{background:var(--error)}.status-text{font-size:.9rem;color:var(--primary);font-weight:500}.input-with-button{display:flex;gap:.5rem;margin-bottom:1rem}.input-with-button input{flex:1}.missions-list{list-style:none;display:flex;flex-wrap:wrap;gap:.8rem}.mission-item{background:#f0f4f0;color:var(--primary);padding:.4rem .8rem;border-radius:20px;font-size:.9rem;display:flex;align-items:center;gap:.5rem;border:1px solid var(--primary-light)}.mission-item button{background:none;border:none;color:var(--primary);font-size:1.2rem;line-height:1;padding:0;margin-top:-2px}.mission-item button:hover{color:var(--error)}.detail-page{padding:3rem 0}.back-link{display:flex;align-items:center;gap:.5rem;color:var(--text-muted);margin-bottom:2rem;font-weight:500}.back-link:hover{color:var(--primary)}.detail-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:3rem;border-bottom:1px solid #eee;padding-bottom:2rem}.detail-header h1{font-size:3rem;margin:.5rem 0}.location-text{display:flex;align-items:center;gap:.5rem;color:var(--text-muted)}.header-actions{display:flex;gap:1rem}.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.gallery{margin-bottom:2rem;padding:1rem;border-radius:var(--radius-lg)}.main-image-container{width:100%;height:450px;border-radius:var(--radius-md);overflow:hidden;margin-bottom:1rem}.main-image{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.thumbnails{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem}.thumbnail{width:80px;height:60px;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;border:2px solid transparent;transition:var(--transition);flex-shrink:0}.thumbnail:hover{transform:translateY(-2px)}.thumbnail.active{border-color:var(--primary)}.thumbnail img{width:100%;height:100%;object-fit:cover}.placeholder-large{width:100%;height:400px;background:#f0f0f0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);color:#ccc;margin-bottom:2rem}.description-section h2{margin-bottom:1.5rem}.contact-card{padding:2rem;border-radius:var(--radius-lg);position:sticky;top:100px}.contact-card h3{margin-bottom:1.5rem}.contact-item{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:flex-start}.contact-item label{display:block;font-size:.8rem;color:var(--text-muted);font-weight:600;text-transform:uppercase}.contact-item p{font-weight:500}.description-section{margin-bottom:3rem;text-align:justify}.missions-section h2{margin-bottom:1.5rem}.missions-display-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.mission-display-item{display:flex;align-items:center;gap:.8rem;padding:1rem;background:#f9fbf9;border-radius:var(--radius-md);color:var(--primary);font-weight:500}.mission-display-item svg{color:var(--success);flex-shrink:0}@media(max-width:768px){.detail-page{padding:1rem 0}.back-link{font-size:.95rem;margin-bottom:1.5rem}.detail-header{margin-bottom:1.5rem;padding-bottom:1.5rem;gap:1rem}.detail-header h1{font-size:2.2rem;line-height:1.1;margin:.5rem 0}.category-tag{font-size:1rem;padding:.4rem 1rem}.location-text{font-size:.95rem;gap:.5rem}.header-actions{width:100%;display:flex;flex-direction:column;gap:.8rem}.header-actions .btn{width:100%;padding:.8rem;font-size:1rem;justify-content:center}.main-image-container{height:300px;margin-bottom:1.5rem}.description-section h2,.missions-section h2{font-size:1.5rem;margin-bottom:1rem}.description-section p{font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.mission-display-item{padding:1rem;font-size:1rem;gap:.8rem}.contact-card{padding:1.5rem}.contact-card h3{font-size:1.2rem}.contact-item label{font-size:.85rem}.contact-item p{font-size:1rem}}@media(max-width:1024px){.detail-grid{grid-template-columns:1fr}.detail-header{flex-direction:column;align-items:flex-start;gap:2rem}}
