@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.compliance-check{max-width:1200px;margin:0 auto;padding:2rem}.compliance-check h1{margin-bottom:.5rem}.subtitle{color:#6b7280;margin-bottom:2rem}.input-section{margin-bottom:2rem}.input-section label{display:block;margin-bottom:.5rem;font-weight:600}.input-section textarea{width:100%;padding:1rem;border:1px solid #d1d5db;border-radius:.5rem;font-family:inherit;font-size:1rem;resize:vertical}.input-section button{margin-top:1rem;padding:.75rem 2rem;background:#3b82f6;color:#fff;border:none;border-radius:.5rem;font-size:1rem;cursor:pointer}.input-section button:hover:not(:disabled){background:#2563eb}.input-section button:disabled{background:#9ca3af;cursor:not-allowed}.error{padding:1rem;background:#fee2e2;color:#dc2626;border-radius:.5rem;margin-bottom:1rem}.results{margin-top:2rem}.overall-status{padding:1.5rem;border:3px solid;border-radius:.5rem;margin-bottom:2rem;background:#f9fafb}.overall-status h2{margin:0 0 1rem}.summary,.violations,.passed-checks{margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}.violation{padding:1rem;margin-bottom:1rem;border-left:4px solid;background:#f9fafb;border-radius:.25rem}.violation-header{display:flex;gap:1rem;margin-bottom:.5rem}.severity{font-weight:700;text-transform:uppercase}.line-ref{padding:.25rem .75rem;background:#e5e7eb;border-radius:.25rem;font-size:.875rem}.violation h4{margin:.5rem 0}.description{color:#374151;margin-bottom:.5rem}.remediation{color:#059669;font-weight:500}.passed-checks ul{padding-left:1.5rem}.passed-checks li{margin-bottom:.5rem;color:#059669}.auth-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.auth-branding{background:linear-gradient(145deg,#1e1b4b,#312e81,#4c1d95);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px;position:relative;overflow:hidden}.auth-branding:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 20% 80%,rgba(139,92,246,.12) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(167,139,250,.08) 0%,transparent 50%);animation:pulse-glow 8s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.auth-branding:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,transparent,transparent 60px,rgba(139,92,246,.03) 60px,rgba(139,92,246,.03) 61px)}.brand-content{position:relative;z-index:1;text-align:center;color:#fff;max-width:400px}.brand-icon{width:100px;height:100px;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-radius:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 32px;box-shadow:0 20px 40px -10px #8b5cf680;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.brand-icon svg{width:52px;height:52px;color:#fff}.brand-title{font-size:32px;font-weight:700;margin:0 0 12px;letter-spacing:-.02em}.brand-subtitle{font-size:18px;opacity:.8;margin:0 0 48px;line-height:1.6}.brand-features{display:flex;flex-direction:column;gap:16px;text-align:left}.brand-feature{display:flex;align-items:center;gap:14px;padding:14px 18px;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.feature-icon{width:40px;height:40px;background:#8b5cf633;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-icon svg{width:20px;height:20px;color:#a78bfa}.feature-text{font-size:14px;color:#ffffffe6}.compliance-checklist{display:flex;flex-direction:column;gap:10px;margin-top:48px;padding:20px;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.check-item{display:flex;align-items:center;gap:12px;font-size:13px;color:#ffffffb3}.check-box{width:20px;height:20px;border-radius:6px;background:#8b5cf633;display:flex;align-items:center;justify-content:center;animation:check-appear .5s ease-out forwards;opacity:0}.check-item:nth-child(1) .check-box{animation-delay:.5s}.check-item:nth-child(2) .check-box{animation-delay:1s}.check-item:nth-child(3) .check-box{animation-delay:1.5s}@keyframes check-appear{to{opacity:1;background:linear-gradient(135deg,#22c55e,#16a34a)}}.check-box svg{width:12px;height:12px;color:#fff}.auth-form-panel{background:#fafafa;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px;position:relative}.auth-card{width:100%;max-width:400px}.auth-header{margin-bottom:40px}.auth-header h1{font-size:28px;font-weight:700;color:#0f172a;margin:0 0 8px;letter-spacing:-.02em}.auth-header p{font-size:16px;color:#64748b;margin:0}.auth-form{display:flex;flex-direction:column;gap:24px}.auth-error{background:linear-gradient(135deg,#fef2f2,#fff1f2);border:1px solid #fecaca;color:#dc2626;padding:14px 18px;border-radius:12px;font-size:14px;display:flex;align-items:center;gap:10px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#374151}.form-group input{padding:16px 18px;border:2px solid #e2e8f0;border-radius:14px;font-size:16px;background:#fff;transition:all .25s cubic-bezier(.4,0,.2,1);font-family:inherit}.form-group input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf626}.form-group input::placeholder{color:#94a3b8}.btn-primary{padding:18px 24px;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);font-family:inherit;letter-spacing:.01em}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 24px -6px #8b5cf680}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.auth-footer{margin-top:32px;text-align:center}.auth-footer p{font-size:14px;color:#64748b;margin:0}.auth-footer a{color:#7c3aed;font-weight:600;text-decoration:none;transition:color .2s ease}.auth-footer a:hover{color:#6d28d9}.demo-notice{margin-top:24px;padding:14px 18px;background:linear-gradient(135deg,#f5f3ff,#ede9fe);border:1px solid #ddd6fe;border-radius:12px;font-size:13px;color:#5b21b6;text-align:center}@media (max-width: 1024px){.auth-page{grid-template-columns:1fr}.auth-branding{display:none}.auth-form-panel{padding:40px 24px}}.floating-portfolio-btn{position:fixed;bottom:24px;left:24px;display:flex;align-items:center;gap:8px;padding:12px 20px;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;text-decoration:none;border-radius:50px;font-weight:600;font-size:14px;box-shadow:0 4px 20px #1e40af66;transition:all .3s ease;z-index:9999}.floating-portfolio-btn:hover{transform:translateY(-3px);box-shadow:0 8px 30px #1e40af80;background:linear-gradient(135deg,#1e3a8a,#2563eb)}.fpb-arrow{font-size:18px;transition:transform .3s ease}.floating-portfolio-btn:hover .fpb-arrow{transform:translate(-4px)}.fpb-text{white-space:nowrap}@media (max-width: 768px){.floating-portfolio-btn{bottom:16px;left:16px;padding:10px 16px;font-size:13px}.fpb-arrow{font-size:16px}}@media (max-width: 480px){.floating-portfolio-btn{padding:12px;border-radius:50%}.fpb-text{display:none}.fpb-arrow{font-size:20px}}.app{min-height:100vh}.language-switcher{display:flex;gap:4px;margin-left:12px}.lang-btn{padding:4px 8px;border-radius:4px;font-size:1rem;background:transparent;border:1px solid rgba(99,102,241,.2);cursor:pointer;transition:all .2s ease}.lang-btn:hover{border-color:#6366f1}.lang-btn.active{background:#6366f1;border-color:#6366f1;color:#fff}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
