body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-box{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:3rem;width:100%}.login-box h1{color:#1e293b;font-size:2rem;margin:0 0 .5rem;text-align:center}.tagline{color:#64748b;font-size:.95rem;margin-bottom:2rem;text-align:center}.auth-form{gap:1.5rem}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#334155;font-size:.9rem;font-weight:600}.form-group input{border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s}.form-group input:focus{border-color:#667eea;outline:none}.auth-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:transform .2s,box-shadow .2s}.auth-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.auth-button:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#fee2e2;color:#991b1b}.error-message,.success-message{border-radius:8px;font-size:.9rem;padding:.75rem}.success-message{background:#dcfce7;color:#166534}.toggle-auth{border-top:1px solid #e2e8f0;color:#64748b;margin-top:2rem;padding-top:2rem;text-align:center}.link-button{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;text-decoration:underline}.trust-badge{border-radius:8px;margin-top:1.5rem;padding:.75rem;text-align:center}:root{--primary:#2d6a4f;--primary-light:#52b788;--primary-dark:#1b4332;--primary-gradient:linear-gradient(135deg,#2d6a4f,#52b788);--blue:#2563eb;--blue-dark:#1d4ed8;--red:#ef4444;--red-dark:#dc2626;--green:#16a34a;--green-dark:#15803d;--yellow:#f59e0b;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--shadow-sm:0 2px 10px #0000001a;--shadow-md:0 4px 20px #0000001a;--shadow-lg:0 20px 50px #0000001a;--radius:12px;--radius-sm:8px;--radius-pill:9999px;--touch-target:44px;--transition:all 0.2s ease}*{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;margin:0}.App{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.App-header{background:#fffffff2;box-shadow:0 2px 10px #0000001a;box-shadow:var(--shadow-sm);padding:2rem;text-align:center}.App-header h1{color:#1e293b;color:var(--gray-800);font-size:2.5rem;margin:0}.App-header p{color:#64748b;color:var(--gray-500);font-size:1.1rem;margin:.5rem 0 0}.header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.header-top h1{font-size:2.5rem;margin:0}.user-menu{align-items:center;display:flex;gap:1rem}.company-name{background:#f1f5f9;background:var(--gray-100);border-radius:8px;border-radius:var(--radius-sm);color:#475569;color:var(--gray-600);font-size:.9rem;font-weight:600;padding:.5rem 1rem}.main-nav{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--gray-200);display:flex;gap:.5rem;margin-top:1.5rem;padding-bottom:0}.nav-btn{background:none;border:none;border-bottom:3px solid #0000;color:#64748b;color:var(--gray-500);cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:-2px;padding:.75rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.nav-btn.active,.nav-btn:hover{color:#2563eb;color:var(--blue)}.nav-btn.active{border-bottom:3px solid #2563eb;border-bottom:3px solid var(--blue)}.container{margin:2rem auto;max-width:1200px;padding:0 1rem}.view-section{display:flex;flex-direction:column;gap:2rem}.upload-section{background:#fff;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 20px #0000001a;box-shadow:var(--shadow-md);margin-bottom:2rem;padding:2rem}.upload-section h2{color:#1e293b;color:var(--gray-800);margin-top:0}.upload-type-selector{display:flex;gap:1rem;margin-bottom:1.5rem}.type-option{align-items:center;background:#fff;border:2px solid #e2e8f0;border:2px solid var(--gray-200);border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--gray-500);cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:.5rem;justify-content:center;min-height:44px;min-height:var(--touch-target);padding:1rem;transition:all .2s ease;transition:var(--transition)}.type-option input{display:none}.type-option.active{background:#eff6ff;border-color:#2563eb;border-color:var(--blue);color:#1e40af}.type-option:hover:not(.active){background:#f8fafc;background:var(--gray-50);border-color:#cbd5e1;border-color:var(--gray-300)}.file-input{border:2px dashed #cbd5e1;border:2px dashed var(--gray-300);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:block;margin:1rem 0;padding:.5rem;width:100%}.upload-button{background:#2563eb;background:var(--blue);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:1rem 2rem;transition:all .2s ease;transition:var(--transition)}.upload-button:hover:not(:disabled){background:#1d4ed8;background:var(--blue-dark)}.upload-button:disabled{background:#94a3b8;background:var(--gray-400);cursor:not-allowed}.logout-button{background:#ef4444;background:var(--red);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.5rem 1rem;transition:all .2s ease;transition:var(--transition)}.logout-button:hover{background:#dc2626;background:var(--red-dark)}.export-button{align-items:center;background:#15803d;background:var(--green-dark);border:none;border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 2px 5px #16653433;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;min-height:44px;min-height:var(--touch-target);padding:.75rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.export-button:hover:not(:disabled){background:#14532d}.export-button:disabled{background:#94a3b8;background:var(--gray-400);cursor:not-allowed}.save-button{align-items:center;background:#2563eb;background:var(--blue);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;min-height:44px;min-height:var(--touch-target);padding:.75rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.save-button:hover:not(:disabled){background:#1d4ed8;background:var(--blue-dark)}.save-button.saved{background:#15803d;background:var(--green-dark);cursor:default}.save-button:disabled{cursor:not-allowed;opacity:.7}.action-buttons{border-top:2px solid #e2e8f0;border-top:2px solid var(--gray-200);display:flex;gap:1rem;margin-top:2rem;padding-top:2rem}.tabs{display:flex;gap:1rem;margin-bottom:1.5rem}.tab-btn{background:#e2e8f0;background:var(--gray-200);border:none;border-radius:8px 8px 0 0;border-radius:var(--radius-sm) var(--radius-sm) 0 0;color:#475569;color:var(--gray-600);cursor:pointer;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.75rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.tab-btn.active{background:#fff;box-shadow:0 -2px 10px #0000000d;color:#2563eb;color:var(--blue)}.summary-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.card{background:#fff;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 20px #0000001a;box-shadow:var(--shadow-md);padding:1.5rem;text-align:center}.card.highlight{border-left:4px solid #2563eb;border-left:4px solid var(--blue)}.card h3{color:#64748b;color:var(--gray-500);font-size:.9rem;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.card .metric{color:#1e293b;color:var(--gray-800);font-size:2rem;font-weight:700;margin-bottom:.5rem}.card .subtext{color:#94a3b8;color:var(--gray-400);font-size:.9rem}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.dashboard-header h2{color:#1e293b;color:var(--gray-800);margin:0}table{border-collapse:collapse;margin-top:1rem;width:100%}th{background:#f1f5f9;background:var(--gray-100);border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--gray-200);color:#475569;color:var(--gray-600);font-weight:600;text-align:left}td,th{padding:1rem}td{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--gray-200);color:#1e293b;color:var(--gray-800)}tr:hover{background:#f8fafc;background:var(--gray-50)}.review-table{border-collapse:collapse;width:100%}.flagged-row{background:#fffbeb}.flagged-row td{border-bottom:1px solid #fcd34d}.emission-cell{color:#2563eb;color:var(--blue);font-weight:600}.chart-section{background:#fff;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 20px #0000001a;box-shadow:var(--shadow-md);margin-bottom:2rem;padding:2rem}.chart-section h3{color:#475569;color:var(--gray-600);font-size:1.1rem;font-weight:600;margin-bottom:1rem;margin-top:0}.data-table{background:#fff;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 20px #0000001a;box-shadow:var(--shadow-md);margin-bottom:2rem;padding:2rem}.data-table h3{color:#475569;color:var(--gray-600);font-size:1.1rem;font-weight:600;margin-bottom:1rem;margin-top:0}.review-section{background:#fff;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 20px #0000001a;box-shadow:var(--shadow-md);padding:2rem}.review-instructions{color:#64748b;color:var(--gray-500);margin-bottom:1.5rem}.all-clear{background:#dcfce7;border-radius:8px;border-radius:var(--radius-sm);color:#166534;font-weight:600;padding:2rem;text-align:center}.badge{background:#fecaca;border-radius:4px;color:#991b1b;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.edit-input{border:1px solid #cbd5e1;border:1px solid var(--gray-300);border-radius:6px;font-size:.9rem;min-height:44px;min-height:var(--touch-target);padding:.5rem;width:100%}.edit-input:focus{border-color:#2563eb;border-color:var(--blue);box-shadow:0 0 0 2px #2563eb33;outline:none}.trust-badge{align-items:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:9999px;border-radius:var(--radius-pill);color:#166534;display:inline-flex;font-size:.85rem;font-weight:500;gap:.5rem;margin-top:1rem;padding:.5rem 1rem}.badge-icon{font-size:1rem}.empty-state,.loading-state{background:#fff;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 20px #0000000d;color:#64748b;color:var(--gray-500);padding:3rem;text-align:center}.empty-state-chart{background:#f8fafc;background:var(--gray-50);border:1px dashed #cbd5e1;border:1px dashed var(--gray-300);border-radius:12px;border-radius:var(--radius);color:#475569;color:var(--gray-600);padding:2rem;text-align:center}.error{background:#fee2e2;color:#991b1b;margin-top:1rem}.error,.success-banner{border-radius:8px;border-radius:var(--radius-sm);padding:1rem}.success-banner{background:#dcfce7;border:1px solid #86efac;color:#166534;font-weight:600;margin-bottom:1.5rem;text-align:center}.table-footer{border-top:1px solid #e2e8f0;border-top:1px solid var(--gray-200);color:#94a3b8;color:var(--gray-400);font-size:.85rem;padding:1rem;text-align:center}.skeleton{background:var(--gray-100)}.skeleton-text.title{height:1.5rem;margin-bottom:1rem;width:40%}.skeleton-box{border-radius:8px;border-radius:var(--radius-sm);height:120px;margin-bottom:1rem;width:100%}.skeleton-table-row{border-radius:6px;height:48px;margin-bottom:.75rem;width:100%}.skeleton-circle{border-radius:50%;height:40px;margin-right:1rem;width:40px}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.landing-page{color:#1e293b;color:var(--gray-800);display:flex;flex-direction:column;line-height:1.6;min-height:100vh}.landing-nav{align-items:center;display:flex}.nav-links{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.nav-links a{color:#4a4a6a;font-size:.95rem;font-weight:500;position:relative;text-decoration:none}.nav-links a,.nav-links a:after{transition:all .2s ease;transition:var(--transition)}.nav-links a:after{background:#2d6a4f;background:var(--primary);bottom:-4px;content:"";height:2px;left:0;position:absolute;width:0}.nav-links a:hover{color:#2d6a4f;color:var(--primary)}.nav-links a:hover:after{width:100%}.landing-badge{background:#dbeafe;border-radius:9999px;border-radius:var(--radius-pill);color:#1d4ed8;display:inline-block;font-size:.85rem;font-weight:600;margin-bottom:1rem;padding:.25rem .75rem}.hero-section{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;min-height:100vh;padding-top:72px}.hero-container{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;padding:4rem 2rem}.hero-content,.hero-image{flex:1 1}.hero h1{color:#0f172a;color:var(--gray-900);font-size:3.5rem;line-height:1.1;margin-bottom:1.5rem}.hero .highlight{color:#16a34a;color:var(--green)}.hero p{color:#475569;color:var(--gray-600);font-size:1.2rem;margin-bottom:2rem;max-width:500px}.hero-buttons{display:flex;gap:1rem;margin-bottom:1rem}.hero-subtext{color:#64748b;color:var(--gray-500);font-size:.875rem}.hero-gif-container{animation:float 6s ease-in-out infinite}.hero-gif{border:1px solid #ffffff1a;border-radius:12px;border-radius:var(--radius);box-shadow:0 20px 50px #0000001a;box-shadow:var(--shadow-lg);max-width:600px;transition:all .2s ease;transition:var(--transition);width:100%}.hero-gif:hover{box-shadow:0 30px 80px #0003;transform:scale(1.02)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.mock-dashboard{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--gray-200);border-radius:12px;border-radius:var(--radius);box-shadow:0 20px 50px #0000001a;box-shadow:var(--shadow-lg);overflow:hidden}.mock-header{background:#f1f5f9;background:var(--gray-100);display:flex;gap:.5rem;padding:.75rem 1rem}.mock-dot{border-radius:50%;height:10px;width:10px}.mock-dot.red{background:#ef4444;background:var(--red)}.mock-dot.yellow{background:#f59e0b;background:var(--yellow)}.mock-dot.green{background:#22c55e}.mock-body{padding:1.5rem}.mock-chart{background:#f0fdf4;border-radius:8px;border-radius:var(--radius-sm);height:120px;margin-bottom:1rem}.mock-row{background:#f1f5f9;background:var(--gray-100);border-radius:4px;height:20px;margin-bottom:.5rem}.features{background:#f8fafc;background:var(--gray-50);padding:5rem 2rem;text-align:center}.features h2{color:#0f172a;color:var(--gray-900);font-size:2.5rem;margin-bottom:3rem}.feature-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px}.feature-card{background:#fff;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 6px #0000000d;padding:2rem;text-align:left}.feature-card .icon{font-size:2rem;margin-bottom:1rem}.feature-card h3{color:#0f172a;color:var(--gray-900);margin-bottom:.5rem}.feature-card p{color:#475569;color:var(--gray-600);font-size:.95rem}.pricing{padding:5rem 2rem;text-align:center}.pricing h2{color:#0f172a;color:var(--gray-900);font-size:2.5rem;margin-bottom:3rem}.pricing-grid{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin:0 auto;max-width:800px}.pricing-card{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--gray-200);border-radius:12px;border-radius:var(--radius);padding:2rem;position:relative;text-align:left;width:300px}.pricing-card.featured{border:2px solid #16a34a;border:2px solid var(--green);box-shadow:0 10px 30px #16a34a1a}.popular-badge{background:#16a34a;background:var(--green);border-radius:9999px;border-radius:var(--radius-pill);color:#fff;font-size:.8rem;font-weight:700;left:50%;padding:.25rem 1rem;position:absolute;top:-12px;transform:translateX(-50%)}.pricing-card h3{font-size:1.25rem;margin-bottom:.5rem}.pricing-card .price{color:#0f172a;color:var(--gray-900);font-size:2.5rem;font-weight:800;margin-bottom:1.5rem}.pricing-card .price span{color:#64748b;color:var(--gray-500);font-size:1rem;font-weight:400}.pricing-card ul{list-style:none;margin-bottom:2rem;padding:0}.pricing-card li{border-bottom:1px solid #f1f5f9;border-bottom:1px solid var(--gray-100);color:#334155;color:var(--gray-700);padding:.5rem 0}.pricing-card button{width:100%}.btn-primary{background:#16a34a;background:var(--green);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.875rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.btn-primary:hover{background:#15803d;background:var(--green-dark)}.btn-secondary{background:#fff;border:1px solid #cbd5e1;border:1px solid var(--gray-300);border-radius:8px;border-radius:var(--radius-sm);color:#1e293b;color:var(--gray-800);cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.875rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.btn-secondary:hover{background:#f8fafc;background:var(--gray-50)}.btn-outline{background:#0000;border:2px solid #2d6a4f;border:2px solid var(--primary);border-radius:8px;border-radius:var(--radius-sm);color:#2d6a4f;color:var(--primary);cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.75rem 2rem;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.btn-outline:hover{background:#2d6a4f;background:var(--primary);box-shadow:0 4px 12px #2d6a4f4d;color:#fff;transform:translateY(-2px)}.btn-gradient{animation:gradientFlow 4s ease-in-out infinite;background:linear-gradient(135deg,#2d6a4f,#52b788);background:var(--primary-gradient);background-size:300% 300%;border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;min-height:var(--touch-target);overflow:hidden;padding:.75rem 2rem;position:relative;transition:all .2s ease;transition:var(--transition)}.btn-gradient:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s;width:100%}.btn-gradient:hover:before{left:100%}.btn-gradient:hover{animation-duration:2s;box-shadow:0 8px 25px #2d6a4f66;transform:translateY(-3px)}.btn-gradient:active{transform:translateY(0)}.header-cta.btn-gradient{font-size:.95rem;padding:.6rem 1.5rem}.btn-primary.btn-gradient{font-size:1rem;padding:.75rem 2rem}@keyframes gradientFlow{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.headline-animated{-webkit-text-fill-color:#0000;animation:gradientFlow 6s ease-in-out infinite;background:linear-gradient(135deg,#1a1a2e,#2d6a4f 30%,#52b788 60%,#2d6a4f);-webkit-background-clip:text;background-clip:text;background-size:300% 300%;font-size:3.5rem;font-weight:800;line-height:1.2;margin-bottom:1.5rem}.headline-animated .highlight{-webkit-text-fill-color:#0000;animation:none;background:linear-gradient(135deg,#1b4332,#2d6a4f);-webkit-background-clip:text;background-clip:text}.logo-text-animated{-webkit-text-fill-color:#0000;animation:gradientFlow 4s ease-in-out infinite;background:linear-gradient(135deg,#2d6a4f,#52b788 50%,#2d6a4f);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;font-weight:700}.logo-icon-animated{animation:iconPulse 3s ease-in-out infinite;display:inline-block;font-size:1.8rem}@keyframes iconPulse{0%{filter:drop-shadow(0 0 0 rgba(45,106,79,0));transform:scale(1) rotate(0deg)}50%{filter:drop-shadow(0 0 15px rgba(82,183,136,.6));transform:scale(1.1) rotate(-5deg)}to{filter:drop-shadow(0 0 0 rgba(45,106,79,0));transform:scale(1) rotate(0deg)}}.main-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #0000000d;height:72px;left:0;padding:0 2rem;position:fixed;right:0;top:0;z-index:1000}.header-container,.main-header{align-items:center;display:flex}.header-container{justify-content:space-between;margin:0 auto;max-width:1200px;width:100%}.header-left,.logo{align-items:center;display:flex}.logo{color:#1a1a2e;font-size:1.5rem;font-weight:700;gap:.5rem;text-decoration:none}.logo-icon{font-size:1.8rem}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2d6a4f,#52b788);background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text}.header-right{align-items:center;display:flex;gap:1rem}.header-login{background:#0000;border:none;color:#4a4a6a;cursor:pointer;font-weight:500;min-height:44px;min-height:var(--touch-target);padding:.5rem 1rem;transition:all .2s ease;transition:var(--transition)}.header-login:hover{color:#2d6a4f;color:var(--primary)}.header-cta{background:#2d6a4f;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.6rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.header-cta:hover{background:#1b4332;background:var(--primary-dark);box-shadow:0 4px 12px #2d6a4f4d;transform:translateY(-2px)}.header-dashboard-btn{background:#2d6a4f;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;min-height:44px;min-height:var(--touch-target);padding:.5rem 1.2rem;transition:all .2s ease;transition:var(--transition)}.header-dashboard-btn:hover{background:#1b4332;background:var(--primary-dark);box-shadow:0 4px 12px #2d6a4f4d;transform:translateY(-2px)}.company-name-badge{background:#2d6a4f1a;border-radius:20px;color:#2d6a4f;color:var(--primary);font-size:.85rem;font-weight:500;padding:.4rem 1rem}.header-logout{background:#0000;border:1px solid #e0e0e0;border-radius:8px;border-radius:var(--radius-sm);color:#4a4a6a;cursor:pointer;font-weight:500;min-height:44px;min-height:var(--touch-target);padding:.5rem 1.2rem;transition:all .2s ease;transition:var(--transition)}.header-logout:hover{background:#f0f0f0;border-color:silver}.mobile-menu-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;min-height:44px;min-height:var(--touch-target);min-width:44px;min-width:var(--touch-target);padding:.5rem}.hamburger-line{background:#1a1a2e;display:block;height:2px;transition:all .2s ease;transition:var(--transition);width:25px}.footer{background:#0f0f1a;color:#c8c8d4;margin-top:4rem;padding:4rem 2rem 1.5rem}.footer-content{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin:0 auto 2rem;max-width:1200px}.footer-brand h3{color:#fff;margin-bottom:.5rem}.footer-links{display:flex;gap:2rem}.footer-links a{color:#94a3b8;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid #1e293b;font-size:.875rem;padding-top:1.5rem;text-align:center}.main-footer{background:#0f0f1a;color:#c8c8d4;margin-top:4rem;padding:4rem 2rem 1.5rem}.footer-container{margin:0 auto;max-width:1200px}.footer-grid{grid-gap:3rem;border-bottom:1px solid #ffffff14;display:grid;gap:3rem;grid-template-columns:2fr 1fr 1fr 1fr 1fr;padding-bottom:3rem}.footer-column h4{color:#fff;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:1.25rem;text-transform:uppercase}.footer-column ul{list-style:none;margin:0;padding:0}.footer-column ul li{margin-bottom:.75rem}.footer-column ul li a{color:#a0a0b8;font-size:.9rem;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.footer-column ul li a:hover{color:#52b788;color:var(--primary-light)}.brand-column .footer-logo{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.brand-column .footer-logo .logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2d6a4f,#52b788);background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;font-size:1.3rem;font-weight:700}.footer-description{color:#a0a0b8;font-size:.9rem;line-height:1.6;margin-bottom:1.5rem;max-width:300px}.social-links{display:flex;gap:.75rem}.social-links a{align-items:center;background:#ffffff0f;border-radius:8px;border-radius:var(--radius-sm);color:#a0a0b8;display:flex;font-weight:500;height:36px;justify-content:center;text-decoration:none;transition:all .2s ease;transition:var(--transition);width:36px}.social-links a:hover{background:#2d6a4f;background:var(--primary);color:#fff;transform:translateY(-2px)}.footer-bottom-dashboard{animation:gradientShift 8s ease infinite;background:linear-gradient(135deg,#021a12,#075239 50%,#088658);background-size:300% 300%;margin-top:auto;padding:1rem 0;position:relative;width:100%}.footer-bottom-dashboard:before{background:radial-gradient(circle at 30% 50%,#ffffff1a 0,#0000 70%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes gradientShift{0%{background-position:0 50%;opacity:1}50%{background-position:100% 50%;opacity:.95}to{background-position:0 50%;opacity:1}}.footer-bottom-dashboard-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem;position:relative;z-index:1}.footer-bottom-dashboard-content p{color:#ffffffe6!important;font-size:.9rem;margin:0}.footer-legal-dashboard-links{display:flex;gap:2rem}.footer-legal-dashboard-links a{color:#fffc!important;font-size:.9rem;text-decoration:none;transition:all .3s ease}.footer-legal-dashboard-links a:hover{color:#fff!important;text-decoration:underline}.footer-bottom-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:0 auto;max-width:1200px;padding:1rem 2rem;position:relative;z-index:1}.footer-bottom-content p{color:#ffffffe6;font-size:.9rem;margin:0}.footer-legal-links{display:flex;gap:2rem}.footer-legal-links a{color:#ffffffe6;font-size:.9rem;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.footer-legal-links a:hover{color:#fff;text-decoration:underline}.policy-page-wrapper{background:#f8f9fa;display:flex;flex-direction:column;min-height:100vh}.policy-page-wrapper .main-footer{margin-top:auto}.policy-page{background:#fff;border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 0 40px #0000000d;flex:1 1;margin:0 auto;max-width:900px;padding:100px 2rem 4rem;width:100%}.policy-page-header{border-bottom:2px solid #f0f0f0;margin-bottom:3rem;padding-bottom:1.5rem}.policy-page-header h1{color:#0f172a;color:var(--gray-900);font-size:2.8rem;font-weight:700;margin-bottom:.5rem}.last-updated{color:#6a6a82;font-size:.95rem;font-weight:400}.policy-content{color:#4a4a6a;line-height:1.7}.policy-content section{margin-bottom:2.5rem}.policy-content h2{color:#0f172a;color:var(--gray-900);font-size:1.8rem;margin-bottom:1rem;padding-top:1rem}.policy-content h3{color:#2d6a4f;color:var(--primary);font-size:1.3rem;margin-bottom:.75rem;margin-top:1.5rem}.policy-content p{margin-bottom:1rem}.policy-content ul{margin:.75rem 0 1rem;padding-left:1.5rem}.policy-content li{margin-bottom:.5rem}.policy-content a{color:#2d6a4f;color:var(--primary);text-decoration:underline;transition:all .2s ease;transition:var(--transition)}.policy-content a:hover{color:#1b4332;color:var(--primary-dark)}.policy-subtitle{color:#4a4a6a;font-size:1.2rem;line-height:1.6;margin-bottom:2rem}.policy-meta-grid{grid-gap:1rem;background:#f8f9fa;border-radius:8px;border-radius:var(--radius-sm);display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:1.5rem 0;padding:1.5rem}.meta-item{display:flex;flex-direction:column}.meta-label{color:#6a6a82;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.meta-value{color:#0f172a;color:var(--gray-900);font-size:1.1rem;font-weight:600;margin-top:.25rem}.compliance-statement{background:#f0f7f4;border-left:4px solid #2d6a4f;border-left:4px solid var(--primary);border-radius:8px;border-radius:var(--radius-sm);margin-bottom:2.5rem;padding:2rem}.compliance-statement h2{color:#2d6a4f;color:var(--primary);margin-top:0}.table-wrapper{margin:1.5rem 0;overflow-x:auto}.emissions-table{border-collapse:collapse;font-size:.95rem;width:100%}.emissions-table thead{background:#0f172a;background:var(--gray-900);color:#fff}.emissions-table td,.emissions-table th{border-bottom:1px solid #e0e0e0;padding:.75rem 1rem;text-align:left}.emissions-table tbody tr:hover{background:#f8f9fa}.emissions-table .total-row{background:#f0f7f4;border-top:2px solid #2d6a4f;border-top:2px solid var(--primary);font-weight:600}.targets-visual{margin:2rem 0}.target-bar{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.target-label{color:#0f172a;color:var(--gray-900);font-size:.9rem;font-weight:500;min-width:120px}.target-reduction{color:#2d6a4f;color:var(--primary);font-weight:600}.target-track{background:#f0f0f0;border-radius:18px;flex:1 1;height:36px;overflow:hidden;position:relative}.target-fill{align-items:center;background:linear-gradient(90deg,#2d6a4f,#52b788);background:linear-gradient(90deg,var(--primary),var(--primary-light));border-radius:18px;color:#fff;display:flex;font-size:.85rem;font-weight:600;height:100%;justify-content:flex-end;padding-right:1rem;transition:width .6s ease}.target-fill.zero{background:#6a6a82;padding:0;width:0!important}.signoff-box{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;border-radius:var(--radius-sm);margin-top:2rem;padding:2rem}.signoff-box p{margin-bottom:.5rem}.about-hero{margin-bottom:2rem;text-align:center}.about-logo-container{align-items:center;display:flex;gap:.75rem;justify-content:center;margin-bottom:1.5rem}.about-logo-container .logo-icon{font-size:3rem}.about-logo-container .logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2d6a4f,#52b788);background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700}.team-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:1.5rem}.team-member{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;border-radius:var(--radius);padding:1.5rem;text-align:center;transition:all .2s ease;transition:var(--transition)}.team-member:hover{box-shadow:0 8px 30px #00000014;transform:translateY(-4px)}.team-avatar{border:3px solid #2d6a4f;border:3px solid var(--primary);border-radius:50%;height:80px;margin:0 auto 1rem;overflow:hidden;width:80px}.avatar-image{height:100%;object-fit:cover;width:100%}.team-member h3{color:#0f172a;color:var(--gray-900);font-size:1.2rem;margin-bottom:.25rem}.team-role{color:#2d6a4f;color:var(--primary);font-size:.9rem;font-weight:600;margin-bottom:.75rem}.team-member p{color:#4a4a6a;font-size:.95rem;line-height:1.6;text-align:left}.cta-section{background:linear-gradient(135deg,#f0f7f4,#e8f5e9);border-radius:12px;border-radius:var(--radius);margin-top:2rem;padding:2.5rem;text-align:center}.cta-section h2{color:#0f172a;color:var(--gray-900);font-size:1.8rem;margin-bottom:.5rem}.cta-section p{color:#4a4a6a;font-size:1.1rem;margin-bottom:1.5rem}.cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.ingestion-portal{background:#f8fafc;min-height:100vh}.portal-header{align-items:center;background:#fff;border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--gray-200);display:flex;gap:2rem;padding:1rem 2rem}.back-btn{background:#f1f5f9;background:var(--gray-100);border:1px solid #cbd5e1;border:1px solid var(--gray-300);border-radius:6px;cursor:pointer;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.5rem 1rem}.batch-info{align-items:center;display:flex;gap:1rem}.batch-info h2{font-size:1.25rem;margin:0}.batch-status{border-radius:9999px;border-radius:var(--radius-pill);font-size:.875rem;font-weight:600;padding:.25rem .75rem}.batch-status.pending{background:#fef3c7;color:#92400e}.batch-status.ready{background:#d1fae5;color:#065f46}.portal-content{display:flex;height:calc(100vh - 80px);overflow:hidden}.pdf-viewer-panel{background:#fff;border-right:2px solid #e2e8f0;border-right:2px solid var(--gray-200);display:flex;flex-direction:column;overflow:hidden;width:40%}.file-metadata{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--gray-200);padding:1rem}.file-metadata h3{font-size:1rem;margin:0 0 .5rem}.file-metadata p{color:#64748b;color:var(--gray-500);font-size:.875rem;margin:0}.pdf-container{background:#f1f5f9;background:var(--gray-100);display:flex;flex:1 1;justify-content:center;overflow:auto;padding:1rem}.pdf-loading{color:#64748b;color:var(--gray-500);padding:2rem;text-align:center}.pdf-controls{align-items:center;background:#fff;border-top:1px solid #e2e8f0;border-top:1px solid var(--gray-200);display:flex;gap:.5rem;padding:1rem}.pdf-controls button{background:#fff;border:1px solid #cbd5e1;border:1px solid var(--gray-300);border-radius:6px;cursor:pointer;min-height:44px;min-height:var(--touch-target);padding:.5rem 1rem}.pdf-controls button:disabled{cursor:not-allowed;opacity:.5}.page-info{color:#64748b;color:var(--gray-500);font-size:.875rem;margin-left:auto}.correction-panel{overflow-y:auto;padding:2rem;width:60%}.error-banner{background:#fef3c7;border:2px solid #f59e0b;border:2px solid var(--yellow);border-radius:8px;border-radius:var(--radius-sm);color:#92400e;font-weight:600;margin-bottom:2rem;padding:1rem}.correction-section{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--gray-200);border-radius:8px;border-radius:var(--radius-sm);margin-bottom:1.5rem;padding:1.5rem}.correction-section.data-stream.error{border:2px solid #ef4444;border:2px solid var(--red)}.correction-section h3{align-items:center;display:flex;font-size:1rem;gap:.5rem;margin:0 0 1rem}.status-badge{border-radius:9999px;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;padding:.25rem .75rem}.status-badge.verified{background:#d1fae5;color:#065f46}.status-badge.error{background:#fee2e2;color:#991b1b}.metadata-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.field-group{display:flex;flex-direction:column;gap:.5rem}.field-group label{color:#334155;color:var(--gray-700);font-size:.875rem;font-weight:600}.field-group input,.field-group select{border:1px solid #cbd5e1;border:1px solid var(--gray-300);border-radius:6px;font-size:.875rem;min-height:44px;min-height:var(--touch-target);padding:.5rem}.error-block{background:#fee2e2;border:1px solid #ef4444;border:1px solid var(--red);border-radius:6px;margin-bottom:1rem;padding:1rem}.error-header{color:#991b1b;font-weight:700;margin-bottom:.5rem}.extracted-fields{margin-top:1rem}.field-row{align-items:center;border-radius:6px;display:flex;gap:1rem;margin-bottom:.5rem;padding:.75rem}.field-row.verified{background:#f0fdf4}.field-row.failed{background:#fef2f2}.field-row label{flex:0 0 200px;font-size:.875rem;font-weight:600}.field-row input{border:1px solid #cbd5e1;border:1px solid var(--gray-300);border-radius:6px;flex:1 1;min-height:44px;min-height:var(--touch-target);padding:.5rem}.field-row input.error-input{border:2px solid #ef4444;border:2px solid var(--red)}.confidence-badge{border-radius:9999px;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;padding:.25rem .75rem;white-space:nowrap}.confidence-badge.verified{background:#d1fae5;color:#065f46}.confidence-badge.manually_corrected{background:#dbeafe;color:#1e40af}.confidence-badge.failed{background:#fee2e2;color:#991b1b}.defra-info{background:#f0f9ff;border-radius:6px;font-size:.875rem;margin-top:1rem;padding:1rem}.defra-info p{margin:.25rem 0}.purge-btn{background:#fff;border:2px solid #ef4444;border:2px solid var(--red);border-radius:8px;border-radius:var(--radius-sm);color:#ef4444;color:var(--red)}.approve-btn,.purge-btn{cursor:pointer;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.75rem 1.5rem}.approve-btn{background:#16a34a;background:var(--green);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;flex:1 1}.approve-btn:disabled{background:#94a3b8;background:var(--gray-400);cursor:not-allowed}.file-hint{color:#64748b;color:var(--gray-500);font-size:.875rem;margin-top:.5rem;text-align:center}.cookie-banner{align-items:center;animation:slideUp .5s ease;background:#1a1a2e;bottom:0;box-shadow:0 -4px 20px #0003;color:#fff;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;left:0;padding:1.5rem 2rem;position:fixed;right:0;z-index:9998}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.cookie-banner-content{align-items:center;display:flex;flex:1 1;gap:1.5rem;min-width:280px}.cookie-banner p{color:#c8c8d4;font-size:.9rem;line-height:1.5;margin:0}.cookie-banner a{color:#52b788;color:var(--primary-light);text-decoration:underline}.cookie-banner-actions{display:flex;flex-wrap:wrap;gap:.75rem}.cookie-btn-accept{background:linear-gradient(135deg,#2d6a4f,#52b788);background:var(--primary-gradient);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;min-height:44px;min-height:var(--touch-target);padding:.6rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.cookie-btn-accept:hover{transform:scale(1.05)}.cookie-btn-settings{background:#0000;border:1px solid #4a4a6a;border-radius:6px;color:#c8c8d4;cursor:pointer;min-height:44px;min-height:var(--touch-target);padding:.6rem 1.5rem;transition:all .2s ease;transition:var(--transition)}.cookie-btn-settings:hover{background:#ffffff0d;border-color:#52b788;border-color:var(--primary-light)}@media (max-width:1024px){.footer-grid{gap:2rem;grid-template-columns:repeat(3,1fr)}.brand-column{grid-column:span 3}}@media (max-width:992px){.hero-container{gap:2rem;grid-template-columns:1fr;text-align:center}.hero-buttons{justify-content:center}.hero p{margin:0 auto 2rem}}@media (max-width:768px){.App-header{padding:1rem}.header-top{align-items:center;flex-direction:column;gap:.5rem}.header-top h1{font-size:1.8rem}.user-menu{align-items:center;flex-direction:column;gap:.5rem;width:100%}.user-menu .company-name{font-size:.85rem}.logout-button{width:100%}.main-nav{flex-wrap:wrap;gap:.5rem;padding:.5rem 0;position:relative}.main-nav .nav-btn{border-radius:6px;display:none;font-size:.9rem;padding:.75rem;text-align:center;width:100%}.main-nav .nav-btn:first-child{display:block;flex:1 1}.main-nav:before{align-items:center;background:#f1f5f9;background:var(--gray-100);border-radius:6px;content:"☰";cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;margin-left:auto;min-height:44px;min-height:var(--touch-target);min-width:44px;min-width:var(--touch-target);padding:.5rem 1rem}.main-nav.menu-open .nav-btn{display:block}.main-nav.menu-open:before{background:#e2e8f0;background:var(--gray-200);content:"✕"}.main-header{padding:0 1rem}.mobile-menu-toggle{display:flex}.landing-nav{background:#fff;box-shadow:0 4px 20px #0000001a;box-shadow:var(--shadow-md);left:0;opacity:0;padding:1rem;position:absolute;right:0;top:72px;transform:translateY(-10px);transition:all .2s ease;transition:var(--transition);visibility:hidden}.landing-nav.mobile-open{opacity:1;transform:translateY(0);visibility:visible}.nav-links{flex-direction:column;gap:1rem;padding:1rem 0}.nav-links a{font-size:1.1rem}.header-right .header-login{display:none}.header-right .header-cta{font-size:.85rem;padding:.5rem 1rem}.dashboard-header{align-items:stretch;flex-direction:column;gap:1rem}.dashboard-header h2{font-size:1.25rem;text-align:center}.dashboard-header>div{align-items:stretch;flex-direction:column;gap:.5rem;width:100%}.dashboard-header select{font-size:1rem}.dashboard-header .export-button,.dashboard-header select{min-height:44px;min-height:var(--touch-target);padding:.75rem;width:100%}.dashboard-header .export-button{font-size:.9rem;text-align:center;white-space:normal}.summary-cards{gap:1rem;grid-template-columns:1fr}.summary-cards .card .metric{font-size:1.5rem}.upload-section{padding:1rem}.upload-section>div:first-child{flex-direction:column;gap:.75rem}.upload-section>div:first-child h2{font-size:1.1rem;text-align:center}.upload-section>div:first-child button{width:100%}.upload-type-selector{flex-direction:column;gap:.5rem}.type-option{font-size:.9rem;padding:.75rem;width:100%}.upload-section>[style*="border: 2px dashed"]{padding:2rem 1rem!important}.upload-section .upload-button{font-size:.95rem;min-height:44px;min-height:var(--touch-target);padding:.75rem}.tabs{flex-direction:column;gap:.5rem}.tab-btn{font-size:.9rem;padding:.75rem;text-align:center;width:100%}.action-buttons{flex-direction:column;gap:.75rem}.action-buttons button{font-size:.9rem;min-height:44px;min-height:var(--touch-target);padding:.75rem;width:100%}.data-table table,.emissions-table,.review-table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;white-space:nowrap}.data-table table td,.data-table table th,.emissions-table td,.emissions-table th,.review-table td,.review-table th{font-size:.8rem;padding:.5rem .75rem}.chart-section .recharts-wrapper{height:250px!important;width:100%!important}.review-section{padding:1rem}.review-section h2{font-size:1.1rem;text-align:center}.hero{flex-direction:column;padding:2rem 1rem;text-align:center}.hero h1{font-size:2.5rem}.hero p{margin:0 auto 2rem}.hero-buttons{flex-wrap:wrap;justify-content:center}.headline-animated{font-size:2.5rem}.features{padding:3rem 1rem}.features h2{font-size:2rem}.pricing{padding:3rem 1rem}.pricing h2{font-size:2rem}.pricing-grid{align-items:center;flex-direction:column}.pricing-card{max-width:350px;width:100%}.feature-grid{grid-template-columns:1fr}.footer{padding:2rem 1rem 1rem}.footer-content{flex-direction:column;text-align:center}.footer-links{justify-content:center}.main-footer{padding:2rem 1rem 1rem}.footer-grid{gap:2rem;grid-template-columns:1fr}.brand-column{grid-column:span 1}.footer-description{max-width:100%}.footer-bottom-content{flex-direction:column;padding:.75rem 1rem;text-align:center}.footer-legal-links{flex-wrap:wrap;gap:1rem;justify-content:center}.footer-legal-links a{font-size:.8rem}.footer-bottom-dashboard-content{flex-direction:column;gap:.75rem;padding:0 1rem;text-align:center}.footer-legal-dashboard-links{flex-wrap:wrap;gap:1rem;justify-content:center}.footer-bottom-dashboard-content p,.footer-legal-dashboard-links a{font-size:.8rem}.policy-page{border-radius:0;padding:80px 1rem 3rem}.policy-page-header h1{font-size:2rem}.policy-content h2{font-size:1.5rem}.company-name-badge{display:none}.policy-meta-grid{grid-template-columns:1fr 1fr}.about-logo-container .logo-text{font-size:1.8rem}.about-logo-container .logo-icon{font-size:2.2rem}.team-grid{grid-template-columns:1fr}.cta-section{padding:1.5rem}.cta-section h2{font-size:1.4rem}.cta-buttons{align-items:center;flex-direction:column}.btn-outline{text-align:center;width:100%}.target-bar{align-items:stretch;flex-direction:column;gap:.5rem}.target-label{min-width:auto}.target-track{height:30px}.target-fill{font-size:.75rem;padding-right:.75rem}.compliance-statement{padding:1.5rem}.portal-content{flex-direction:column;height:auto}.pdf-viewer-panel{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--gray-200);border-right:none;height:50vh;width:100%}.correction-panel{padding:1rem;width:100%}.metadata-grid{grid-template-columns:1fr}.field-row{align-items:stretch;flex-direction:column;gap:.5rem}.field-row label{flex:none}.cookie-banner{align-items:stretch;flex-direction:column;padding:1rem}.cookie-banner-content{align-items:flex-start;flex-direction:column;gap:.5rem}.cookie-banner-actions{justify-content:flex-end;width:100%}.container{margin:1rem auto;padding:0 .5rem}.view-section{gap:1rem}.chart-section,.data-table{padding:1rem}.chart-section h3,.data-table h3{font-size:1rem}.empty-state-chart{font-size:.9rem;padding:1rem;text-align:center}[style*="background-color: #f0fdf4"],[style*="background-color: #fef3c7"]{font-size:.8rem!important;margin:.5rem 0!important;padding:.5rem!important}.trust-badge{font-size:.8rem;padding:.4rem .8rem}}@media (max-width:480px){.main-nav .nav-btn{font-size:.85rem;padding:.6rem}.main-nav:before{padding:.4rem .75rem}.main-nav:before,.summary-cards .card .metric{font-size:1.25rem}.upload-type-selector .type-option{font-size:.8rem;padding:.6rem}.data-table table td,.data-table table th,.emissions-table td,.emissions-table th,.review-table td,.review-table th{font-size:.7rem;padding:.4rem .5rem}.dashboard-header select{font-size:.9rem;min-height:40px;padding:.6rem}.dashboard-header .export-button{font-size:.85rem;min-height:40px;padding:.6rem}.policy-page{padding:70px .75rem 2rem}.policy-meta-grid{grid-template-columns:1fr}.team-avatar{height:60px;width:60px}.team-member{padding:1rem}.about-logo-container .logo-text{font-size:1.5rem}.about-logo-container .logo-icon{font-size:1.8rem}}@supports (padding:max(0px)){.App{padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left))}.cookie-banner{padding-bottom:max(1rem,env(safe-area-inset-bottom));padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}}@media (pointer:coarse){.btn-gradient,.btn-outline,.btn-primary,.btn-secondary,.edit-input,.nav-btn,.tab-btn,.type-option,button,input[type=file],input[type=number],input[type=text],select{min-height:44px!important;min-height:var(--touch-target)!important;min-width:44px!important;min-width:var(--touch-target)!important}.edit-input,input[type=number],input[type=text],select{font-size:16px!important}}.text-center{text-align:center}.w-full{width:100%}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.gap-sm{gap:.5rem}.gap-md{gap:1rem}.gap-lg{gap:1.5rem}.mt-1{margin-top:1rem}.mb-1{margin-bottom:1rem}.mt-2{margin-top:2rem}.mb-2{margin-bottom:2rem}.p-1{padding:1rem}.p-2{padding:2rem}.team-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;margin:0 auto;max-width:1000px;padding:2rem}.team-container h2{color:#1e293b;font-size:1.8rem;margin-bottom:1.5rem;margin-top:0}.team-container h3{color:#334155;font-size:1.2rem;margin-bottom:1rem}.access-denied{background:#fee2e2;border-radius:12px;color:#991b1b;font-weight:600;margin:2rem auto;max-width:600px;padding:2rem;text-align:center}.invite-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.invite-section h3{margin-top:0}.invite-form{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.invite-form input,.invite-form select{background:#fff;border:1px solid #cbd5e1;border-radius:6px;flex:1 1;font-size:.95rem;min-height:44px;min-width:200px;padding:.75rem;transition:border-color .2s}.invite-form input:focus,.invite-form select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.invite-btn{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;min-height:44px;padding:.75rem 2rem;transition:all .2s;white-space:nowrap}.invite-btn:hover{background:#1d4ed8;box-shadow:0 4px 12px #2563eb4d;transform:translateY(-1px)}.invite-btn:active{transform:translateY(0)}.invite-hint{background:#f1f5f9;border-left:4px solid #2563eb;border-radius:6px;color:#475569;font-size:.9rem;margin:1rem 0 0;padding:1rem}.success-msg{background:#dcfce7;border:1px solid #86efac;border-radius:6px;color:#166534}.error-msg,.success-msg{font-weight:500;margin:.5rem 0;padding:.75rem 1rem}.error-msg{background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b}.invites-section,.members-section{margin-top:2rem}.invites-section h3,.members-section h3{margin-top:0}.team-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 1px 3px #0000000d;overflow:hidden;width:100%}.team-table thead{background:#f1f5f9}.team-table th{border-bottom:2px solid #e2e8f0;color:#475569;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.team-table td{border-bottom:1px solid #e2e8f0;color:#1e293b;padding:.75rem 1rem;vertical-align:middle}.team-table tbody tr:hover{background:#f8fafc}.team-table tbody tr:last-child td{border-bottom:none}.role-badge{border-radius:999px;display:inline-block;font-size:.8rem;font-weight:600;padding:.25rem .75rem;text-transform:capitalize}.role-badge.admin{background:#dbeafe;color:#1e40af}.role-badge.editor{background:#d1fae5;color:#065f46}.role-badge.viewer{background:#f3f4f6;color:#4b5563}.cancel-btn,.remove-btn{border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;min-height:36px;padding:.4rem 1rem;transition:all .2s}.remove-btn{background:#fee2e2;color:#991b1b}.remove-btn:hover{background:#fecaca;transform:scale(1.05)}.remove-btn:active{transform:scale(.95)}.cancel-btn{background:#f1f5f9;color:#475569}.cancel-btn:hover{background:#e2e8f0;transform:scale(1.05)}.cancel-btn:active{transform:scale(.95)}.skeleton{background:#f1f5f9;border-radius:6px;overflow:hidden;position:relative}.skeleton:after{animation:shimmer 2s infinite;background-image:linear-gradient(90deg,#fff0,#fff6 20%,#ffffffb3 60%,#fff0);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}@keyframes shimmer{to{transform:translateX(100%)}}.skeleton-text{height:1rem;margin-bottom:.5rem;width:100%}.skeleton-text.short{width:60%}.skeleton-table-container{padding:.5rem}@media (max-width:768px){.team-container{padding:1.5rem}.team-container h2{font-size:1.5rem}.invite-section{padding:1.25rem}.invite-form{flex-direction:column;gap:.75rem}.invite-form input,.invite-form select{min-width:100%;padding:.7rem;width:100%}.invite-btn{justify-content:center;width:100%}.invites-section,.members-section{-webkit-overflow-scrolling:touch;overflow-x:auto}.team-table{min-width:500px}.team-table td,.team-table th{font-size:.85rem;padding:.6rem .75rem}.role-badge{font-size:.75rem;padding:.2rem .6rem}.cancel-btn,.remove-btn{font-size:.8rem;padding:.3rem .75rem}}@media (max-width:480px){.team-container{border-radius:8px;padding:1rem}.team-container h2{font-size:1.25rem;margin-bottom:1rem}.team-container h3{font-size:1rem}.invite-section{padding:1rem}.invite-form input,.invite-form select{font-size:.9rem;padding:.6rem}.invite-btn{font-size:.9rem;padding:.6rem 1.5rem}.invite-hint{font-size:.8rem;padding:.75rem}.team-table{min-width:400px}.team-table td,.team-table th{font-size:.8rem;padding:.5rem .6rem}.role-badge{font-size:.7rem;padding:.15rem .5rem}.cancel-btn,.remove-btn{font-size:.75rem;min-height:32px;padding:.25rem .6rem}.error-msg,.success-msg{font-size:.85rem;padding:.6rem .75rem}.access-denied{font-size:.95rem;margin:1rem;padding:1.5rem}}@media (pointer:coarse){.cancel-btn,.invite-btn,.remove-btn{min-height:44px!important}.invite-form input,.invite-form select{font-size:16px!important;min-height:44px!important}}@media (prefers-color-scheme:dark){.team-container{background:#1e293b;box-shadow:0 4px 20px #0000004d}.team-container h2,.team-container h3{color:#f1f5f9}.invite-section{background:#334155;border-color:#475569}.invite-form input,.invite-form select{background:#1e293b;border-color:#475569;color:#f1f5f9}.invite-form input:focus,.invite-form select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.invite-hint{color:#cbd5e1}.invite-hint,.team-table{background:#1e293b}.team-table thead{background:#334155}.team-table th{border-bottom-color:#475569;color:#94a3b8}.team-table td{border-bottom-color:#334155;color:#e2e8f0}.team-table tbody tr:hover{background:#334155}.role-badge.admin{background:#1e40af;color:#93c5fd}.role-badge.editor{background:#065f46;color:#6ee7b7}.role-badge.viewer{background:#374151;color:#9ca3af}.remove-btn{background:#7f1d1d;color:#fca5a5}.remove-btn:hover{background:#991b1b}.cancel-btn{background:#374151;color:#9ca3af}.cancel-btn:hover{background:#4b5563}.success-msg{background:#065f46;border-color:#059669;color:#6ee7b7}.error-msg{border-color:#ef4444}.access-denied,.error-msg{background:#7f1d1d;color:#fca5a5}}.asset-manager-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000000d;padding:2rem}.subtitle{color:#64748b;margin-bottom:1.5rem}.asset-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:1rem;margin-bottom:1.5rem}.asset-tabs .tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:-2px;padding:.75rem 1.5rem}.asset-tabs .tab-btn.active{border-bottom:3px solid #2563eb;color:#2563eb}.add-form{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.add-form input,.add-form select{border:1px solid #cbd5e1;border-radius:6px;flex:1 1;min-width:200px;padding:.75rem}.add-btn{background:#166534;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem}.list-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.list-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.list-card h4{color:#1e293b;margin:0 0 .5rem}.list-card p{color:#64748b;font-size:.9rem;margin:0}.list-card .desc{font-style:italic;margin-top:.5rem}.empty-msg{color:#94a3b8;grid-column:1/-1;padding:2rem;text-align:center}:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:#0000;--input-disabled-border-color:#0000;--input-hover-border-color:#000;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{left:0;pointer-events:none;position:absolute;top:0;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translateX(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{height:100%;position:absolute;width:100%}.annotationLayer section{box-sizing:border-box;margin:0;pointer-events:auto;position:absolute;text-align:left;text-align:initial;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:none;outline:var(--link-outline)}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{font-size:1em;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{background:#ff0;box-shadow:0 2px 10px #ff0;opacity:.2}.annotationLayer .textAnnotation img{cursor:pointer;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input,.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .textWidgetAnnotation :is(input,textarea){background-image:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');background-image:var(--annotation-unfocused-field-background);border:2px solid #0000;border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled]{background:none;border:2px solid #0000;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border:2px solid #000;border:2px solid var(--input-hover-border-color)}.annotationLayer .buttonWidgetAnnotation.checkBox input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border-radius:2px}.annotationLayer .choiceWidgetAnnotation select:focus,.annotationLayer .textWidgetAnnotation :is(input,textarea):focus{background:none;border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:initial;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{font-size:calc(9px*var(--scale-factor));min-width:calc(180px*var(--scale-factor));pointer-events:none;position:absolute;width:100%}.annotationLayer .popup{word-wrap:break-word;background-color:#ff9;border-radius:calc(2px*var(--scale-factor));box-shadow:0 calc(2px*var(--scale-factor)) calc(5px*var(--scale-factor)) #888;cursor:pointer;font:message-box;margin-left:calc(5px*var(--scale-factor));max-width:calc(180px*var(--scale-factor));padding:calc(6px*var(--scale-factor));pointer-events:auto;position:absolute;white-space:normal}.annotationLayer .popup>*{font-size:calc(9px*var(--scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px*var(--scale-factor))}.annotationLayer .popupContent{border-top:1px solid #333;margin-top:calc(2px*var(--scale-factor));padding-top:calc(2px*var(--scale-factor))}.annotationLayer .richText>*{font-size:calc(9px*var(--scale-factor));white-space:pre-wrap}.annotationLayer .caretAnnotation,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .fileAttachmentAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .highlightAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .lineAnnotation svg line,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .squareAnnotation svg rect,.annotationLayer .squigglyAnnotation,.annotationLayer .stampAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .underlineAnnotation{cursor:pointer}.annotationLayer section svg{height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .annotationTextContent{color:#0000;height:100%;opacity:0;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.annotationLayer .annotationTextContent span{display:inline-block;width:100%}:root{--react-pdf-text-layer:1;--highlight-bg-color:#b400aa;--highlight-selected-bg-color:#006400}@media screen and (forced-colors:active){:root{--highlight-bg-color:Highlight;--highlight-selected-bg-color:ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translateX(-100%)}.textLayer{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;inset:0;line-height:1;overflow:hidden;position:absolute;text-align:left;text-align:initial;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:#0000;cursor:text;margin:0;position:absolute;transform-origin:0 0;white-space:pre}.textLayer span.markedContent{height:0;top:0}.textLayer .highlight{background-color:#b400aa;background-color:var(--highlight-bg-color);border-radius:4px;margin:-1px;padding:1px}.textLayer .highlight.appended{position:static}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:#006400;background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:#0000}.textLayer .endOfContent{cursor:default;display:block;inset:100% 0 0;position:absolute;-webkit-user-select:none;user-select:none;z-index:-1}.textLayer .endOfContent.active{top:0}
/*# sourceMappingURL=main.4815cc2c.css.map*/