:root{--primary:#1f51ff;--primary-dark:#03c;--primary-light:#4d73ff;--secondary:#2ecc71;--secondary-dark:#25a25a;--secondary-light:#55d98d;--text:#333;--text-light:#666;--text-lighter:#888;--bg-light:#f9f9f9;--bg-card:#fff;--border:#e0e0e0;--border-focus:#3498db;--danger:#e74c3c;--danger-dark:#c0392b;--success:#2ecc71;--warning:#f39c12;--info:#3498db;--shadow:0 4px 6px rgba(0,0,0,.1);--transition:all 0.3s ease;--metamask-orange:#f6851b;--metamask-orange-dark:#e2761b;--polygon-purple:#8247e5;--admin-bg:khaki;--admin-text:#655e0f;--nft-bg:#c6f6d5;--nft-text:#22543d;--utility-bg:#d6bcfa;--utility-text:#553c9a;--role-bg:#fed7aa;--role-text:#7c2d12;--type-bg:#bfdbfe;--type-text:#1e3a8a;--scope-bg:#c7d2fe;--scope-text:#3730a3}*{margin:0;padding:0;box-sizing:border-box}body,html{font-family:Carlito,Segoe UI,Inter,Roboto,sans-serif;font-size:16px;line-height:1.6;color:var(--text);background-color:var(--bg-light);width:100%;height:100%}a{color:var(--primary);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-dark)}button{cursor:pointer;font-family:Carlito,Segoe UI,Inter,Roboto,sans-serif;border:none;transition:var(--transition)}button:disabled{cursor:not-allowed;opacity:.7}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:600;line-height:1.2}p{margin-bottom:1rem}.button{display:inline-block;background-color:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:4px;font-weight:500;text-align:center;transition:var(--transition)}.button:hover{background-color:var(--primary-dark);transform:translateY(-2px);color:#fff}.error{background-color:#fee2e2;border:1px solid #fca5a5;color:#b91c1c;padding:1rem;border-radius:4px;margin-bottom:1rem}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.spinner{display:inline-block;width:24px;height:24px;border-radius:50%;border:3px solid rgba(76,81,191,.3);border-top:3px solid var(--primary);animation:spin 1s ease-in-out infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(1turn)}}.container{max-width:1200px;margin:0 auto;padding:1rem}.card{background-color:var(--bg-card);border-radius:8px;box-shadow:var(--shadow);padding:1.5rem;margin-bottom:1.5rem}.badge{display:inline-block;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;margin-right:.5rem;margin-bottom:.5rem;background-color:var(--bg-light);color:var(--text)}@media (max-width:768px){html{font-size:14px}.container{padding:.75rem}}