Spaces:
Running
Running
Download static/css/style.css from VSRAJHAVEL/AgriSense-India: direct link, hf CLI and curl.
- Browser
- Download file 23 kB
-
https://huggingface.co/spaces/VSRAJHAVEL/AgriSense-India/resolve/main/static/css/style.css
- Command line
-
hf download hf://spaces/VSRAJHAVEL/AgriSense-India/static/css/style.css
-
curl -L -o style.css https://huggingface.co/spaces/VSRAJHAVEL/AgriSense-India/resolve/main/static/css/style.css
23 kB
| /* AgriSense India β Glassmorphic + LandingPage Background */ | |
| @import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&display=swap'); | |
| :root { | |
| --green:#00e676;--green-d:#00c853;--green-dim:rgba(0,230,118,.10); | |
| --green-glow:rgba(0,230,118,.20);--white:#fff;--w80:rgba(255,255,255,.8); | |
| --w50:rgba(255,255,255,.5);--w30:rgba(255,255,255,.3);--w10:rgba(255,255,255,.08); | |
| --glass:rgba(10,20,10,.45);--glass-b:rgba(255,255,255,.15); | |
| --glass-strong:rgba(10,20,10,.55); | |
| --radius:22px;--rsm:14px;--rxs:8px; | |
| --blur:blur(20px);--blur-lg:blur(40px); | |
| --tr:all .3s cubic-bezier(.4,0,.2,1); | |
| } | |
| *{margin:0;padding:0;box-sizing:border-box} | |
| html{scroll-behavior:smooth;overscroll-behavior:none;background:#040d04} | |
| body{font-family:'Outfit',sans-serif;color:var(--white);line-height:1.6;min-height:100vh;overflow-x:hidden;background:#040d04;overscroll-behavior:none} | |
| /* ββ BACKGROUND β Landing Page Image (crisp) ββ */ | |
| .bg-pattern{position:fixed;inset:0;z-index:0;pointer-events:none; | |
| background:url('/static/images/LandingPage.png') center/cover no-repeat fixed; | |
| image-rendering:auto; | |
| } | |
| .bg-pattern::before{content:'';position:absolute;inset:0; | |
| background:linear-gradient(180deg,rgba(0,6,0,.25) 0%,rgba(0,4,0,.35) 100%)} | |
| .bg-pattern .blob1,.bg-pattern .blob2,.bg-pattern .blob3{ | |
| position:absolute;border-radius:50%;filter:blur(120px);opacity:.25;mix-blend-mode:screen} | |
| .blob1{width:40vw;height:40vw;top:-5%;left:-5%;background:radial-gradient(circle,rgba(0,230,118,.18),transparent 70%);animation:liq1 20s ease-in-out infinite} | |
| .blob2{width:30vw;height:30vw;top:20%;right:0;background:radial-gradient(circle,rgba(255,255,255,.05),transparent 70%);animation:liq2 25s ease-in-out infinite} | |
| .blob3{width:35vw;height:35vw;bottom:0;left:40%;background:radial-gradient(circle,rgba(0,200,83,.12),transparent 70%);animation:liq3 22s ease-in-out infinite} | |
| @keyframes liq1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(25vw,15vh) scale(1.2)}} | |
| @keyframes liq2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-15vw,10vh) scale(1.1)}} | |
| @keyframes liq3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-10vw,-15vh) scale(1.15)}} | |
| [hidden]{display:none} | |
| /* ββ HEADER (frosted glass) ββ */ | |
| .header{position:sticky;top:0;z-index:100; | |
| background:rgba(5,12,5,.55);backdrop-filter:var(--blur-lg);-webkit-backdrop-filter:var(--blur-lg); | |
| border-bottom:1px solid var(--glass-b);padding:.75rem 2rem} | |
| .header-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between} | |
| .logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit} | |
| .logo-text{font-size:1.4rem;font-weight:800;letter-spacing:-.5px;color:var(--green)} | |
| .logo-sub{font-size:.65rem;color:var(--w50);letter-spacing:.5px} | |
| .nav-links{display:flex;gap:8px} | |
| .nav-link{padding:8px 16px;border-radius:var(--rxs);color:var(--w50);text-decoration:none;font-size:.85rem;font-weight:500;transition:var(--tr)} | |
| .nav-link:hover,.nav-link.active{color:var(--green);background:var(--green-dim)} | |
| .back-btn{padding:8px 20px;border-radius:var(--rsm); | |
| background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| color:var(--green);text-decoration:none;font-size:.85rem;font-weight:600; | |
| border:1px solid var(--green-glow);transition:var(--tr)} | |
| .back-btn:hover{background:var(--green);color:#000} | |
| /* ββ HERO (Premium Split Layout) ββ */ | |
| .hero{position:relative;z-index:1;padding:6rem 2rem 4rem;min-height:80vh;display:flex;align-items:center} | |
| .hero-content{max-width:1300px;margin:0 auto;width:100%} | |
| .hero-top-row{display:grid;grid-template-columns:1.2fr 0.8fr;gap:4rem;align-items:center} | |
| .hero-badge{display:inline-block;padding:8px 24px;border-radius:50px; | |
| background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| color:var(--green);font-size:.8rem;font-weight:700;margin-bottom:1.5rem; | |
| border:1px solid var(--green-glow);text-transform:uppercase;letter-spacing:2px} | |
| .hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;line-height:1.1;margin-bottom:1.5rem;letter-spacing:-1px;text-shadow:0 4px 30px rgba(0,0,0,.6)} | |
| .gradient-text{color:var(--green);text-shadow:0 0 40px var(--green-glow)} | |
| .hero-desc{font-size:1.1rem;color:var(--w80);margin-bottom:2.5rem;line-height:1.8;text-shadow:0 2px 10px rgba(0,0,0,.5);max-width:600px} | |
| .hero-cta{display:flex;gap:1rem;flex-wrap:wrap} | |
| .cta-btn{padding:16px 36px;border-radius:var(--rsm);font-size:1.05rem;font-weight:700;text-decoration:none;transition:var(--tr);display:inline-flex;align-items:center;justify-content:center} | |
| .cta-btn.primary{background:var(--green);color:#000;box-shadow:0 8px 30px var(--green-glow)} | |
| .cta-btn.primary:hover{transform:translateY(-3px);box-shadow:0 12px 40px var(--green-glow);background:var(--green-d)} | |
| .cta-btn.secondary{background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-b);color:var(--white)} | |
| .cta-btn.secondary:hover{border-color:var(--green);color:var(--green);transform:translateY(-3px)} | |
| /* Hero Right Glass Card */ | |
| .hero-glass-card{background:var(--glass-strong);backdrop-filter:var(--blur-lg);-webkit-backdrop-filter:var(--blur-lg);border:1px solid var(--glass-b);border-radius:var(--radius);padding:2.5rem;box-shadow:0 20px 80px rgba(0,0,0,.6);position:relative;overflow:hidden} | |
| .hero-glass-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,transparent,var(--green),transparent)} | |
| .glass-stat-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem} | |
| .glass-stat-row:last-of-type{margin-bottom:0} | |
| .glass-stat{flex:1;text-align:center} | |
| .glass-stat-num{display:block;font-size:2.2rem;font-weight:900;color:var(--green);line-height:1.2;text-shadow:0 0 20px var(--green-glow)} | |
| .glass-stat-label{font-size:.8rem;color:var(--w50);text-transform:uppercase;letter-spacing:1px;font-weight:600} | |
| .glass-stat-divider{width:1px;height:50px;background:var(--glass-b)} | |
| .glass-card-footer{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--glass-b);display:flex;justify-content:center;gap:1rem} | |
| .glass-tag{padding:6px 16px;border-radius:50px;background:rgba(255,255,255,.05);font-size:.75rem;color:var(--w50);border:1px solid var(--glass-b)} | |
| /* Features Strip */ | |
| .features-strip{background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border-top:1px solid var(--glass-b);border-bottom:1px solid var(--glass-b);padding:1.5rem 0;display:flex;justify-content:center;gap:3rem;flex-wrap:wrap;position:relative;z-index:1} | |
| .feature-item{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:600;color:var(--w80);letter-spacing:.5px} | |
| .feature-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green)} | |
| /* ββ SECTIONS ββ */ | |
| .section-title{text-align:center;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;margin-bottom:.5rem} | |
| .section-desc{text-align:center;color:var(--w50);margin-bottom:2rem;font-size:.95rem} | |
| .sub-title{font-size:1.3rem;font-weight:700;margin-bottom:1.2rem} | |
| /* ββ UPLOAD (glass card) ββ */ | |
| .upload-section{position:relative;z-index:1;padding:3rem 2rem} | |
| .upload-container{max-width:700px;margin:0 auto; | |
| background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| border:1px solid var(--glass-b);border-radius:var(--radius);padding:2rem; | |
| box-shadow:0 8px 60px rgba(0,0,0,.4)} | |
| .tab-switcher{display:flex;gap:8px;margin-bottom:1.5rem} | |
| .tab-btn{flex:1;padding:12px;border-radius:var(--rsm);background:rgba(255,255,255,.04); | |
| border:1px solid var(--glass-b);color:var(--w50);font-size:.9rem;font-weight:600; | |
| cursor:pointer;transition:var(--tr);font-family:inherit;backdrop-filter:var(--blur)} | |
| .tab-btn.active{background:var(--green-dim);color:var(--green);border-color:var(--green)} | |
| .tab-content{display:none}.tab-content.active{display:block} | |
| .drop-zone{border:2px dashed var(--w10);border-radius:var(--radius);padding:3rem 2rem; | |
| text-align:center;cursor:pointer;transition:var(--tr);background:rgba(255,255,255,.02)} | |
| .drop-zone:hover,.drop-zone.drag-over{border-color:var(--green);background:var(--green-dim)} | |
| .upload-icon{font-size:2.5rem;margin-bottom:1rem;color:var(--green);font-weight:800} | |
| .drop-zone h3{font-size:1.1rem;margin-bottom:.3rem} | |
| .drop-zone p{color:var(--w50);font-size:.9rem} | |
| .file-types{display:block;margin-top:.8rem;font-size:.75rem;color:var(--w30)} | |
| .camera-container{text-align:center} | |
| #cameraPreview{width:100%;max-height:400px;border-radius:var(--rsm);background:rgba(255,255,255,.02);object-fit:cover} | |
| .camera-controls{display:flex;gap:10px;justify-content:center;margin-top:1rem} | |
| .cam-btn{padding:10px 24px;border-radius:var(--rsm);background:var(--glass); | |
| border:1px solid var(--glass-b);color:var(--white);font-size:.9rem;font-weight:600; | |
| cursor:pointer;transition:var(--tr);font-family:inherit;backdrop-filter:var(--blur)} | |
| .cam-btn:hover{border-color:var(--green);color:var(--green)} | |
| .cam-btn.capture{background:var(--green);color:#000;border-color:var(--green)} | |
| .cam-btn.capture:hover{background:var(--green-d)} | |
| .image-preview{position:relative;margin:1.5rem 0;text-align:center} | |
| .image-preview img{max-width:100%;max-height:300px;border-radius:var(--rsm);border:2px solid var(--green);object-fit:cover} | |
| .remove-btn{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:50%; | |
| background:var(--white);color:#000;border:none;font-size:1rem;cursor:pointer;transition:var(--tr);font-weight:700} | |
| .remove-btn:hover{transform:scale(1.1);background:var(--green)} | |
| .submit-btn{width:100%;padding:16px;border-radius:var(--rsm);background:var(--green);color:#000; | |
| border:none;font-size:1.05rem;font-weight:700;cursor:pointer;transition:var(--tr); | |
| margin-top:1rem;font-family:inherit;letter-spacing:.3px} | |
| .submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px var(--green-glow)} | |
| .submit-btn:disabled{opacity:.3;cursor:not-allowed} | |
| .btn-loader{display:none;align-items:center;justify-content:center;gap:10px} | |
| .btn-loader:not([hidden]){display:flex} | |
| .spinner{width:20px;height:20px;border:3px solid rgba(0,0,0,.2);border-top-color:#000;border-radius:50%;animation:spin .8s linear infinite} | |
| @keyframes spin{to{transform:rotate(360deg)}} | |
| /* ββ HOW IT WORKS (glass cards) ββ */ | |
| .how-section{position:relative;z-index:1;padding:4rem 2rem} | |
| .steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;max-width:1100px;margin:0 auto} | |
| .step-card{background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| border:1px solid var(--glass-b);border-radius:var(--radius);padding:2rem;text-align:center; | |
| transition:var(--tr);position:relative;overflow:hidden} | |
| .step-card:hover{border-color:var(--green);transform:translateY(-5px);box-shadow:0 12px 40px rgba(0,230,118,.08)} | |
| .step-num{position:absolute;top:12px;right:16px;font-size:2.5rem;font-weight:900;color:rgba(0,230,118,.06)} | |
| .step-icon{font-size:.85rem;margin-bottom:1rem;color:var(--green);font-weight:800;letter-spacing:2px} | |
| .step-card h3{font-size:1rem;font-weight:700;margin-bottom:.5rem} | |
| .step-card p{font-size:.85rem;color:var(--w50)} | |
| /* ββ ABOUT ββ */ | |
| .about-section{position:relative;z-index:1;padding:3rem 2rem} | |
| .about-content{max-width:800px;margin:0 auto;text-align:center; | |
| background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| border:1px solid var(--glass-b);border-radius:var(--radius);padding:2.5rem} | |
| .about-content p{color:var(--w50);line-height:1.8;margin-bottom:1.5rem} | |
| .source-badges{display:flex;flex-wrap:wrap;gap:10px;justify-content:center} | |
| .badge{padding:8px 16px;border-radius:50px;background:rgba(255,255,255,.04); | |
| border:1px solid var(--glass-b);font-size:.8rem;color:var(--w50);font-weight:500; | |
| backdrop-filter:var(--blur)} | |
| /* ββ RESULTS PAGE ββ */ | |
| .results-main{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:2rem} | |
| .results-header{text-align:center;margin-bottom:2rem;padding-top:1rem} | |
| .results-title{font-size:1.8rem;font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.4)} | |
| .results-time{color:var(--w30);font-size:.85rem;margin-top:.3rem} | |
| .soil-analysis-section{margin-bottom:2rem} | |
| .soil-card{display:grid;grid-template-columns:280px 1fr;gap:2rem; | |
| background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| border:1px solid var(--glass-b);border-radius:var(--radius);padding:2rem; | |
| box-shadow:0 8px 60px rgba(0,0,0,.4);opacity:0;animation:fadeUp .6s ease forwards} | |
| .soil-image{width:100%;height:250px;object-fit:cover;border-radius:var(--rsm)} | |
| .soil-type-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:50px; | |
| font-weight:700;font-size:1.05rem;border:2px solid;margin-bottom:1rem;color:var(--white); | |
| backdrop-filter:var(--blur)} | |
| .soil-dot{width:12px;height:12px;border-radius:50%} | |
| .confidence-bar-container{margin-bottom:1rem} | |
| .confidence-label{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:6px;color:var(--w50)} | |
| .confidence-value{font-weight:700;color:var(--green)} | |
| .confidence-bar{height:8px;background:var(--w10);border-radius:4px;overflow:hidden} | |
| .confidence-fill{height:100%;border-radius:4px;background:var(--green);transition:width 1.5s cubic-bezier(.4,0,.2,1)} | |
| .soil-desc{color:var(--w50);font-size:.9rem;margin-bottom:.8rem;line-height:1.6} | |
| .soil-regions{font-size:.85rem;color:var(--w30);margin-bottom:1rem} | |
| .all-predictions{margin-top:1rem} | |
| .all-predictions h4{font-size:.8rem;font-weight:600;color:var(--w30);margin-bottom:.8rem;text-transform:uppercase;letter-spacing:1px} | |
| .pred-row{display:flex;align-items:center;gap:10px;margin-bottom:6px} | |
| .pred-name{font-size:.8rem;width:100px;color:var(--w50)} | |
| .pred-bar-bg{flex:1;height:6px;background:var(--w10);border-radius:3px;overflow:hidden} | |
| .pred-bar-fill{height:100%;background:var(--green);border-radius:3px;transition:width 1s ease} | |
| .pred-pct{font-size:.8rem;font-weight:600;width:45px;text-align:right;color:var(--w50)} | |
| /* Soil Properties */ | |
| .soil-props-section{margin-bottom:2.5rem} | |
| .props-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem} | |
| .prop-card{background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| border:1px solid var(--glass-b);border-radius:var(--rsm);padding:1.2rem;text-align:center; | |
| transition:var(--tr);opacity:0;animation:fadeUp .5s ease forwards} | |
| .prop-card:nth-child(1){animation-delay:.1s}.prop-card:nth-child(2){animation-delay:.15s} | |
| .prop-card:nth-child(3){animation-delay:.2s}.prop-card:nth-child(4){animation-delay:.25s} | |
| .prop-card:nth-child(5){animation-delay:.3s}.prop-card:nth-child(6){animation-delay:.35s} | |
| .prop-card:hover{border-color:var(--green);transform:translateY(-3px);box-shadow:0 8px 25px var(--green-dim)} | |
| .prop-icon{font-size:.75rem;margin-bottom:.5rem;color:var(--green);font-weight:700;text-transform:uppercase;letter-spacing:1px} | |
| .prop-label{font-size:.7rem;color:var(--w30);text-transform:uppercase;letter-spacing:.5px} | |
| .prop-value{font-size:.95rem;font-weight:700;margin-top:.3rem;color:var(--green)} | |
| /* ββ CROP CARDS (glass) ββ */ | |
| .recommendations-section{margin-bottom:2.5rem} | |
| .crops-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.5rem} | |
| .crop-card{background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| border:1px solid var(--glass-b);border-radius:var(--radius);padding:1.5rem; | |
| transition:var(--tr);opacity:0;animation:fadeUp .6s ease forwards} | |
| .crop-card:hover{border-color:var(--green);box-shadow:0 16px 50px rgba(0,230,118,.08);transform:translateY(-3px)} | |
| .crop-card.visible{opacity:1} | |
| .crop-header{display:flex;align-items:center;gap:12px;margin-bottom:1rem;flex-wrap:wrap} | |
| .crop-icon{width:40px;height:40px;border-radius:50%; | |
| background:var(--green-dim);backdrop-filter:var(--blur); | |
| border:1px solid var(--green-glow);display:flex;align-items:center;justify-content:center; | |
| font-size:.75rem;font-weight:800;color:var(--green);flex-shrink:0} | |
| .crop-name{font-size:1.05rem;font-weight:700} | |
| .suitability-badge{margin-left:auto;padding:5px 12px;border-radius:50px;font-size:.8rem;font-weight:700;white-space:nowrap} | |
| .suitability-badge.high{background:var(--green-dim);color:var(--green);border:1px solid var(--green-glow)} | |
| .suitability-badge.medium{background:var(--glass);color:var(--w50);border:1px solid var(--glass-b)} | |
| .suitability-badge.low{background:rgba(255,255,255,.02);color:var(--w30);border:1px solid var(--glass-b)} | |
| .crop-desc{font-size:.82rem;color:var(--w50);margin-bottom:1rem;line-height:1.5} | |
| .crop-price-section{background:rgba(0,230,118,.06);backdrop-filter:var(--blur); | |
| border:1px solid var(--green-glow);border-radius:var(--rsm);padding:1rem;margin-bottom:1rem} | |
| .crop-price-section h5{font-size:.82rem;font-weight:700;margin-bottom:.8rem;color:var(--w80)} | |
| .price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px} | |
| .price-item{text-align:center;padding:10px 6px;border-radius:var(--rxs); | |
| background:rgba(0,0,0,.3);backdrop-filter:var(--blur)} | |
| .price-item.msp{background:rgba(0,230,118,.1);border:1px solid var(--green-glow)} | |
| .price-label{display:block;font-size:.6rem;color:var(--w30);text-transform:uppercase;letter-spacing:.5px} | |
| .price-value{display:block;font-size:.85rem;font-weight:700;margin-top:3px} | |
| .price-value.highlight{color:var(--green)} | |
| .crop-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:1rem} | |
| .detail-item{padding:10px 6px;border-radius:var(--rxs); | |
| background:rgba(255,255,255,.03);backdrop-filter:var(--blur); | |
| text-align:center;border:1px solid rgba(255,255,255,.06);transition:var(--tr)} | |
| .detail-item:hover{border-color:var(--green-glow)} | |
| .detail-icon{display:block;font-size:.6rem;margin-bottom:3px;color:var(--green);font-weight:700;text-transform:uppercase;letter-spacing:.5px} | |
| .detail-label{display:block;font-size:.55rem;color:var(--w30);text-transform:uppercase;letter-spacing:.5px} | |
| .detail-value{display:block;font-size:.72rem;font-weight:600;margin-top:3px;color:var(--w80)} | |
| .crop-varieties,.crop-districts{margin-bottom:.8rem} | |
| .crop-varieties h5,.crop-districts h5,.npk-section h5{font-size:.78rem;font-weight:700;margin-bottom:.5rem;color:var(--w50)} | |
| .variety-tags{display:flex;flex-wrap:wrap;gap:5px} | |
| .variety-tag{padding:4px 12px;border-radius:50px;font-size:.7rem; | |
| background:rgba(255,255,255,.04);border:1px solid var(--glass-b);color:var(--w50);font-weight:500; | |
| backdrop-filter:var(--blur)} | |
| .districts-list{font-size:.78rem;color:var(--w30)} | |
| .npk-section{margin-top:.5rem} | |
| .npk-bars{display:flex;flex-direction:column;gap:5px} | |
| .npk-item{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600} | |
| .npk-item span:first-child{width:16px;color:var(--w30)} | |
| .npk-item span:last-child{width:30px;text-align:right;color:var(--w50)} | |
| .npk-bar{flex:1;height:6px;background:var(--w10);border-radius:3px;overflow:hidden} | |
| .npk-fill{height:100%;border-radius:3px;transition:width 1s ease} | |
| .n-fill{background:var(--green)}.p-fill{background:var(--white);opacity:.35}.k-fill{background:var(--green-d)} | |
| .action-section{display:flex;gap:1rem;justify-content:center;margin:2rem 0;flex-wrap:wrap} | |
| .action-btn{padding:14px 32px;border-radius:var(--rsm);font-size:1rem;font-weight:700; | |
| text-decoration:none;cursor:pointer;transition:var(--tr);border:none;font-family:inherit} | |
| .action-btn.primary{background:var(--green);color:#000} | |
| .action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px var(--green-glow)} | |
| .action-btn.secondary{background:var(--glass);color:var(--w50);border:1px solid var(--glass-b); | |
| backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)} | |
| .action-btn.secondary:hover{border-color:var(--green);color:var(--green)} | |
| /* ββ FOOTER ββ */ | |
| .footer{position:relative;z-index:1;text-align:center;padding:2rem 2rem 4rem; | |
| border-top:1px solid var(--glass-b);margin-top:2rem;} | |
| .footer-info-box{max-width:800px;margin:0 auto 2rem;padding:1.5rem; | |
| background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| border:1px solid var(--glass-b);border-radius:var(--rsm); | |
| box-shadow:0 10px 40px rgba(0,0,0,.2);} | |
| .footer-title{color:var(--green);font-size:1.1rem;font-weight:700;margin-bottom:.5rem;} | |
| .footer-sub{font-size:.85rem;color:var(--w80);line-height:1.5;} | |
| /* Developer Profile Box */ | |
| .developer-profile{max-width:600px;margin:2.5rem auto 1rem;padding:1.8rem; | |
| background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur); | |
| border:1px solid var(--green-glow);border-radius:var(--rsm); | |
| box-shadow:0 10px 40px rgba(0,230,118,.05);transition:var(--tr)} | |
| .developer-profile:hover{border-color:var(--green);box-shadow:0 15px 50px rgba(0,230,118,.1);transform:translateY(-2px)} | |
| .developer-profile h4{color:var(--green);font-size:1.1rem;font-weight:800;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px} | |
| .developer-profile p{color:var(--w80);font-size:.9rem;line-height:1.6;margin-bottom:1.2rem} | |
| .dev-link{display:inline-block;padding:8px 24px;background:rgba(0,230,118,.1); | |
| border:1px solid var(--green);color:var(--green);text-decoration:none; | |
| border-radius:50px;font-size:.85rem;font-weight:600;transition:var(--tr)} | |
| .dev-link:hover{background:var(--green);color:#000;box-shadow:0 0 20px var(--green-glow)} | |
| @keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}} | |
| /* ββ RESPONSIVE ββ */ | |
| @media(max-width:992px){ | |
| .hero-top-row{grid-template-columns:1fr;text-align:center} | |
| .hero-desc{margin:0 auto 2.5rem} | |
| .hero-cta{justify-content:center} | |
| .features-strip{gap:1.5rem} | |
| } | |
| @media(max-width:768px){ | |
| .bg-pattern { transform: rotate(90deg) scale(1.8); } | |
| .hero { padding: 2rem 1.5rem; min-height: auto; } | |
| .hero-title { font-size: 2rem; } | |
| .hero-desc { font-size: 0.95rem; margin-bottom: 1.5rem; } | |
| .hero-glass-card { padding: 1.5rem; } | |
| .cta-btn { width: 100%; padding: 14px; } | |
| .glass-stat-row { flex-direction: column; gap: 1rem; } | |
| .glass-stat-divider { width: 100%; height: 1px; margin: 0.5rem 0; } | |
| .soil-card{grid-template-columns:1fr} | |
| .soil-image{height:200px} | |
| .crops-grid{grid-template-columns:1fr} | |
| .crop-details-grid,.price-grid{grid-template-columns:repeat(2,1fr)} | |
| .header-content{flex-direction:column;gap:8px} | |
| .nav-links{display:none} | |
| .props-grid{grid-template-columns:repeat(2,1fr)} | |
| .steps-grid{grid-template-columns:1fr} | |
| .crop-header{gap:8px}.suitability-badge{margin-left:0} | |
| } | |
| @media print{ | |
| body{background:#fff;color:#000} | |
| .bg-pattern,.header,.footer,.action-section,.back-btn{display:none} | |
| .soil-card,.crop-card,.prop-card{border:1px solid #ddd;box-shadow:none;background:#fff;backdrop-filter:none} | |
| .crop-card{break-inside:avoid} | |
| } | |